Linux学习总结(十四)—— 查看CPU信息
文章首发于【博客园-陈树义】,点击跳转到原文Linux学习总结(十四)—— 查看CPU信息。
Linux学习总结(十四)—— 查看CPU信息
商用服务器CPU最常用的是 Intel Xeon 系列,该系列的CPU支持在主板上配置多颗CPU,以此组成集群。Xeon系列CPU型号的第一个数字代表支持的CPU路数。Xeon E3-1XXX最多支持单路,即一个主板上最多支持一个CPU。Xeon E5-2XXX最多支持双路,即一个主板最多支持两个CPU。Xeon E7-8XXX最多支持8路,即一个主板上最多支持8个CPU。

除了CPU路数这个概念之外,我们还需要了解下CPU核心数和CPU线程数这两个概念。CPU核心数是指一个CPU上有几颗核心,即有几个CPU核心组。而CPU线程数是指这颗CPU能同时运行几个CPU线程,即并发线程数。

一般来说,CPU线程数大于等于CPU核心数。Intel的CPU实现了虚拟化技术,将CPU的一个物理核心虚拟成两个CPU逻辑核心。所以在Intel系列CPU中,如果它有四核,那么它可以运行的最大线程数就是8个线程。而AMD系列的CPU就没有这个虚拟化技术,所以它有几个CPU核心,就只有几个CPU线程。我的电脑使用的是Intel i7 处理器,四核心,八线程,所以打开资源管理器可以看到下面界面。在CPU使用记录那一栏可以看到一共有8个CPU监视小窗口。

总结一下我们上面说到的三个概念:
| 概念 | 含义 |
|---|---|
| CPU路数 | 一个主板最多支持的CPU个数 |
| CPU核心数 | 一个CPU拥有的CPU核心组 |
| CPU线程数 | 一个CPU的最大并发线程数,一般的CPU核心数的两倍 |
查看CPU信息命令
在Linux服务器中,查看CPU常用命令是:cat /proc/cpuinfo。
下面是一台服务器上运行cpuinfo命令的输出结果,一共有16条类似的记录,我只截取了第一条和最后一条记录。下表对输出结果中的主要属性做了说明。
| 属性 | 名称 |
|---|---|
| model name | 处理器名称 |
| cpu MHz | 主频 |
| cache size | 处理器的缓存大小 |
| processor | 逻辑处理器编号 |
| physical id | 物理处理器编号 |
| core id | 物理处理器的核心编号 |
| cpu cores | 处理器的核心数 |
[publish@bj10-181 ~]$ cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 44
model name : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz
stepping : 2
microcode : 0x13
cpu MHz : 2393.958
cache size : 12288 KB
physical id : 1
siblings : 8
core id : 0
cpu cores : 4
apicid : 32
……省略无关信息
……省略中间14个核心的数据
processor : 15
vendor_id : GenuineIntel
cpu family : 6
model : 44
model name : Intel(R) Xeon(R) CPU E5620 @ 2.40GHz
stepping : 2
microcode : 0x13
cpu MHz : 2393.958
cache size : 12288 KB
physical id : 0
siblings : 8
core id : 10
cpu cores : 4
apicid : 21
……省略无关信息
从输出可以看到pyhsicial id只有0、1两个编号,所以有两个物理CPU。cpu cores为4,表示每个物理CPU有4个核心。双路CPU,每个CPU4核心,一共有8核心,每个核心可以虚拟出两个CPU线程(逻辑CPU),所以一共会有16个逻辑CPU。processor的值是从0一直排列到15,一共16个逻辑CPU,即最大16个线程,刚好与我们的计算符合。所以这是一台双路8核心16线程的服务器。
常用命令
通过proc/cpuinfo查看自己算还是太麻烦了,通过以下命令可以直接输出服务器的物理CPU个数、物理CPU的核心数等常用信息。
| 含义 | 命令 |
|---|---|
| 查看物理CPU个数 | cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l |
| 查看CPU核心数 | cat /proc/cpuinfo| grep "cpu cores"| uniq |
| 查看最大线程数(逻辑CPU个数) | cat /proc/cpuinfo |grep "processor"|wc -l |
| 查看CPU主频 | cat /proc/cpuinfo |grep MHz|uniq |

