phplinuxprocessaffinity

Set CPU Affinity in PHP?


Pretty straightforward question - is there a way to set the CPU affinity via PHP? Any of the following will do:

The only option I've found so far is the last one, using a tool named schedutils, and it seems it may only be supported on more recent kernels.

Schedutils


Solution

  • The way to set the CPU affinity is with the sched_setaffinity C function. It's not available through the standard PHP API so you probably would have to write an extension.

    An alternative is running taskset program through system. For example this binds the PHP process to cores 0 and 1:

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