Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何找到固定到同一核心的多个进程?_Linux_Shell - Fatal编程技术网

Linux 如何找到固定到同一核心的多个进程?

Linux 如何找到固定到同一核心的多个进程?,linux,shell,Linux,Shell,我使用lsisolcpus查找不同进程使用的内核 问题>是否有一种方法可以自动检测多个进程何时固定到同一cpu内核?在上面的示例中,我希望看到脚本抱怨存在冲突,因为Test1和Test2都固定在核心30上。如何: $ lsisolcpus core pid foreign comm cmdline 30 27213 2147 Test1 ./Test1 30 27214 2157 Test2 ./Test2 获取lsisolcpus命令的输出并将其馈送到awk。我们忽

我使用
lsisolcpus
查找不同进程使用的内核

问题>是否有一种方法可以自动检测多个进程何时固定到同一cpu内核?在上面的示例中,我希望看到脚本抱怨存在冲突,因为
Test1
Test2
都固定在核心30上。

如何:

$ lsisolcpus
core pid   foreign comm  cmdline
30   27213 2147    Test1 ./Test1
30   27214 2157    Test2 ./Test2

获取lsisolcpus命令的输出并将其馈送到awk。我们忽略输出的第一行(NR==1),然后构建一个由核心和命令索引的输出(CPU)的二维数组。然后,我们在数组中循环,如果每个核心有多个条目(cnt>1),我们将打印一条错误消息以及与该核心相关的命令。

可能与
lsisolcpus | awk'{print$1}'| sort | uniq-d
类似?
lsisolcpus | awk 'NR==1 {next} { cpus[$1][$4]="" } END { for ( i in cpus) { cnt=0;for (n in cpus[i]) {cnt++} if (cnt>1) { print "WARNING - conflict on core - "i;for (o in cpus[i]) { print o } } } }'