在 Linux 系统中,如何详细了解 CPU 的信息呢? 当然是通过cat /proc/cpuinfo来检查了,但是比如几个物理CPU/几核/几线程,这些问题怎么确定呢?

经过查看,我的开发机器是2个物理CPU,16核32线程,Intel(R) Xeon(R)  CPU E5-2670 0 @ 2.60GHz

系统的架构是X86的64位系统
CPUs 有32个逻辑的处理器
Threads per core: 每个核有两个线程
Core per Socket:每个物理卡槽有8个核心
CPU Socket :有2个物理卡槽
NUMA nodes : Non Uniform Memory Access Architecture,使众多服务器像单一系统那样运转,两个NUMA

记录一下,判断的过程和知识。

判断依据:
1.具有相同core id的cpu是同一个core的超线程 。
2.具有相同physical id的cpu是同一颗cpu封装的线程或者cores。
英文版:
1.Physical id and core id are not necessarily consecutive but they are unique. Any cpu with the same core id are hyperthreads in the same core.
2.Any cpu with the same physical id are threads or cores in the same physical socket.

echo "logical CPU number:"
#逻辑CPU个数
cat /proc/cpuinfo | grep "processor" | wc -l

echo "physical CPU number:"
#物理CPU个数:
cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l

echo "core number in a physical CPU:"
#每个物理CPU中Core的个数:
cat /proc/cpuinfo | grep "cpu cores" | uniq | awk -F: '{print $2}'
#查看每个physical cpu上core id的数量,即为每个物理CPU上的core的个数
cat /proc/cpuinfo | grep "core id"

#是否为超线程?
#如果有两个逻辑CPU具有相同的”core id”,那么超线程是打开的。
#每个物理CPU中逻辑CPU(可能是core, threads或both)的个数:
cat /proc/cpuinfo | grep "siblings"

/proc/cpuinfo 文件包含系统上每个处理器的数据段落。/proc/cpuinfo 描述中有 6 个条目适用于多内核和超线程(HT)技术检查:processor, vendor id, physical id, siblings, core id 和 cpu cores。

processor 条目包括这一逻辑处理器的唯一标识符。
physical id 条目包括每个物理封装的唯一标识符。
core id 条目保存每个内核的唯一标识符。
siblings 条目列出了位于相同物理封装中的逻辑处理器的数量。
cpu cores 条目包含位于相同物理封装中的内核数量。
如果处理器为英特尔处理器,则 vendor id 条目中的字符串是 GenuineIntel。
1.拥有相同 physical id 的所有逻辑处理器共享同一个物理插座。每个 physical id 代表一个唯一的物理封装。
2.Siblings 表示位于这一物理封装上的逻辑处理器的数量。它们可能支持也可能不支持超线程(HT)技术。
3.每个 core id 均代表一个唯一的处理器内核。所有带有相同 core id 的逻辑处理器均位于同一个处理器内核上。
4.如果有一个以上逻辑处理器拥有相同的 core id 和 physical id,则说明系统支持超线程(HT)技术。
5.如果有两个或两个以上的逻辑处理器拥有相同的 physical id,但是 core id 不同,则说明这是一个多内核处理器。cpu cores 条目也可以表示是否支持多内核。

判断CPU是否64位,检查cpuinfo中的flags区段,看是否有lm标识。
Are the processors 64-bit?

A 64-bit processor will have lm ("long mode") in the flags section of cpuinfo. A 32-bit processor will not.

NOTE: 原文章地址:http://www.51testing.com/html/38/225738-236367.html

