Search code examples
c++linuxforkaffinityexecvp

How to prevent inheriting CPU affinity by child forked process?


I have a server process that forks many child processes. The server process has affinity to a CPU core, but I don't want that affinity to be inherited by child process (rather OS should handle where to run these processes). Is there a way to delink parent child processes with respect to cpu affinity?


Solution

  • You can call sched_setaffinity(2) with all bits set in CPU mask after the fork(2) and before the execve(2).