在PHP中设置CPU亲和力?

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

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

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

Schedutils

设置CPU关联的方法是使用sched_setaffinity C函数。 这不是通过标准的PHP API,所以你可能不得不写一个扩展。

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

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