我在我的机器上安装了Ubuntu的Linux 2.6.x内核(Ubuntu刚刚提到,以防万一这会改变什么)。内核在具有8个内核的机器上运行。该机器也运行openvz,但我不认为这确实会改变问题的上下文。cpumask如何影响linux内核中其他进程的调度?
我安装了一个软件,只允许使用两个CPU,并且它在第一个CPU(cpumask 3)上设置了一个硬件CPU关联。我在问自己,其他进程的调度是如何受这个影响的。我想我读了一些关于它的内容,但我现在认为这些进程可能会附加到第一个CPU上。内核总是试图保持同一CPU上的进程,以避免缓存失效。
在机器上有相当多的进程在运行。内核如何处理这种情况?难道是因为它们在绑定到拥挤区域时受到影响,所以CPU亲和力处理的运行速度较慢?内核如何关心硬亲和力。
我想,硬件中断可能会锁定在一些第一个CPU上。而且,如果你有NUMA,那么内核就会努力保持进程和数据的关闭。但是,如果有一些软件锁定到1和2个CPU(并且两个CPU都被主动使用),那么更有可能在核心3-8上计划其他软件,它们的负载较小。 – osgx