小编use*_*126的帖子

任务集无法在 isolcpus 中的一系列内核上工作

作为序言,我在 AMD64 芯片组上使用带有内核 3.2 的 Debian Wheezy。我的机器有两个至强 E5-2690 内核。我设置了启动参数,以便一个 CPU 上的所有内核专用于单个进程。为此,我在 grub 中设置了 isolcpus=8,9,10,11,12,13,14,15。

到现在为止还挺好。现在假设我想对给定命令使用隔离的 CPU,简单地说,我将使用一个简单的无限循环:

$ taskset -c 8-15 bash -c 'while true ; 做回声你好>/dev/null; 完毕' &

到目前为止一切顺利,top 表明核心 8 的利用率接近 100%。现在假设我再次启动该命令:

$ taskset -c 8-15 bash -c 'while true ; 做回声你好>/dev/null; 完毕' &

现在 top 显示内核 9-15 保持空闲并且两个进程共享内核 8。如果相反,我这样做:

$ taskset -c 8 bash -c 'while true ; 做回声你好>/dev/null; 完毕' &

$ taskset -c 9 bash -c 'while true ; 做回声你好>/dev/null; 完毕' &

核心 8 和 9 各获得 …

kernel multi-threading cpu-usage scheduler affinity

15
推荐指数
1
解决办法
1万
查看次数

标签 统计

affinity ×1

cpu-usage ×1

kernel ×1

multi-threading ×1

scheduler ×1