我正在尝试在4核处理器上运行多线程程序,我希望每个线程在不同的核心上运行。
我该怎么做?因为现在我看到他们都在同一个核心上运行。
(我正在使用Linux操作系统,我的代码在c上写了。)
答案 0 :(得分:4)
进程调度程序使进程对特定CPU具有affinity。你已经将一堆东西加载到缓存中,你也可以继续使用这个“热”缓存。
你可能正在获得同一个核心上的所有线程,因为你已经在这里加载了程序。
我确实找到了这个:pthread_setaffinity_np。它似乎很笨拙,但我希望它有一些用处。