Finden Sie einen Core, der von der CPU-Auslastung verwendet wird?

504
user3198603

Ich habe durchschnittliche und maximale CPU-Auslastung (in Prozent) eines Linux-Servers bei mir. Auf dem Computer werden hauptsächlich einige Web-Apps bereitgestellt. Daraufhin muss ich entscheiden, welche AWS-Maschine zu mir passt. AWS bietet die Maschinenkalkulation basierend auf CPU-Kernen an.

Jetzt muss ich die durchschnittliche und maximale Auslastung der CPU aus der CPU-Auslastung ermitteln. Kann ich die Core-Auslastung aus der CPU-Auslastung anhand einer Formel ableiten? Wenn nicht, wie kann ich die durchschnittliche und maximale Auslastung des Linux-Servers über einen bestimmten Zeitraum ermitteln?

0
Sprichst du über die durchschnittliche Systemlast? Wie "w" und "uptime" bieten? Xen2050 vor 5 Jahren 0
Nein, ich spreche von der CPU-Auslastung und den über einen bestimmten Zeitraum auf dem Server verwendeten Kernen user3198603 vor 5 Jahren 0
Wenn diese Rohdaten vorliegen, mitteln Sie einfach die Werte, um den Durchschnitt zu erhalten, und suchen Sie nach dem höchsten Wert, um den Peak zu erhalten. Seth vor 5 Jahren 0
Randbemerkung: Die Preisberechnung für AWS EC2-Instanzen basiert auf der Anzahl der vCPUs und nicht auf der Kernzahl. Eine vCPU ist ein Hyperthread, kein physischer Kern. Die beiden sind nicht identisch, obwohl sie für Ihre Zwecke wahrscheinlich nahe genug sind. Michael - sqlbot vor 5 Jahren 0

2 Antworten auf die Frage

1
harrymc

Orte, an denen Sie die Kernnutzung finden können:

  • Der perf- Befehl könnte einige nützliche Zähler haben
  • Der topBefehl beim Tippen1
  • Das Dienstprogramm htop liefert visuelles Feedback
  • Der Befehl mpstat -P ALL 1bietet eine Anzeige, die sich jede Sekunde erneuert. Sie können die Ausgabe auch in eine Textdatei leiten und sie mit einem Dienstprogramm analysieren.
0
Xen2050

Sie können /proc/statDurchschnittswerte und Maximalwerte überwachen und beobachten. Diese Antwort enthält ein Bash-Skript für Ihre Inspiration, und Sie man procsollten folgendermaßen aussehen:

/proc/stat kernel/system statistics. Varies with architecture. Common entries include:  cpu 3357 0 4313 1362393 The amount of time, measured in units of USER_HZ (1/100ths of a second on most architectures, use sysconf(_SC_CLK_TCK) to obtain the right value), that the system spent in various states:  user (1) Time spent in user mode.  nice (2) Time spent in user mode with low priority (nice).  system (3) Time spent in system mode.  idle (4) Time spent in the idle task. This value should be USER_HZ times the second entry in the /proc/uptime pseudo-file.  iowait (since Linux 2.5.41) (5) Time waiting for I/O to complete.  irq (since Linux 2.6.0-test4) (6) Time servicing interrupts.  softirq (since Linux 2.6.0-test4) (7) Time servicing softirqs.  steal (since Linux 2.6.11) (8) Stolen time, which is the time spent in other operating systems when running in a virtualized envi‐ ronment  guest (since Linux 2.6.24) (9) Time spent running a virtual CPU for guest operat‐ ing systems under the control of the Linux kernel.  guest_nice (since Linux 2.6.33) (10) Time spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel). 

[Quelle: man& CPU-Last pro Kern in Shell-Skript abrufen ]