有关,一般来说一个应用占用一个进程, *** 作系统根据进程大小将内存划分为若干块,每个进程占用1块。1个应用程序至少有一个进程,一个进程至少有一个线程。现在的cpu核心数一般和线程数是1对1关系,如4核4线程,8核8线程。I7支持超线程
可以做到1:2,即4核8线程,6核12线程。多线程
的好处就是可以并行处理进程,提高程序的运行效率,利于内存分配
1. 使用taskset充分利用多核cpu,让cpu的使用率均衡到每个cpu上 #taskset -p, 设定一个已存在的pid,而不是重新开启一个新任务 -c2. 使用nice和renice设置程序执行的优先级 格式:nice
首先为大家演示1个CPU的情况,这种情况最简单。
CPU的信息存放在/proc/cpuinfo中,如下图所示,physical id代表第几个CPU,编号从0开始,cpu cores 代表核数,可以看出是1颗1核的CPU,即CPU个数是1个。
请点击输入图片描述
在我们知道CPU信息具体存放文件后,我们可以简单使用 grep -c 'processor' /proc/cpuinfo来统计CPU个数。
请点击输入图片描述
下面演示下多颗CPU的查询情况,先查看下/proc/cpuinfo看看cpu信息有什么不同。可以看出是2颗4核的CPU,即CPU个数是8个。
请点击输入图片描述
同样,使用grep -c 'processor' /proc/cpuinfo来统计CPU个数。
请点击输入图片描述
也可以使用如下方式单独查询CPU个数、核数及逻辑CPU总数。
注意:总逻辑CPU数 = 物理CPU个数 * 每颗物理CPU的核数 * 超线程数
查询CPU个数:
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
查询核数:
cat /proc/cpuinfo| grep "cpu cores"| uniq
查询逻辑CPU总数:
cat /proc/cpuinfo| grep "processor"| wc -l
请点击输入图片描述
最后,给大家介绍下CPU型号的查询方式。
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
请点击输入图片描述
详细Linux命令介绍请看《Linux命令大全》
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)