/proc/cpuinfoはCPUモデルをどのように検出しますか?

/proc/cpuinfoはCPUモデルをどのように検出しますか?

dmidecodeCPU 出力に以下を表示するサーバーがあります。

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推測してみるとXeon 5080CPU。しかし/proc/cpuinfoこれによるとXeon 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ます。ssse3Xeon 5080そしてそこにはありません。Xeon E5335/proc/cpuinfoCPUモデルを検出する方法は?

ベストアンサー1

x86 では、以下を使用します。CPUID「プロセッサブランド文字列」機能(サポートされている場合)。したがって、あなたの場合、CPU自体は「Intel(R)Xeon(R)CPU E5335 @ 2.00GHz」文字列を返します。これはdmidecode次の出力に対応します。ID: FB 06 00 00 01 03 00 00マッチ06FB CPUID、つまり E5335(ㅏ5080CPUIDは0F64です)。

以下ではカーネルの実装を見ることができます。arch/x86/kernel/cpu/common.cget_model_name機能

Xeon E5335はClovertown CPUです。SSSE3をサポートしていますか?

おすすめ記事