前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux系统的ECS实例中如何查看物理CPU和内存信息

Linux系统的ECS实例中如何查看物理CPU和内存信息

作者头像
JaneYork
发布2023-10-11 15:13:45
2460
发布2023-10-11 15:13:45
举报

简述

Linux系统的ECS实例中如何查看物理CPU和内存信息

前情提示

系统:

一说

  • Powered By PUSDN - 平行宇宙软件开发者网www.pusdn.com ,转载请标明出处!同步更新最新版、完整版请移步PUSDN
  • 部分截图、链接等因过期、更换域名、MD语法等可能不显示,可联系反馈(备注好博文地址),谢谢❤
  • 带有#号、删除线、不操作、不执行字样的为提示或者备份bash,实际不执行

说明:

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

通过如下命令,可以查看物理CPU和内存相关信息。

查看物理CPU个数。

代码语言:javascript
复制
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l

查看每个物理CPU中core的个数,即CPU核数。

代码语言:javascript
复制
cat /proc/cpuinfo| grep "cpu cores"| uniq

查看逻辑CPU的个数。几核几G,一般用这个

代码语言:javascript
复制
cat /proc/cpuinfo| grep "processor"| wc -l

查看CPU型号。

代码语言:javascript
复制
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c

查看内存信息。

代码语言:javascript
复制
cat /proc/meminfo

获取物理内存信息,单位K

代码语言:javascript
复制
free | grep Mem | awk '{print $2}'

已使用内存

代码语言:javascript
复制
free | grep Mem | awk '{print $3}'
代码语言:javascript
复制
# 获取交换分区总大小  
mem_swap_total=`free | grep Swap | awk '{print $2}'`  
echo "交换分区总大小:"$mem_swap_total  
   
# 获取已使用交换分区大小  
mem_swap_used=`free | grep Swap | awk '{print $3}'`  
echo "已使用交换分区大小:"$mem_swap_used  
   
# 获取剩余交换分区大小  
mem_swap_free=`free | grep Swap | awk '{print $4}'`  
echo "剩余交换分区大小:"$mem_swap_free  

补充

基本概念 物理CPU:物理CPU就是插在主机上的真实的CPU硬件,在Linux下可以数不同的physical id 来确认主机的物理CPU个数。 核心数:物理CPU下一层概念就是核心数,我们常常会听说多核处理器,其中的核指的就是核心数。在Linux下可以通过cores来确认主机的物理CPU的核心数。 逻辑CPU:核心数下一层的概念是逻辑CPU,逻辑CPU跟超线程技术有联系,假如物理CPU不支持超线程的,那么逻辑CPU的数量等于核心数的数量;如果物理CPU支持超线程,那么逻辑CPU的数目是核心数数目的两倍。在Linux下可以通过 processors 的数目来确认逻辑CPU的数量。 超线程:超线程是英特尔开发出来的一项技术,使得单个处理器可以象两个逻辑处理器那样运行,这样单个处理器以并行执行线程。这里的单个处理器也可以理解为CPU的一个核心;这样便可以理解为什么开启了超线程技术后,逻辑CPU的数目是核心数的两倍了。 在Linxu下查看物理cpu、核心数、逻辑CPU和是否支持超线程 关于CPU的一些信息可在 /proc/cpuinfo 这个文件中查看,这个文件显示的内容类似于下图所示

可以看到里面的内容是以 processor (也就是逻辑CPU)为基本单元进行划分的,processor 下的 core id表示这个逻辑CPU属于哪个核心,而physical id则表示这个核心或者说逻辑CPU属于哪个物理CPU。了解这些信息,便可以方便地查看上面说到的那些参数。

查看物理CPU数量 物理CPU就是不同的phycical id的个数,可通过下面命令实现: cat /proc/cpuinfo | grep ‘physical id’ | uniq |wc -l uniq是为了去掉多个逻辑CPU属于同一个物理CPU的重复记录。

查看核心数 核心数就是不同core id的个数,可通过下面的命令实现 cat /proc/cpuinfo | grep ‘core id’ | uniq |wc -l 原理同上

查看逻辑CPU数目 逻辑CPU就是processor的数目 cat /proc/cpuinfo | grep ‘processor’ | wc -l 查看逻辑CPU时不需要去重

查看是否支持超线程 如果支持超线程就是说同一个core下会有两个processors,这样可以简单地观察/proc/cpuinfo中的内容,如果两个的processor下的core id相同,那么说明支持超线程。 还有另外一种方法是查看siblings和cpu cores的数值是否一致,评判方法如下

如果”siblings”和”cpu cores”一致,则说明不支持超线程,或者超线程未打开。 如果”siblings”是”cpu cores”的两倍,则说明支持超线程,并且超线程已打开。

另外,top命令中看到的CPU数目是逻辑CPU(输入top后再按1)。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-10-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简述
  • 前情提示
  • 一说
  • 补充
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档