linux中cpu信息解读

本文发布时间: 2019-Mar-22
在Linux系统中,提供了proc文件系统显示系统的软硬件信息。如果想了解系统中CPU的提供商和相关配置信息,则可以通过/proc/cpuinfo文件得到。基于不同指令集(ISA)的CPU产生的/proc/cpuinfo文件不一样,基于X86指令集(大部分都是这个指令集)CPU的/proc/cpuinfo文件包含如下内容:[root@PY-proxy1 ~]# cat /proc/cpuinfoprocessor : 0vendor_id : GenuineIntelcpu family : 15model : 4model name : Intel(R) Pentium(R) 4 CPU 3.00GHzstepping : 1cpu MHz : 2993.575cache size : 1024 KBphysical id : 0siblings : 2core id : 0cpu cores : 1fdiv_bug : nohlt_bug : nof00f_bug : nocoma_bug : nofpu : yesfpu_exception : yescpuid level : 5wp : yesflags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni monitor ds_cpl cid xtprbogomips : 5991.44那么每个参数什么意思呢?processor :系统中逻辑处理核的编号。对于单核处理器,则课认为是其CPU编号,对于多核处理器则可以是物理核、或者使用超线程技术虚拟的逻辑核vendor_id :CPU制造商cpu family :CPU产品系列代号model   :CPU属于其系列中的哪一代的代号model name:CPU属于的名字及其编号、标称主频stepping  :CPU属于制作更新版本cpu MHz  :CPU的实际使用主频cache size :CPU二级缓存大小physical id :单个CPU的标号siblings :单个CPU逻辑物理核数core id :当前物理核在其所处CPU中的编号,这个编号不一定连续cpu cores :该逻辑核所处CPU的物理核数apicid :用来区分不同逻辑核的编号,系统中每个逻辑核的此编号必然不同,此编号不一定连续fpu :是否具有浮点运算单元(Floating Point Unit)fpu_exception :是否支持浮点计算异常cpuid level :执行cpuid指令前,eax寄存器中的值,根据不同的值cpuid指令会返回不同的内容wp :表明当前CPU是否在内核态支持对用户空间的写保护(Write Protection)flags :当前CPU支持的功能bogomips :在系统内核启动时粗略测算的CPU速度(Million Instructions Per Second)clflush size :每次刷新缓存的大小单位cache_alignment :缓存地址对齐单位address sizes :可访问地址空间位数power management :对能源管理的支持,有以下几个可选支持功能:  ts:  temperature sensor  fid:  frequency id control  vid:  voltage id control  ttp:  thermal trip  tm:  stc:  100mhzsteps:  hwpstate:  CPU信息中flags各项含义:fpu: Onboard (x87) Floating Point Unitvme: Virtual Mode Extensionde: Debugging Extensionspse: Page Size Extensionstsc: Time Stamp Counter: support for RDTSC and WRTSC instructionsmsr: Model-Specific Registerspae: Physical Address Extensions: ability to access 64GB of memory; only 4GB can be accessed at a time thoughmce: Machine Check Architecturecx8: CMPXCHG8 instructionapic: Onboard Advanced Programmable Interrupt Controllersep: Sysenter/Sy***it Instructions; SYSENTER is used for jumps to kernel memory during system calls, and SY***IT is used for jumps: back to the user codemtrr: Memory Type Range Registerspge: Page Global Enablemca: Machine Check Architecturecmov: CMOV instructionpat: Page Attribute Tablepse36: 36-bit Page Size Extensions: allows to map 4 MB pages into the first 64GB RAM, used with PSE.pn: Processor Serial-Number; only available on Pentium 3clflush: CLFLUSH instructiondtes: Debug Trace Storeacpi: ACPI via MSRmmx: MultiMedia Extensionfxsr: FXSAVE and FXSTOR instructionssse: Streaming SIMD Extensions. Single instruction multiple data. Lets you do a bunch of the same operation on different pieces of input: in a single clock tick.sse2: Streaming SIMD Extensions-2. More of the same.selfsnoop: CPU self snoopacc: Automatic Clock ControlIA64: IA-64 processor Itanium.ht: HyperThreading. Introduces an imaginary second processor that doesn’t do much but lets you run threads in the same process a bit quicker.nx: No Execute bit. Prevents arbitrary code running via buffer overflows.pni: Prescott New Instructions aka. SSE3vmx: Intel Vanderpool hardware virtualization technologysvm: AMD “Pacifica” hardware virtualization technologylm: “Long Mode,” which means the chip supports the AMD64 instruction settm: “Thermal Monitor” Thermal throttling with IDLE instructions. Usually hardware controlled in response to CPU temperature.tm2: “Thermal Monitor 2″ Decrease speed by reducing multipler and vcore.est: “Enhanced SpeedStep”根据以上内容,我们则可以很方便的知道当前系统关于CPU、CPU的核数、CPU是否启用超线程等信息。查询系统具有多少个逻辑核:cat /proc/cpuinfo | grep "processor" | wc -l查询系统CPU的物理核数:cat /proc/cpuinfo | grep "cpu cores" | uniq查询系统CPU是否启用超线程:cat /proc/cpuinfo | grep -e "cpu cores" -e "siblings" | sort | uniq  输出举例:    cpu cores : 6    siblings  : 6  如果cpu cores数量和siblings数量一致,则没有启用超线程,否则超线程被启用。查询系统CPU的个数:cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l查询系统CPU是否支持某项功能,则根以上类似,输出结果进行sort, uniq和grep就可以得到结果。超线程技术是又INTEL提出来的,它指的是CPU在双核的基础上为其每个核心提供两个线程的运算和处理能力,特别是让你在多任务运行的时候减少等待的时间,给你打个简单的比方,比如说你的CPU的运算能力相当于只有两个车道,在车流量的的时候就会造成堵车的现象,超线程技术在这时为你虚拟的增加了两条通道,相当于四车道,这样至少可以减缓堵车的现象,并且在一般情况下都保证畅通无阻。他不是通过超频来增加功率


(以上内容不代表本站观点。)
---------------------------------
本网站以及域名有仲裁协议。
本網站以及域名有仲裁協議。

2024-Mar-04 02:11pm
栏目列表