前言:
从2017年10月份我开始转入生物信息学域工作学习,医学出身又都是自己学习(闭门造车),一路来磕磕绊绊,对于计算机硬件的理解一直是我短板,作为服务器使用者,有必要理解服务器的一些硬件信息,之前也有学习,但是很多概念记不住,每次还得再查,索性整理一下自己会关注的问题。
CPU逻辑数量、CPU物理核心、几核几线程简述
1、什么是 CPU?
CPU 由数百万个晶体管组成,可以有多个处理内核,通常被称为计算机的大脑。它是所有现代计算系统必不可少的组成部分,因为它执行计算机和操作系统所需的命令和流程。 在确定程序运行速度方面(从网页浏览到构建电子表格),CPU 也很重要。
2、CPU物理核心
CPU物理核心就是计算机上实际配置的CPU个数。
在 Linux 上可以打开 cat /proc/cpuinfo 来查看,其中的 physical id 就是每个物理CPU的ID,你能找到几个 physical id 就代表你的计算机实际有几个CPU。
在 Linux 下可以通过以下指令 来查看你的物理CPU个数
grep 'physical id' /proc/cpuinfo | sort -u | wc -l
#2
物理CPU 实际Server中插槽上的CPU个数, 物理cpu数量,可以数不重复的 physical id 有几个
3、CPU 核数
CPU核数是指CPU上集成的处理数据的 CPU核心个数,单核指 CPU 核心数一个,双核则指的是两个。通常每个 CPU 下的核数都是固定的,比如你的计算机有两个物理CPU,每个CPU是双核,那么你的计算机就是四核的。
# 查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep "cpu cores"| uniq
#20
Linux 的CPU核心总数也可以在 /proc/cpuinfo 里面通过指令 cat /proc/cpuinfo 查看的到,其中的 core id 指的是每个物理CPU下的 CPU 核的 id,能找到几个 core id 就代表你的计算机有几个核心。
在 Linux 下可以通过以下指令 来查看你的 CPU 核心总数
cat /proc/cpuinfo | grep "cpu cores" | wc -l
#40
4、CPU逻辑
操作系统可以使用逻辑 CPU 来模拟出真实 CPU 的效果。
现在有了多核技术,其效果就好像把多个 CPU 集中在一个CPU上,当计算机没有开启超线程时,逻辑 CPU 的个数就是计算机的核数。而当超线程开启后,逻辑 CPU 的个数是核数的两倍。实际上逻辑 CPU的数量就是平时称呼的几核几线程中的线程数量,在 Linux 的 cpuinfo 中逻辑 CPU 数就是 processor 的数量。
#查看逻辑 CPU个数
cat /proc/cpuinfo | grep "processor" | wc -l
#40
逻辑CPU : 一般情况,我们认为一颗cpu可以有多核,加上intel的超线程技术(HT), 可以在逻辑上再分一倍数量的cpu core出来
5、总结
简单总结以下:
CPU 总核数 = 物理 CPU 个数 * 每颗物理 CPU 的核数
CPU 逻辑数 = 物理 CPU 个数 * 每颗物理 CPU 的核数 * 超线程数
![](https://img.haomeiwen.com/i17441306/a668e8d6ceaea928.png)
6、lscpu命令查看服务器的CPU配置
显示格式:
Architecture: #架构
CPU(s): #逻辑cpu数,40
Thread(s) per core: #每个核心线程, 开启超线程的话为2
Core(s) per socket: #每个cpu插槽核数/每颗物理cpu核数,20
CPU socket(s): #cpu插槽数
Vendor ID: #cpu厂商ID
CPU family: #cpu系列
Model: #型号
Stepping: #步进
CPU MHz: #cpu主频
Virtualization: #cpu支持的虚拟化技术
L1d cache: #一级缓存(google了下,这具体表示表示cpu的L1数据缓存)
L1i cache: #一级缓存(具体为L1指令缓存)
L2 cache: #二级缓存
L3 cache:#三级缓存
关于服务器运行过程中,对服务器性能的查询或者说简单的运维工作,有太多命令了,后面在使用过程中逐个进行整理。
本文使用 文章同步助手 同步
网友评论