Was sagt mir die Datei / proc / cpuinfo über die Hardware?

4

Ich miete einen Server, der "2 Cores x 2,2 GHz" haben soll. Führen Sie den Befehl aus cat /proc/cpuinfo Ich erhalte folgendes Ergebnis:

processor   : 0
vendor_id   : AuthenticAMD
cpu family  : 15
model       : 67
model name  : Dual-Core AMD Opteron(tm) Processor 1218 HE
stepping    : 3
cpu MHz     : 1000.000
cache size  : 1024 KB
physical id : 0
siblings    : 2
core id     : 0
cpu cores   : 2
apicid      : 0
initial apicid  : 0
fdiv_bug    : no
hlt_bug     : no
f00f_bug    : no
coma_bug    : no
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 extd_apicid pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy
bogomips    : 2009.48
clflush size    : 64
power management: ts fid vid ttp tm stc

processor   : 1
vendor_id   : AuthenticAMD
cpu family  : 15
model       : 67
model name  : Dual-Core AMD Opteron(tm) Processor 1218 HE
stepping    : 3
cpu MHz     : 1000.000
cache size  : 1024 KB
physical id : 0
siblings    : 2
core id     : 1
cpu cores   : 2
apicid      : 1
initial apicid  : 1
fdiv_bug    : no
hlt_bug     : no
f00f_bug    : no
coma_bug    : no
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 extd_apicid pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy
bogomips    : 2009.48
clflush size    : 64
power management: ts fid vid ttp tm stc

Dort steht 2 * 1000 MHz. Ich habe meinen Provider angerufen und sie sagten, dass die 2,2 GHz nicht angezeigt werden, aber sie sind installiert. Wie kann das sein?

Sven
quelle

Antworten:

4

Wie Bandito schrieb, die Informationen in /proc/cpuinfo ist in Echtzeit und wird aktualisiert, um die aktuell CPU-Frequenz. Die meisten modernen Systeme skalieren die CPU-Frequenz entsprechend dem aktuellen Bedarf. Auf Linux-Systemen wird dies vom "CPU Governor" gesteuert. Wenn dies auf "ondemand" eingestellt ist, wird die CPU-Frequenz in Reaktion auf die aktuelle Auslastung des Servers erhöht / verringert.

Mit diesem Befehl können Sie überprüfen, welcher Governor eingestellt ist:

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

Mögliche Optionen sind:

  • Performance
  • Energiespar
  • Benutzerraum
  • Auf Nachfrage
  • Konservativ

Sie können weitere Informationen zu jedem von ihnen finden Hier .

Um die tatsächlich für Ihre CPU verfügbare maximale Frequenz zu überprüfen, können Sie die verwenden cpufreq-info Programm falls installiert:

cpufreq-info | grep "available frequency steps"

Auf meinem System zeigt dies:

available frequency steps: 2.67 GHz, 2.67 GHz, 2.53 GHz, 2.40 GHz, 2.27 GHz, 2.13 GHz, 2.00 GHz, 1.87 GHz, 1.73 GHz, 1.60 GHz, 1.47 GHz, 1.33 GHz, 1.20 GHz

Sie können das von der Hardware festgelegte Frequenzlimit auch folgendermaßen anzeigen:

cat /sys/devices/system/cpu/cpu0/cpufreq/bios_limit 

Alternativ können Sie einen CPU-intensiven Prozess starten und überprüfen /proc/cpuinfo wieder, wenn alles in Ordnung ist, sollte die Frequenz jetzt anders sein.

terdon
quelle
Haben Sie ein Beispiel für einen einfach zu startenden CPU-intensiven Prozess? (z. B. eine mathematische Operation in dem Terminal, die eine Weile ausgeführt wird)
Sven
@Sven gibt es ein Programm namens stress das soll genau das tun. Es sollte sich in den Repositorys Ihrer Distribution befinden.
terdon
1

Das System ist möglicherweise so konfiguriert, dass die CPU-Geschwindigkeit abhängig von der Last skaliert wird. Wenn die CPU stark ausgelastet ist, sollte sie auf die maximale Geschwindigkeit ansteigen.

bandito
quelle