Author: Bruce Moreland
Date: 00:47:37 05/26/00
Go up one level in this thread
On May 26, 2000 at 02:49:55, Tom Kerrigan wrote: >I've been writing a multithreaded program. I'm running on 1 processor but my >program splits into 4 threads. So far, the threads don't communicate in any way, >so searches take exactly 4 times as long (not counting some overhead). > >But this evening I added a shared hash table, and now the threads=4 program is >only slightly slower (in terms of NPS and nodes/ply) than the threads=1 program. > >Is this some sort of mistake? I tried for almost an hour to prove that something >flakey is going on, but it seems to really go 4 times faster, even though the >threads don't communicate (except for the hash table). The PVs and scores that >the programs spit out are exactly the same, and the threads seem to be sharing >the work equally. > >Could this be some sort of side effect from running on 1 processor? > >Thanks for any comments. > >-Tom This is one way of writing a multiprocessor chess program. Rather than having the threads run lock-step, you let them do their own thing, and count on the transposition table to save you work. I tried this and the initial cut was much slower than the lock-step version, so it would take some enhancing. I think that the Virtual Chess guys did this early on, and I think there's someone else who reads this group who tried something similar, if he'd like to come out. bruce
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.