如何确保多核服务器上的所有内核运行多线程C ++程序?

时间:2011-08-14 17:21:41

标签: c++ multithreading boost

如何确保多线程C ++程序由所有核心运行 多核服务器以物理方式并行计算(非逻辑)。

我有一台多核服务器,它有24个CPU,每个CPU有6个核心。

Intel Xeon X5650 2.67GHz cpu核心:6(支持6个线程) cpu MHz:1596.000

完全,我有24 * 6 = 144个核心。

我设计了一个带有boost / thread的多线程C ++程序。

如何确保我的程序由所有144个内核运行?

非常感谢任何帮助。

感谢

1 个答案:

答案 0 :(得分:2)

你应该没有什么特别的事要做。默认情况下,操作系统的调度程序应调度所有可用内核。如果您有144个可立即运行的线程,并且系统没有其他任何操作,则应在每个可用核心(物理或虚拟)上安排一个。