我很难找到有关如何为linux内核(包含所有已加载模块)设置cpu亲和性的信息,而不是针对特定进程。
这是因为我希望内核一直在CPU 0上运行以处理I / O内容,而不是在其他3个CPU上运行任何交换机,因为它可能会污染L1和L2缓存。
提前致谢。
Nulik
答案 0 :(得分:7)
代表进程的内核工作总是发生在发出请求的CPU上。但是,可以引导中断。查看/proc/interrupts
以确定要移动的中断(说明与eth0
匹配的所有内容)并通过将十六进制掩码回显到/proc/irq/XXX/smp_affinity
来设置关联。
答案 1 :(得分:1)
您应该能够通过内核命令行选项禁用其他内核。
没有内核在核心上运行意味着其他任何东西都无法在该核心上运行。没有内核调度程序,没有TLB设置 - >没有代码执行。