1. CPU相关概念
中央处理单元(central processing unit, CPU)
在不同的情景中使用的CPU常常代表不同含义,主要区别物理CPU和逻辑CPU。
- 逻辑CPU(processor数量)
- 由于物理CPU,核心(core),SMT产生的计算能力翻倍,计算机的逻辑CPU的数量(也是常常说的总线程数),符合下面的公式:
总的逻辑CPU数(processor数量) = 物理CPU数量(计算机主板的CPU硬件/插槽socket的数量) * 每颗物理CPU的核心数(core) * 每个核心的同时多线程数量/超线程数量
- 物理CPU(physical CPU)
- 计算机主板上实际插入的CPU硬件个数,也是主板物理CPU插槽(socket)的数量。
- 通常只有服务器上才会有多个物理CPU,一般的办公/家用计算机主板上只有一个物理CPU。
- 核心(core)
- 核心是在物理CPU上的硬件。
- 单个物理CPU上,可能存在单个/多个核心数量(所谓的单核、双核、四核等)。
- 同时多线程技术(simultaneous multithreading, SMT)
- 每个核心(core)的同时多线程数量。
- 同时多线程技术(simultaneous multithreading, SMT)是实现单个核心(core)同一时刻能够执行多线程数的技术。以充分利用单个核心(core)的计算能力。AMD和其他CPU厂商常用SMT的称呼。
- 超线程技术(hyper–threading, HT):Intel的称呼,是SMT的一种具体技术实现。
- 在许多情境下,这个技术产生的计算能力又被称为**虚拟核心(virtual core),或者逻辑处理器(logical processor),或者直接称作线程(thread)**。
2. 查询CPU相关信息
- CPU相关详细信息在文件
/proc/cpuinfo
中
cat /proc/cpuinfo| grep "processor"| wc -l
#查看逻辑CPU数量,即processor数量cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
#查看物理CPU数量cat /proc/cpuinfo | grep "cpu cores" | uniq
#查看单个物理CPU的核心(core)的数量
lscpu
命令会列出CPU相关信息
1 | Architecture: x86_64 |
3. references
- wiki:CPU:https://en.wikipedia.org/wiki/Central_processing_unit
- CPU介绍:https://zhuanlan.zhihu.com/p/86855590
- 欢迎关注微信公众号:生信技工
- 公众号主要分享生信分析、生信软件、基因组学、转录组学、植物进化、生物学概念等相关内容,包括生物信息学工具的基本原理、操作步骤和学习心得。