/proc/cpuinfo如何检测CPU型号?

/proc/cpuinfo如何检测CPU型号?

dmidecode我有一台服务器,它在CPU 的输出中显示以下信息:

Handle 0x000D, DMI type 4, 35 bytes                            
Processor Information          
        Socket Designation: CPU 1                              
        Type: Central Processor                                
        Family: Xeon           
        Manufacturer: GenuineIntel                             
        ID: FB 06 00 00 01 03 00 00                            
        Signature: Type 0, Family 6, Model 15, Stepping 11     
        Flags:                 
                FPU (Floating-point unit on-chip)              
                CX8 (CMPXCHG8 instruction supported)           
                APIC (On-chip APIC hardware supported)         
        Version: Intel Xeon    
        Voltage: 1.2 V         
        External Clock: 266 MHz                                
        Max Speed: 3733 MHz    
        Current Speed: 2000 MHz                                
        Status: Populated, Enabled                             
        Upgrade: ZIF Socket    
        L1 Cache Handle: 0x0009                                
        L2 Cache Handle: 0x000A                                
        L3 Cache Handle: Not Provided                          
        Serial Number: Not Specified                           
        Asset Tag: Not Specified                               
        Part Number: Not Specified   

基于Max Speed,我猜测这是一个至强5080中央处理器。然而,根据/proc/cpuinfo,这是至强E5335

# grep "model name" /proc/cpuinfo
model name      : Intel(R) Xeon(R) CPU           E5335  @ 2.00GHz
model name      : Intel(R) Xeon(R) CPU           E5335  @ 2.00GHz
model name      : Intel(R) Xeon(R) CPU           E5335  @ 2.00GHz
model name      : Intel(R) Xeon(R) CPU           E5335  @ 2.00GHz
# 

当我检查 中列出的标志/功能时/proc/cpuinfo,它会显示ssse3,这是受支持的至强5080并且不在至强E5335。如何/proc/cpuinfo检测CPU型号?

答案1

在 x86 上,它使用CPUID“处理器品牌字符串”功能(如果支持)。因此,在您的情况下,CPU 本身返回“Intel(R) Xeon(R) CPU E5335 @ 2.00GHz”字符串。这对应于dmidecode输出:ID: FB 06 00 00 01 03 00 00匹配 06FB CPUID,IE E5335(A5080将有一个 0F64 CPUID)。

您可以在中查看内核实现arch/x86/kernel/cpu/common.cget_model_name函数

Xeon E5335 是一款 Clovertown CPU,确实支持SSSE3

相关内容