1. 有关cpu物理核
1
2
3
4
5
6
7
8
9
10
11
# 总核数 = 物理CPU个数 X 每颗物理CPU的核数
# 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数
# 查看物理CPU个数
cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l
# 查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo | grep "cpu cores" | uniq
# 查看逻辑CPU的个数
cat /proc/cpuinfo | grep "processor" | wc -l
其实还有一种更方便的方式:
lscpu
2. 有关cpu的使用率
命令: top
操作:
- 按下数字
1
可以显示每个核的负载。 - 按下
f
可进入选项, 空格键打开选项。 如进程最后一次所绑定的cpu核心。
3. 指定 进程运行在特定的cpu核上
- 将运行中的进程绑定在特定核上
查看进程运行在哪个cpu上
taskset -p 2726
将进程指定到某个cpu核上
taskset -pc 1 2726
- 启动时绑定cpu核
taskset -c 1 ./xxx.o &
4. 查看io负载
命令
iostat -x
如何查找io占用较高的进程
iotop -oP
5. 解释一下符号含义
rm -f ${src_tmp_file} > /dev/null 2>&1
- /dev/null 表示空设备文件
- 0 表示stdin标准输入
- 1 表示stdout标准输出
- 2 表示stderr标准错误
2>&1 的意思就是将标准错误重定向到标准输出。这里标准输出已经重定向到了 /dev/null。那么标准错误也会输出到/dev/null