在PHP中设置CPU亲和力?

时间:2013-06-09 17:51:59

标签: php linux process affinity

非常简单的问题 - 有没有办法通过PHP设置CPU亲和力?以下任何一项都可以:

  • 通过PHP调用设置当前进程的亲缘关系。
  • 通过PHP调用设置特定PID的亲和力。
  • 作为最后的手段,通过命令行工具设置特定PID的亲和力。

我到目前为止找到的唯一选项是最后一个,使用名为schedutils的工具,它似乎只能在更新的内核上支持。

Schedutils

1 个答案:

答案 0 :(得分:6)

设置CPU亲和性的方法是使用sched_setaffinity C函数。它不能通过标准PHP API获得,因此您可能需要编写扩展名。

另一种方法是通过taskset运行system计划。例如,这将PHP进程绑定到核0和1:

system('taskset -cp 0,1 '.getmypid());