Author: Jeremiah Penery
Date: 15:18:15 09/02/03
Go up one level in this thread
On September 02, 2003 at 11:09:21, Robert Hyatt wrote: >On September 01, 2003 at 23:58:38, Jeremiah Penery wrote: > >>On September 01, 2003 at 23:53:20, Robert Hyatt wrote: >> >>>It is almost guaranteed that _all_ critical search data for _all_ threads will >>>be allocated in a single processor's local memory. >> >>That would be the worst possible usage of memory. Why in the world would a >>program perform like that? > > >Do you understand how parallel programming works? Suppose you want to >do this: > >TREE blocks[128]; > >Where TREE is a big structure. > >That puts the blocks into consecutive memory addresses. That's one part of the critical data structures, but there are more parts that can get placed elsewhere. >On a NUMA machine that puts the blocks into one processor's local memory, >or it might split across two if you are near the end of one's memory. > >On a true SMP (non-NUMA) box, that works _perfectly_ and it is the way things >are done. On a NUMA box, it sucks. Then on an SMP machine it gets put into one memory bank, and interleaving can't be used, and you're still screwed.
This page took 0.03 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.