1、CPU
其实就是一个芯片,能进行运算(为什么能进行运算,因为cpu中有一个计算单元(ALU),就是一个专门用来进行运算的器件),插在主板上
2、cpu与逻辑核的联系
需要注意的点是:
(1)逻辑核产生是因为:一个cpu在处理一个任务的时候,由于这个任务要进行其他操作,如IO等,这样cpu就会等待,但这种等待肯定是不好的,为了充分利用(压榨)cpu,此时可以让cpu去做其他的任务,等第一个任务的IO弄完了,在让这个cpu来执行任务一。但这种从任务一切换到任务二,以及从任务二切换到任务一,是非常快的,就会让人感觉那一小段时间“同时”处理了两个任务,但这种同时不是真正的同时,是假的同时。
(2)一个cpu此时其实只有一个计算单元(ALU),如下图所示是一个在网上找的一个只有一个cpu,有两个逻辑核的结构图。它有两个其他的物理硬件,如registers等(寄存器,你可以理解成比内存还要快的一种物理硬件)
3、多核(物理核)介绍
多核可以理解成这个芯片上有多个计算单元(ALU),而且这些计算单元是真的能够同时计算的。
4、总结
通过以上三点,有以下几点总结
(1)判断机器有多少个cpu,就是看这个机器的主板上插了几个cpu芯片,
(2)判断机器有几个物理核,就是看这个机器一个cpu上有几个计算单元(ALU),用cpu个数 * 每个芯片上ALU的个数 = 物理核数
(3)判断机器有几个逻辑核,就是看这个机器是否支持超线程,支持超线程的话,那么就是 物理核数*2 这里的2,是当前市面上机器一般都是取2
5、查看:
(1)mac系统查看机器核数
通过命令:sysctl machdep.cpu
core_count 核数为2
thread_count 就是开启了超线程,总数为4,就是指逻辑核为4
或者通过界面查看
(2)windows系统查看核数
https://www.cnblogs.com/cursorhu/p/5802647.html
只需要进入cmd,然后执行cpu get * 应该就可以了
注:通过博客上看到的任务管理器,显示的应该是逻辑核数
(3)linux系统
利用命令:cat /proc/cpuinfo| grep "physical id"
可以看到它的id,有两种id,表示有两个cpu
利用命令:cat /proc/cpuinfo| grep "cpu cores" | wc –l
说明物理核是16核
利用命令:cat /proc/cpuinfo| grep "processor"| wc -l
说明逻辑核也是16核,说明这台机器是没有开启超线程的。