Linux系统下,CPU信息详解(cpuinfo,多核,多线程)相关推荐

  1. linux系统下grub.cfg详解和实例操作

    linux系统下grub.cfg详解和实例操作 简介 grub是引导操作系统的程序,它会根据自己的配置文件,去引导内核,当内核被加载到内存以后,内核会根据grub配置文件中的配置,找到根分区所使用的文 ...

  2. linux系统下文件命令详解

    /etc 目录下包含的用户信息文件有: 3.1.0 passwd: 用户库文件 用户名 UID,GID 和工作目录都在此文件中 Shadow:存放用户口令的文件,每个用户的 口令加密后都放在此文件中 ...

  3. 要知道的命令:htop 助你心中有数 | Linux 系统下 htop 命令详解

    这几天在跑超级超级巨大的计算量的东西,然后就挠心挠肺地想知道我的进程怎么样啦.计算资源够不够啦等等!所以就极其地频繁使用htop!应该说是我就挂着没退出过哈哈哈哈哈哈哈哈哈哈! 然而,它这个界面吧,虽 ...

  4. Ubuntu Linux系统下apt-get命令详解

    整理了Ubuntu Linux操作系统下apt-get命令的详细说明,分享给大家. 常用的APT命令参数: apt-cache search package 搜索包 apt-cache show pa ...

  5. linux系统get命令详解,Ubuntu Linux系统下apt-get命令详解

    整理了Ubuntu Linux操作系统下apt-get命令的详细说明,分享给大家.常用的APT命令参数: apt-cache search package 搜索包 apt-cache show pac ...

  6. ubuntu linux编译apt,Ubuntu Linux系统下apt-get命令详解

    整理了Ubuntu Linux操作系统下apt-get命令的详细说明,分享给大家. 常用的APT命令参数: apt-cache search package 搜索包 apt-cache show pa ...

  7. Linux系统下的权限详解-1

    在Linux系统根下,通过使用ll 命令查看得出:Linux中常用权限有 r w x 如图所示,权限共9位构成.(注:"-" 也表示一位) 权限是赋给谁的? 答:用户(user)组 ...

  8. linux进程存放 proc,Linux系统下proc目录详解

    1,.proc --- 一个虚拟文件系统 /proc 文件系统是一种内核和内核模块用来向进程 (process) 发送信息的机制 (所以叫做 /proc).这个伪文件系统让你可以和内核内部数据结构进行 ...

  9. Linux系统下apt-get命令详解

    常用的APT命令参数: apt-cache search package 搜索包 apt-cache show package 获取包的相关信息,如说明.大小.版本等 sudo apt-get ins ...

  10. Linux系统下----make命令详解,地球人都在用的“编译工具”

    Make命令 1.功能介绍 2.准备工作.写法和用法 3.注意事项 4."买家秀" 5.其他 1.功能介绍 make命令是用来自动完成大批量源文件的编译工作的维护工具:能够建立不同 ...

最新文章

  1. 9032c语言程序设计,2016年中国计量学院机电工程学院9032C语言程序设计考研复试题库...
  2. 学会Python正则表达式,就看这20个例子~
  3. 深度学习(二十八)——SOM, Group Normalization, MobileNet, 花式卷积进阶
  4. python3.5安装scrapy_win10下基于python3.5安装scrapy教程
  5. antd vue关闭模态对话框_如何在Bootstrap项目中用Vue.js替代jQuery
  6. java 树同构_有根树的同构 和 无根树的同构
  7. Markdown中插入图片及图注
  8. Spring Cloud Alibaba Sentinel之服务降级篇
  9. PowerDesigner 将 CDM 转为 Oracle SQL建表语句
  10. 服务器已联网 不能远程桌面,几种常见的Windows 服务器无法联网/无法连接远程桌面等故障解决方案...
  11. 【HTTP Live Streaming】(四)苹果公司提供的7款 hls 工具
  12. 简历学习课程:1-9课
  13. join有哪几种方式?内外连接有什么区别?
  14. YOLO ZOO:YOU ONLY LOOK ONCE ZOO
  15. 【JS】1067- 一个神奇的交叉观察 API Intersection Observer
  16. Spring Cloud + Mybatis 多数据源配置
  17. java springboot房地产信息管理系统+实训报告+PPT+功能需求报告
  18. HTML5+CSS3的学习(一)
  19. 发表说说代码php,PHP随机发送QQ说说[多用户]
  20. 《Windows》Windows系统的日期和时间设置

热门文章

  1. 自适应的对话气泡皮肤实现方案
  2. Google Ananlytics 与百度统计
  3. 大数据初学者应该知道的知识
  4. listbox删除报错_ListBOx等控件删除数据
  5. 知乎热议:“所有专业都在劝退”,对大学生最友好的竟是它?
  6. iOS开发之如何用UITableView实时显示歌词
  7. 亚马逊拟打造近地轨道卫星群 在全球提供互联网服务
  8. 页面显示格式化的时间、倒计时效果、学成在线案例(创建、添加节点)、学生信息表(重点)、5秒钟之后跳转页面(location.href应用)、学生信息表(页面刷新数据不丢失)(重点)——API练习案例
  9. Python-base编码和解码方法
  10. 1.21.Flink Slot和并行度(parallelism)\Flink的并行度由什么决定的?\Flink的task是什么?\slot和parallelism