I am looking to purchase a fairly high-end workstation for engineering research and need some insight on potential benefits of going with a dual socket CPU setup vs a single CPU with higher core count. My code is all threaded using OpenMP and makes efficient use of all physical cores/virtual threads.

My question centers on whether or not I will need to re-write my code using MPI to make use of a dual socket setup or if the two CPUs are essentially treated as one CPU? Does the memory count as shared or distributed?

As a reasonable hardware example:

  • Xeon W-3275 (28 core/56 thread) @ 2.5GHz, 4.4GHz turbo (x1)
  • Xeon Gold 6132 (14 core/28 thread) @ 2.6GHz, 3.7GHz turbo (x2)
  • Having separate NUMA nodes (usually 1 socket = 1 node) is going to affect memory performance significantly. It is generally faster to get X cores on a single CPU, but there are cases where splitting that number of cores across multiple CPUs can work just as well. (i.e Thermal throttling might kick in for the whole CPU in a single-socket case.) – Romen Aug 28 '19 at 21:17

Your Answer

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

Browse other questions tagged or ask your own question.