My Dell Precision T5500 workstation has an option in the BIOS for changing the memory mode between SMP and NUMA.

Which of these options should I use with Vista 64-bit? Does Vista support NUMA?

From what I understand the hardware I have is natively NUMA (2 x Intel i7), but in SMP mode the hardware stripes the memory banks to produce a single uniform bank.


Last question first: Yes, Vista does support NUMA (XP professional already did)
In most cases it is beneficial to use the hardwares' native memory mode. 'Optimal' memory bandwidth and latentcy is the result.

The modes access policies can be descibed as follows:
NUMA: use local memory first (fast), if full use foreign (slow)
SMP: map every other memory page to the other CPU, this averages out fast and slow memory access
There are only rare cases where the application access foreign memory in a way that SMP modes averaging out the memory access is beneficial for the overall performance.
Example: Database, that doesn't exceed the memory capabilities of the system but still using significantly more than locally available memory.

If you don't care about memory performance you could have saved the money for the expensive i7 and buy a much cheaper (old style) SMP system and spend the extra money for a team dinner ;-)

  • Some applications, such as Folding@home, run more slowly when you use NUMA (you can google it). I don't understand why, though.
    – netvope
    Jun 16 '11 at 3:47

From reading about it unless you go past a certain amount of cores you are fine using SMP. Although if you have a few hours benchmark your system with the programs you use most.

Why should I use NUMA? What are the benefits of NUMA? The main benefit of NUMA is, as mentioned above, scalability. It is extremely difficult to scale SMP past 8-12 CPUs. At that number of CPUs, the memory bus is under heavy contention. NUMA is one way of reducing the number of CPUs competing for access to a shared memory bus. This is accomplished by having several memory busses and only having a small number of CPUs on each of those busses. There are other ways of building massively multiprocessor machines, but this is a NUMA FAQ, so we'll leave the discussion of other methods to other FAQs.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.