CPU相关概念及如何在Linux中查看CPU信息

简介: 文章目录一、CPU相关概念1、物理CPU2、物理CPU内核3、逻辑CPU4、几核几线程二、Linux中查看物理CPU、物理内核、逻辑CPU命令1、查看物理CPU个数2、查看每个物理CPU核心数3、查看逻辑CPU的个数三、CPU架构1、多个物理CPU2、多核CPU3、多核超线程

文章目录

一、CPU相关概念

1、物理CPU

2、物理CPU内核

3、逻辑CPU

4、几核几线程

二、Linux中查看物理CPU、物理内核、逻辑CPU命令

1、查看物理CPU个数

2、查看每个物理CPU核心数

3、查看逻辑CPU的个数

三、CPU架构

1、多个物理CPU

2、多核CPU

3、多核超线程

一、CPU相关概念


1、物理CPU

物理cpu就是计算机上实际安装的cpu,物理cpu数就是主板上实际插入的CPU数量。

在Linux上查看/proc/cpuinfo,其中的physical id就是每个物理cpu的id,有几个不同的physical id就有几个物理cpu。

2、物理CPU内核

每颗物理CPU可以有1个或者多个物理内核,通常每颗物理CPU的内核数都是固定的,单核CPU就是有1个物理内核,双核CPU就是有2个物理内核。

在Linux上查看/proc/cpuinfo,其中的core id就是每颗物理CPU的物理内核id,有几个不同的core id就有几个物理内核。


总的CPU物理内核数 = 物理CPU数 * 每颗物理CPU的内核数。


3、逻辑CPU

操作系统可以使用逻辑CPU来模拟真实CPU。在没有多核处理器时,一个物理CPU只能有一个物理内核。现在有了多核技术,一个物理CPU可以有多个物理内核,可以把一个CPU当做多个CPU使用,也就是所谓的逻辑CPU。

没有开启超线程的时,逻辑CPU的个数就是总的CPU物理内核数。

开启超线程后,逻辑CPU的个数就是总的CPU物理内核数的两倍。

在Linux查看/proc/cpuinfo/,其中的processor就是逻辑CPU,有几个processor就有几个逻辑CPU。


总的逻辑CPU数 = 物理CPU个数 * 每颗物理CPU的核数 * 超线程数。
总的逻辑CPU数 = 总的物理CPU内核数 * 超线程数。


4、几核几线程

如果计算机有一个物理CPU,且是双核的,支持超线程,那么这台计算机就是双核四线程。实际上几核几线程中的线程数就是逻辑CPU数。

对于两路四核超线程计算机,两路指计算机有2个物理CPU,每颗CPU中有4个物理内核,CPU支持超线程,就有2 * 4 * 2 = 16个逻辑CPU,这就是通常所谓的16核计算机。

二、Linux中查看物理CPU、物理内核、逻辑CPU命令


1、查看物理CPU个数

grep 'physical id' /proc/cpuinfo | uniq | wc -l

2、查看每个物理CPU核心数

grep 'core id' /proc/cpuinfo | uniq | wc -l

3、查看逻辑CPU的个数

grep 'processor' /proc/cpuinfo | wc -l

三、CPU架构


1、多个物理CPU

CPU通过总线进行通信,效率比较低,如下:20200117145133270.png

2、多核CPU

多核CPU,不同的核通过L2 Cache进行通信,存储和外设通过总线与CPU通信,如下:20200117151143438.png

3、多核超线程

每个核有两个逻辑处理单元,两个核共享一个核的资源,如下:20200117151516226.png

