Linux系统如何判断CPU是双核还是单核和双核的区别

博客访问:
博文数量: 5592
注册时间:
认证徽章:
Oracle & MySQL DBA, EBS DBA,希望在这里一起分享知识,讨论技术,畅谈人生 。
ITPUB论坛APP
ITPUB论坛APP
APP发帖 享双倍积分
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: Linux
今天查看一个HP DL580 机器, 发现 /proc/cpuinfo 上有 64 条记录(0~63), 即 64 核, 但是physical_id 是 0~3 ,表示有 4 颗实体的CPU ,&& 然而cpu cores = 8 ,&& 算出来应该是 4*8=32核 , 看到的却是64, 后来发现siblings&= 16表示超线程 (16/8=2 >1) .&& 所以是 4*16=64 核 。
siblings&&&&&&& :& 16core id&&&&&&&&& :&& 11cpu cores&&&&&& : 8
相关资料:&
-----------------------------------------------------
目前intel新的多核心cpu都会在后面显示具体的型号数字,例如:model name : Intel(R) Xeon(R) CPU& && && &&&X3230& &@ 2.66GHz& & 说明是 Xeon 3230的cpu,而不显示型号的具体数字的,大部分都是奔腾的CPU。很多主机商都骗人,用奔腾的cpu,却说是多核心的CPU。& & 探针看到的数据:类型:Intel(R) Xeon(TM) CPU 2.80GHz 缓存:1024 KB类型:Intel(R) Xeon(TM) CPU 2.80GHz 缓存:1024 KB类型:Intel(R) Xeon(TM) CPU 2.80GHz 缓存:1024 KB类型:Intel(R) Xeon(TM) CPU 2.80GHz 缓存:1024 KB& & 没有具体的型号,缓存1M,一般都是奔腾系列的cpu,或者是intel假双核的cpu,具体要根据上面说的去判断。新的多核心cpu都能看到具体的型号。另外多核心的xeon的CPU,一般主频都不高,达到2.8和3.0的只有很少的几个高端CPU型号,一般主机商不会用这么好的。& & 一些操作系统的最新版本已经更新了 /proc/cpuinfo 文件,以支持多路平台。如果您的系统中的 /proc/cpuinfo 文件能够正确地反映出处理器信息,那么就不需要执行上述步骤。反之,可采用本文中的信息进行解释。& & /proc/cpuinfo 文件包含系统上每个处理器的数据段落。/proc/cpuinfo 描述中有 6 个条目适用于多内核和超线程(HT)技术检查:vendor id, processor, physical id, core id, siblings 和 cpu cores。vendor id& &&&如果处理器为英特尔处理器,则字符串是 GenuineIntel。processor& &&&包括这一逻辑处理器的唯一标识符。physical id& &包括每个物理封装的唯一标识符。core id& && & 保存每个内核的唯一标识符。siblings& && &列出了位于相同物理封装中的逻辑处理器的数量。cpu cores& &&&包含位于相同物理封装中的内核数量。1. 拥有相同 physical id 的所有逻辑处理器共享同一个物理插座,每个 physical id 代表一个唯一的物理封装。2. Siblings 表示位于这一物理封装上的逻辑处理器的数量,它们可能支持也可能不支持超线程(HT)技术。3. 每个 core id 均代表一个唯一的处理器内核,所有带有相同 core id 的逻辑处理器均位于同一个处理器内核上。简单的说:“siblings”指的是一个物理CPU有几个逻辑CPU,”cpu cores“指的是一个物理CPU有几个核。4. 如果有一个以上逻辑处理器拥有相同的 core id 和 physical id,则说明系统支持超线程(HT)技术。5. 如果有两个或两个以上的逻辑处理器拥有相同的 physical id,但是 core id 不同,则说明这是一个多内核处理器。cpu cores 条目也可以表示是否支持多内核。& & 不应该按照flags里是否有 ht 标志来判断系统是否有超线程能力,而应该:如果“siblings”和“cpu cores”一致,则说明不支持超线程,或者超线程未打开。如果“siblings”是“cpu cores”的两倍,则说明支持超线程,并且超线程已打开。& & 例如,如果系统包含两个物理封装,每个封装中又包含两个支持超线程(HT)技术的处理器内核,则 /proc/cpuinfo 文件将包含此数据。(注:数据并不在表格中。)processor& &&&0 4 2 6 1 5 3 7physical id& &0 0 0 0 1 1 1 1core id& && & 0 0 1 1 2 2 3 3siblings& && &4 4 4 4 4 4 4 4cpu cores& &&&2 2 2 2 2 2 2 2此例说明:1)一个物理封装有四个内核,即有4个逻辑处理器。2)一个内核上有2个不同的processer,即系统支持超线程技术(HT)。3)cpu cores条目为2,而siblings的数目却是4,故支持超线程技术(4/2=2>1)。4)值得注意的是physical id和core id的编号可能是也可能不是连续的。系统上有两个物理封装并不罕见,而且physical id可能等于0和3。& & 可通过如下方法查询CPU情况:& & 1. 逻辑CPU个数:# cat /proc/cpuinfo | grep “processor” | wc -l& & 2. 物理CPU个数:# cat /proc/cpuinfo | grep “physical id” | sort | uniq | wc -l& & 3. 每个物理CPU中Core的个数:# cat /proc/cpuinfo | grep “cpu cores” | wc -l& & 是否为超线程?如果有两个逻辑CPU具有相同的”core id”,那么超线程是打开的。& & 4. 每个物理CPU中逻辑CPU(可能是core, threads或both)的个数:# cat /proc/cpuinfo | grep “siblings”
阅读(6583) | 评论(0) | 转发(0) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。教你如何查看Linux的CPU负载 | 张戈博客
博客宗旨 把最实用的经验,分享给最需要的读者,希望每一位来访的朋友都能有所收获!
<span class="tipso_style" id="tip-w" data-tipso=''>
浏览 7641402 次
留言 17155 条
随便挑了些,看你喜欢嘛
关于博客 张戈博客是关注互联网以及分享IT运维工作经验的个人博客,主要涵盖了操作系统运维、实用脚本编程以及博客网站建设等经验教程。我的博客宗旨:把最实用的经验,分享给最需要的读者,希望每一位来访的朋友都能有所收获!Linux系統下如何查看CPU型號、核心數量、頻率和溫度?日期: | 作者:PU(, entral Proessing Unit)是核心的組成元件,也可以說是的心臟,大部分的運算功能都需要透過PU來處理。在相同的PU架構下,PU的核心(ore)數量和頻率是判斷效能的主要的依據,核心數量愈多、頻率愈高,效能會愈好,當然產生出來的熱也會愈多。PU的溫度一高,通常會自動降頻來降溫,一旦降頻,效能也會跟著下降,所以PU的溫度偶爾也需要注意一下才行。系統上有許多查看PU資訊的工具可以使用,但在系統下該如何知道PU的這些資訊呢?
與其他資訊
大部份內建桌面環境(ktop Enronment)的()會提供圖形化介面的系統監控工具,如桌面環境,有和即時監看PU、和網路使用量的工具。
桌面環境提供的圖形化系統監控工具可能無法全面地顯示出PU資訊,如上圖這款工具就無法知道PU目前的運行頻率以及溫度。況且在有些情況下,並不是使用桌面環境來操控系統,此時就不能透過圖形化系統監控的軟體來查看PU資訊。所以,最好的辦法就是學會如何在終端機下使用簡單的指令來獲取PU資訊。
系統會將部分PU的資訊即時地存在於中,對應的檔案路徑在「/pro/」,可以使用以下指令來查看這個檔案路徑所儲存的內容:
接著會將PU所有核心(包含虛擬核心)的資訊個別列出,包含核心號碼、型號、頻率(即時運行頻率)和大小。
可以取得PU的架構(x86, x86_64...等等)、核心數量、執行緒數量、頻率(從不同核心的運行頻率中挑選最大的來顯示)和大小。使用方法很簡單,直接在終端機輸入以下指令即可:
查看PU的運行頻率
PU雖然都有個標準的工作頻率,但它其實不一定會以固定的頻率來工作,而可能會根據負載程度或是溫度的不同,來自動調節其工作時使用的頻率,以達到省電降溫又不失效能的目的。若使用者發覺自己的效能似乎不如預期,有可能是PU的頻率因為某些原因而無法提升。雖然上段提到的「」和「」都可以看到PU的頻率,但其中的「」因為顯示出來的資訊量太多,看起來不是很直觀,所以可以搭配「grep」指令和管線(pe)用法來抓出想要看的PU頻率部分即可。由於「at」和「lsXXX」類的指令只會抓取一次指令執行時當下的資訊,所以如果想要連續抓取,可以配合「wath」指令,來指定每隔幾秒自動取得PU的頻率資訊,會方便很多。
透過可以抓取各個核心的運行頻率,指令如下:
at /pro/ | grep MHz
如果想要每秒自動取得目前的PU頻率,可以輸入以下指令:
wath -n 1 "at /pro/ | grep MHz"
透過可以抓取每個核心中最大的運行頻率,如果想要每秒自動取得目前的PU頻率,指令如下:
wath -n 1 ""
當然,也是可以搭配「grep」一起使用,這裡就不再提了。
查看PU的溫度
PU的溫度會影響到PU的效能、穩定性和壽命。PU溫度建議不要超過攝氏90度(大概值,不同PU有不同規格),避免過熱降頻,甚至當機。在上如果要查看硬體的溫度,可以安裝「」套件。
基於的發行板,可以直接使用「apt-get」來安裝「」,指令如下:
sudo apt-get install
接著使用「」指令設定要偵測的感測器。在這裡可以配合「yes」指令和管線來快速設定成偵測所有感測器,指令如下:
yes | sudo
設定完要偵測的感測器之後,以後就可以直接使用以下指令來查看硬體的溫度了!
如上圖,可以看到PU的兩顆核心(ore 0, ore 1)溫度分別是48.0和51.0度。只能顯示它有偵測到的感測器資訊,因此在不同硬體規格上的執行指令所顯示出來的資訊量會有一些差異。
分類:標籤:關於作者相關文章用户名:dccharlie
文章数:13
访问量:91156
注册日期:
阅读量:1297
阅读量:3317
阅读量:581447
阅读量:465967
51CTO推荐博文
&&& 当linux系统被某一个进程占用时,它无法处理其它进程的请求。余下等待处理的请求必须等到CPU空闲。这个时候,系统会变得很慢。以下命令将能够帮助你识别CPU的利用率,从而解决与CPU相关的问题。
&&& 查明CPU利用率是一项重要的任务。linux系统附带了报告CPU利用率的各种工具。利用这些工具,你将可以查明:
&&& *CPU利用率
&&& *显示每一个CPU的利用率
&&& *了解系统CPU的平均利用率
&&& *直观的找到哪个进程正在吃CPU
top程序提供了一个动态的、实时的、直观的运行中的系统。它能显示系统的主要信息,并且把由内核管理的任务列表显示出来。top命令监控CPU利用率,进程状态和内存利用率。顶部区域包含了整个系统状态的信息,从左到右,从上到下,依次是:当前时间,正常运行时间,负载均衡,进程总数和概况,CPU状态,内存占用情况,swap占用情况。
从CPU状态那一行,可以很清楚地掌握CPU利用率:用户模式(us),系统模式(sy),低优先级用户模式(ni),空闲任务(id),I/O等待中(wa)。top命令还可以详细列出每一个进程占用了多少CPU和多少内存。
#2:mpstat
mpstat命令会把每一个可用的处理器都写入标准输出中,第一个处理器编号为0,同时对所有处理器的全部平均值做一次报告。默认情况下,只会输出全部平均值。要查看每一个CPU的情况,需要增加参数。
输入:mpstat
输入:mpstat -P ALL
使用sar命令可以收集,报告和保存系统活动信息。sar命令会把当天的CPU活动情况全部写入标准输出中。默认记录间隔时间是10分钟,你也可以添加参数来指定sar需要收集数据。
ps是一条功能非常全面的命令。通过使用ps命令,可以很清楚的看出到底是哪一条进程在吃CPU。排在前面的占用的CPU越多
输入:ps -eo pcpu,pid,user,args | sort -k 1 -r | head -16
#5:gnome-system-monitor
如果计算机上装有linux桌面系统,便可以使用图形界面的系统监视器。从系统监视器中,可以很直观地看到进程的状态、占用的CPU和内存等等信息。
最后的话,以上介绍的5种工具的用法只是冰山一角,想要获得更多信息,请找男人man command本文出自 “” 博客,请务必保留此出处
了这篇文章
类别:┆阅读(0)┆评论(0)

我要回帖

更多关于 服务器cpu怎么样 的文章

 

随机推荐