文章目录
一、taskset命令概述
- SMP (Symmetrical Multi-Processing):指在一个计算机上汇集了一组处理器(多CPU),各CPU之间共享内存子系统以及总线结构
- CPU affinity:中文换做”CPU亲和力”,是指在CMP架构下,能够将一个或多个进程绑定到一个或多个处理器上运行
1、tasket绑定进程
Centos7系统不自带taskset工具,所以要先安装taskset工具
yum install util-linux
2、taskset语法参数
语法格式:taskset [options] -p [mask] pid
参数选项:
-a, --all-tasks 操作所有的任务线程
-p, --pid 操作已存在的pid
-c, --cpu-list 通过列表显示方式设置CPU(逗号相隔)
-V, --version 输出版本信息
二、taskset实例
1、top指定查看pid
2、查询pid是否在外面设定的CPU核心上运行
taskset -pc 8567
3、查询PID在哪个cpu上运行
taskset -p 7686查看进程在哪个cpu上运行
mask为十六进制,=0011,表示其在cpu0和cpu1上运行
注:cpu是从0开始计数
小结:taskset -p pid 以十六进制查看进程在哪块cpu上运行
taskset -pc pid 以列表形式查看进程在哪块cpu上运行,显示几就是cpu几,比如显示0,1就表示在cpu0和cpu1上运行
三、总结
taskset -pc cpulist pid以列表的形式指定进程运行的cpu因为-p的mask需要换算十六进程,所以我们常用**-pc**查询与指定进程运行的cpu