参考资料
- [1].老左博客.Linux服务器查看CPU配置信息详解 让我们看个明白 | 老左博客.[DB/OL].2017-6-28
- [2].知乎.服务器 CPU 与家用 CPU 有什么区别? - 知乎.[DB/OL].2017-6-28
- [3].知乎.英特尔 60 核 Xeon Phi 处理器和普通 PC 使用 CPU 有什么区别? - 知乎.[DB/OL].2017-6-28
文章首发于【博客园-陈树义】,点击跳转到原文Linux学习总结(十四)—— 查看CPU信息。
Linux学习总结(十四)—— 查看CPU信息的更多相关文章
- Linux学习之十四、管线命令
Linux学习之十四.管线命令 地址:http://vbird.dic.ksu.edu.tw/linux_basic/0320bash_6.php
- Linux学习(十四)磁盘格式化、磁盘挂载、手动增加swap空间
一.磁盘格式化 分好去的磁盘需要格式化之后才可以使用.磁盘分区一般用mke2fs命令或者mkfs.filesystemtype.这个filesystemtype分为ext4,ext3,xfs等等.xf ...
- Linux学习之十四-Linux文件和目录权限
Linux文件和目录权限 在Linux中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录. 通过设定权限可以从以下三种访问方式限制访问权限:只允许用户自己访问:允 ...
- linux 学习第十四天(Apache安装、基于ip、基于域名、基于端口配置)
一.虚拟主机 A.基于IP地址 B.基于域名 C.基于端口号 复习yum仓库挂载 mkdir /media/cdrom mount /dev/cdrom /media/cdrom/ vim /et ...
- linux学习第十四天 (Linux就该这么学)找到一本不错的Linux电子书
今天老师讲了,DNS的相关,安装,配置,由来,13台根服务器,配置了主服务器,从服务器,和缓存服务器,等,今天补个大概吧,没有 记 还有正向解析,反向解析.
- Linux 查看CPU信息、机器型号等硬件信息
测试机器的硬件信息: 查看CPU信息(型号) # cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c 8 Intel(R) Xeo ...
- Linux查看CPU信息
1. 查看物理CPU的个数 #cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc –l 2. 查看逻辑CPU的个数 #ca ...
- Linux下 查看CPU信息
参考: Linux和Windows下查看cpu和core个数 Linux下 查看CPU信息 1.查看完整CPU信息: $ cat /proc/cpuinfo 2.查看逻辑cpu个数: $ cat /p ...
- Linux 查看CPU信息、机器型号等硬件信息[转]
查看CPU信息(型号) # cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c 8 Intel(R) Xeon(R) CPU ...
随机推荐
- voa 2015 / 4 / 18
Words in This Story gerund - n. an English noun formed from a verb by adding -ing infinitive - n. th ...
- 接口开发,tp5结合swagger-ui安装方法
今天看到老java用的swagger提供接口,美观好用,方便维护,不是写好接口之后再写接口文档,麻烦的要死.网上找了找结合php的方法,在此记录一下,以后再开发接口就可以方便很多了. Swagger的 ...
- .NET C#到Java没那么难,DB篇
前言 .NET C#到Java没那么难,都是面向对象的语言,而且语法还是相似的,先对比一下开发环境,再到Servlet,再到MVC,都是一样一样的,只是JAVA的配制项比较多而已,只要配好一个,后面都 ...
- 关于shell脚本函数、数组、字符串截取、svn更新发布实例
#/bin/bash #功能:QA服根据模板创建区配置文件并提交到svn上. SOURCE_PATH=/data/source_code SVN_PATH=/code/psm #svn发布目录,要 ...
- HTLM5新增属性
1.<meta http-equiv="Pragma" content="no-cache"/> //禁止页面缓存 2.<script def ...
- android - gradle编译错误 exit value 1,2,3总结
在使用jenkins,使用gradle编译的时候总会出现一些问题,下面是几个常见问题的解决方法. 被编译的代码或资源有问题( finished with non-zero exit value 1): ...
- date——sql查询
场景:在数据库中要删除一条记录,但是该记录的唯一性只能通过插入数据库的系统时间来确定,字段为date类型,格式是:2016/10/19 17:17:29. 1 解决 在百度上找到的方法是使用to_ch ...
- (转)memcached学习笔记1(windows 7 64bit 环境下安装memcached)
windows 7 64bit 环境下安装memcached 1.下载后解压到D:\memcached(下载地址:memcached-win64下载地址) 2.安装到windows服务,打开cmd命令 ...
- C++ 之 Asio 库
1 简介 Asio 是一个跨平台的 C++ 库,常用于网络编程.底层的 I/O 编程等 (low-level I/O),其结构框架如下: 2 使用 Asio 2.1 下载 Asio 可分为 ...
- Scrapy模拟登录知乎
建立项目 scrapy startproject zhihu_login scrapy genspider zhihu www.zhihu.com 编写spider 知乎的登录页url是http:// ...