相关文章
|
11月前
|
存储 Linux API
【Linux进程概念】—— 操作系统中的“生命体”,计算机里的“多线程”
在计算机系统的底层架构中,操作系统肩负着资源管理与任务调度的重任。当我们启动各类应用程序时,其背后复杂的运作机制便悄然展开。程序,作为静态的指令集合,如何在系统中实现动态执行?本文带你一探究竟!
【Linux进程概念】—— 操作系统中的“生命体”,计算机里的“多线程”
|
10月前
|
运维 Linux 虚拟化
Linux 查看 CPU 使用情况
在 Linux 系统中,查看 CPU 使用情况是性能分析和故障排查的重要环节。查看 CPU 使用情况,使用 top 命令或者 htop 命令来查看。
|
8月前
|
NoSQL Linux 编译器
GDB符号表概念和在Linux下获取符号表的方法
通过掌握这些关于GDB符号表的知识,你可以更好地管理和理解你的程序,希望这些知识可以帮助你更有效地进行调试工作。
358 16
|
8月前
|
Unix Linux
对于Linux的进程概念以及进程状态的理解和解析
现在,我们已经了解了Linux进程的基础知识和进程状态的理解了。这就像我们理解了城市中行人的行走和行为模式!希望这个形象的例子能帮助我们更好地理解这个重要的概念,并在实际应用中发挥作用。
153 20
|
7月前
|
存储 Linux Shell
Linux进程概念-详细版(二)
在Linux进程概念-详细版(一)中我们解释了什么是进程,以及进程的各种状态,已经对进程有了一定的认识,那么这篇文章将会继续补全上篇文章剩余没有说到的,进程优先级,环境变量,程序地址空间,进程地址空间,以及调度队列。
140 0
|
7月前
|
Linux 调度 C语言
Linux进程概念-详细版(一)
子进程与父进程代码共享,其子进程直接用父进程的代码,其自己本身无代码,所以子进程无法改动代码,平时所说的修改是修改的数据。为什么要创建子进程:为了让其父子进程执行不同的代码块。子进程的数据相对于父进程是会进行写时拷贝(COW)。
194 0
|
10月前
|
存储 Linux 调度
【Linux】进程概念和进程状态
本文详细介绍了Linux系统中进程的核心概念与管理机制。从进程的定义出发,阐述了其作为操作系统资源管理的基本单位的重要性,并深入解析了task_struct结构体的内容及其在进程管理中的作用。同时,文章讲解了进程的基本操作(如获取PID、查看进程信息等)、父进程与子进程的关系(重点分析fork函数)、以及进程的三种主要状态(运行、阻塞、挂起)。此外,还探讨了Linux特有的进程状态表示和孤儿进程的处理方式。通过学习这些内容,读者可以更好地理解Linux进程的运行原理并优化系统性能。
378 4
|
10月前
|
Ubuntu Linux 应用服务中间件
Linux使用cpulimit对CPU使用率进行限制
cpulimit是一款简单易用的CPU使用率限制工具,支持对特定程序或整个CPU使用率进行限制。可通过源安装(如`yum`或`apt-get`)或编译安装获取。使用时,可针对程序名、进程号或绝对路径设置CPU占用上限(如`cpulimit -e xmrig -l 60 -b`)。ROOT用户可限制所有进程,普通用户仅限于权限范围内进程。注意,CPU百分比基于实际核心数(单核100%,双核200%,依此类推)。
1043 7
|
10月前
|
存储 缓存 Linux
Linux系统中如何查看CPU信息
本文介绍了查看CPU核心信息的方法,包括使用`lscpu`命令和读取`/proc/cpuinfo`文件。`lscpu`能快速提供逻辑CPU数量、物理核心数、插槽数等基本信息;而`/proc/cpuinfo`则包含更详细的配置数据,如核心ID和处理器编号。此外,还介绍了如何通过`lscpu`和`dmidecode`命令获取CPU型号、制造商及序列号,并解释了CPU频率与缓存大小的相关信息。最后,详细解析了`lscpu`命令输出的各项参数含义,帮助用户更好地理解CPU的具体配置。
1157 8
|
12月前
|
缓存 安全 Linux
Linux系统查看操作系统版本信息、CPU信息、模块信息
在Linux系统中,常用命令可帮助用户查看操作系统版本、CPU信息和模块信息
2204 23