hwinfo

64bit oder nicht, das ist hier dir Frage!

Written by  on Juli 10, 2008

Wie erkennt man, ob in einer Linux Box bereits eine 64bit CPU schlummert? Diese Frage stellt sich natürlich nur bei älterer Hardware, die vielleicht auch noch hunderte Kilometer weit weg plaziert ist.

Die folgende Zeile sieht schon sehr vielversprechend aus. Damit kann ich sicher sein, dass ein 64bit Kernel läuft und damit muss die CPU das wohl auch unterstützen.

> uname -i
x86_64

Was aber wenn hier nur i386, i586 oder i686 angezeigt wird?

> cat /proc/cpuinfo

oder für SuSE Linux Systeme

> hwinfo --cpu

Bringt hier die Lösung. Und zwar die Zeile in der die Fags angegeben werden. Das Long Mode Flag oder als "lm" abgekürzt zeigt auch bei installiertem 32bit System ob die Hardware bereits für 64bit gerüstet ist.

Ist Hyperthreading auf meiner Linux Box aktiviert?

Written by  on Juni 28, 2008

Mit dem folgenden Befehl kann man ja jede Menge an Infos über die CPU auslesen:

# cat /proc/cpuinfo 

Man sieht sehr schön, hier einen Zweikern Prozessor. Nur hat dieser auch wirklich Hyperthreading aktiviert? Das ht Flag verrät ja nur, ob Hyperthreading unterstützt wird.

processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 67
model name      : AMD Athlon(tm) 64 X2 Dual Core Processor 5000+
stepping        : 3
cpu MHz         : 1800.000
cache size      : 512 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 2
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy
bogomips        : 3584.67
TLB size        : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp tm stc

processor       : 1
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 67
model name      : AMD Athlon(tm) 64 X2 Dual Core Processor 5000+
stepping        : 3
cpu MHz         : 1800.000
cache size      : 512 KB
physical id     : 0
siblings        : 2
core id         : 1
cpu cores       : 2
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy
bogomips        : 3584.67
TLB size        : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp tm stc

Die Lösung dieses Problemes fällt zumindest unter Novell/SuSE recht leicht:

# hwinfo --cpu
01: None 00.0: 10103 CPU                                        
  [Created at cpu.301]
  Unique ID: rdCR.j8NaKXDZtZ6
  Hardware Class: cpu
  Arch: X86-64
  Vendor: "AuthenticAMD"
  Model: 15.67.3 "AMD Athlon(tm) 64 X2 Dual Core Processor 5000+"
  Features: fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,mmx,fxsr,sse,sse2,ht,syscall,nx,mmxext,fxsr_opt,rdtscp,lm,3dnowext,3dnow,pni,cx16,lahf_lm,cmp_legacy,svm,extapic,cr8_legacy
  Clock: 1000 MHz
  BogoMips: 1991.48
  Cache: 512 kb
  Units/Processor: 2
  Config Status: cfg=new, avail=yes, need=no, active=unknown

02: None 01.0: 10103 CPU
  [Created at cpu.301]
  Unique ID: wkFv.j8NaKXDZtZ6
  Hardware Class: cpu
  Arch: X86-64
  Vendor: "AuthenticAMD"
  Model: 15.67.3 "AMD Athlon(tm) 64 X2 Dual Core Processor 5000+"
  Features: fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,mmx,fxsr,sse,sse2,ht,syscall,nx,mmxext,fxsr_opt,rdtscp,lm,3dnowext,3dnow,pni,cx16,lahf_lm,cmp_legacy,svm,extapic,cr8_legacy
  Clock: 1000 MHz
  BogoMips: 1991.48
  Cache: 512 kb
  Units/Processor: 2
  Config Status: cfg=new, avail=yes, need=no, active=unknown

An der Zeile Units/Processor: 2 erkennt man schön, dass jeder der beiden Kerne tatsächlich noch HT aktiviert hat!

Sollte jemand andere Möglichkeiten kennen, das zuverlässig heraus zu finden, bitte immer nur heraus damit!