如何在 Linux 中为 C 或 C++ 进程设置 CPU 亲和力?

2023-11-26

是否有一种编程方法可以为 Linux 操作系统的 c/c++ 进程设置 CPU 亲和力?


你需要使用sched_setaffinity(2).

例如,仅在 CPU 0 和 2 上运行:

#define _GNU_SOURCE
#include <sched.h>

cpu_set_t  mask;
CPU_ZERO(&mask);
CPU_SET(0, &mask);
CPU_SET(2, &mask);
int result = sched_setaffinity(0, sizeof(mask), &mask);

(0第一个参数表示当前进程,如果您想要控制其他进程,请提供 PID)。

也可以看看sched_getcpu(3).

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Linux 中为 C 或 C++ 进程设置 CPU 亲和力? 的相关文章

随机推荐