LSCPU(1)

BEZEICHNUNG
lscpu - Informationen zur Prozessorarchitektur anzeigen

ÜBERSICHT

lscpu [Optionen]

BESCHREIBUNG

lscpu beschafft Informationen zur CPU-Architektur aus sysfs, /proc/cpuinfo und jeder anwendbaren architekturspezifischen Bibliothek (z.B. librtas auf PowerPC). Die Ausgabe des Befehls kann entweder für maschinelle Auswertung oder für bessere Lesbarkeit für den Benutzer optimiert werden. Die Informationen beinhalten beispielsweise die Anzahl der CPUs, Threads, Kerne, Sockel und »Non-Uniform Memory Access« (NUMA-)Knoten. Außerdem werden Informationen zu CPU-Caches und deren gemeinsamer Nutzung, Prozessorfamilie und -modell, bogoMIPS, Bytereihenfolge, Stepping und Microcode-Version bereitgestellt.

Die standardmäßige Ausgabeformatierung auf dem Terminal ist ist Änderungen unterworfen und wird möglicherweise für bessere Lesbarkeit optimiert. Die Ausgabe für Nicht-Terminals (beispielsweise Pipes) ist von dieser Optimierung niemals betroffen und erfolgt immer im Format »Feld: Daten\n«. Sie können beispielsweise mit »lscpu | less« die standardmäßige Ausgabe ohne Optimierungen ansehen.

In virtualisierten Umgebungen gibt die angezeigte CPU-Architektur die Konfiguration des Gäste-Betriebssystems wider, die sich typischerweise von der des physischen (Wirts-)Systems unterscheidet. Auf Architekturen, die die Ermittlung der physischen Topologieinformation unterstützen, zeigt lscpu auch die Anzahl der physischen Sockel, Chips, Kerne des Wirtsystems an.

Optionen, die eine Ausgabetabelle erzeugen, akzeptieren eine Liste als optionales Argument.Diese Liste ist eine durch Kommata getrennte Liste von Spaltenbezeichnungen, um die Tabelle auf die angegebenen Spalten in der angegebenen Reihenfolge zu beschränken. Mit --help können Sie eine Liste gültiger Spaltenbezeichnungen anzeigen. Die Groß-/Kleinschreibung wird nicht beachtet. Nicht alle Spalten werden auf allen Architekturen unterstützt. Wenn eine nicht unterstützte Spalte angegeben wird, gibt lscpu die Spalte zwar aus, stellt aber keine Daten dafür bereit.

Die Cache-Größen werden als Zusammenfassung aller CPUs gemeldet. In den Versionen vor 2.34 wurden die Größen auf den Kern bezogen, aber diese Ausgabe war aufgrund der komplizierten CPU-Topologie und wie Cache von den CPUs gemeinsam genutzt wird, verwirrend. Für weitere Details zu Caches, siehe --cache. Seit Version 2.37 folgt lscpu den Cache-Kennungen, wie sie vom Kernel bereitgestellt werden und startet nicht immer von 0.

OPTIONEN

-a, --all
    bezieht sowohl Online- als auch Offline-CPUs in die Ausgabe ein (Voreinstellung für -e). Diese Option darf nur zusammen mit -e oder -p angegeben werden.

-B, --bytes
    gibt die Größe in Byte anstelle eines menschenlesbaren Formats aus.

    Standardmäßig werden Größen in Einheiten angezeigt, die Potenzen von 1024 Bytes sind. Die formalen Abkürzungen für diese Einheiten (KiB, MiB, GiB usw.) werden weiter auf den Anfangsbuchstaben verkürzt: K, M, G usw.

-b, --online
    begrenzt die Ausgabe auf Offline-CPUs (Vorgabe für -p). Diese Option darf nur zusammen mit -e oder -p angegeben werden.

-C, --caches[=Liste]
    zeigt Details zu CPU-Caches an. Für Details zu den verfügbaren Informationen siehe die Ausgabe von --list-columns.

    Wenn das Argument Liste nicht angegeben ist, werden alle Spalten in der Ausgabe angezeigt, für die Daten verfügbar sind.

    Wenn das Liste-Argument verwendet wird, dürfen zwischen Optionszeichenkette, Gleichheitszeichen und Liste keine Leerzeichen oder sonstigen Freiräume eingefügt werden. Beispiele: -C=NAME,ONE-SIZE oder --caches=NAME,ONE-SIZE.

    Sie können die vorgegebene Spaltenliste erweitern, wenn Sie die Liste im Format +Liste angeben (zum Beispiel lscpu -C=+ALLOC-POLICY).

-c, --offline
    begrenzt die Ausgabe auf Offline-CPUs. Diese Option darf nur zusammen mit -e oder -p angegeben werden.

-e, --extended[=Liste]
    gibt die Prozessorinformation in einem menschenlesbaren Format aus.

    Wenn das Argument Liste nicht angegeben ist, werden die Standardspalten in der Ausgabe angezeigt. Die standardmäßig angezeigten Spalten sind möglicherweise Änderungen unterworfen.

    Wenn das Liste-Argument verwendet wird, dürfen zwischen Optionszeichenkette, Gleichheitszeichen (=) und Liste keine Leerzeichen oder sonstigen Freiräume eingefügt werden. Beispiele: -e=cpu,node oder --extended=cpu,node.

    Sie können die vorgegebene Spaltenliste erweitern, wenn Sie die Liste im Format +Liste angeben (zum Beispiel lscpu -e=+MHZ).

-H, --list-columns
    listet die Spalten auf, die mit den Optionen --extended, --parse und --caches angegeben werden können.Kann zusammen mit --json oder --raw verwendet werden, um die Liste in einem maschinenlesbaren Format zu erhalten.

--hierarchic[=wann]
    Verwenden Sie Unterabschnitte in der Zusammenfassungsausgabe". Aus Gründen der Abwärtskompatibilität werden Unterabschnitte standardmäßig nur bei der Ausgabe auf einem Terminal und die »abgeflachte« Ausgabe auf einem Nicht-Terminal verwendet. Das optionale Argument when kann never, always oder auto sein. Wird das Argument wann weggelassen, wird standardmäßig always verwendet.

-J, --json
    verwendet das JSON-Ausgabeformat für die Standardzusammenfassung oder die erweiterte Ausgabe (siehe --extended). Zwecks Abwärtskompatibilität folgt die JSON-Ausgabe dem Verhalten der Standardzusammenfassung für Nicht-Terminals (zum Beispiel Pipes), wobei Unterabschnitte fehlen. Siehe auch --hierarchic.

--output-all
    gibt alle verfügbaren Spalten aus. Diese Option muss entweder mit --extended, --parse oder --caches kombiniert werden.

-p, --parse[=Liste]
    optimiert die Befehlsausgabe für die maschinelle Auswertung.

    Falls das Argument Liste nicht angegeben ist, dann geschieht die Ausgabe abwärtskompatibel zu früheren Versionen von lscpu. Dieses abwärtskompatible Format verwendet zwei Kommata zum Trennen der Spalten für den CPU-Cache. Falls keine CPU-Caches erkannt werden, wird die Cache-Spalte gar nicht angezeigt. Wenn das Liste-Argument verwendet wird, werden die Cache-Spalten mit einem Doppelpunkt (:) getrennt.

    Wenn das Liste-Argument verwendet wird, dürfen zwischen Optionszeichenkette, Gleichheitszeichen und Liste keine Leerzeichen oder sonstigen Freiräume eingefügt werden. Beispiele: -p=cpu,online,mhz or --parse=cpu,online,mhz.

    Sie können die vorgegebene Spaltenliste erweitern, wenn Sie die Liste im Format +Liste angeben (zum Beispiel lscpu -p=+MHZ).

-r, --raw
    gibt im Rohformat aus. Diese Option ist nur für die Ausgabe mit --extended, --parse oder --caches anwendbar.

-s, --sysroot Verzeichnis
    beschafft Daten für eine fremde Linux-Instanz, nicht jene, auf der der Befehl lscpu aufgerufen wird. Das angegebene Verzeichnis ist die Dateisystemwurzel der zu untersuchenden Linux-Instanz.

-x, --hex
    verwendet die Hexadezimalschreibweise für CPU-Sätze, z.B. »ff«. Per Vorgabe wird die Listenschreibweise verwendet (z.B. 0,1). Beachten Sie, das vor Version 2.30 die Maske mit dem Präfix 0x ausgegeben wurde.

-y, --physical
    zeigt die physischen Kennungen für alle Spalten mit Topologieelementen (Kern, Sockel usw.) an. Anders als logische Kennungen, die von lscpu zugewiesen werden, sind physische Kennungen plattformabhängige Werte, die vom Kernel bereitgestellt werden. Physische Kennungen sind nicht notwendigerweise eindeutig und sie müssen nicht sequenziell angeordnet sein. Falls der Kernel keine physische ID für ein Element ermitteln konnte, gibt lscpu einen Bindestrich (-) aus.

    Die logischen CPU-Nummern werden von dieser Option nicht beeinflusst.

--arm-id[=Liste]
    gibt eine Liste der bekannten ARM-Core-Implementierer und ihrer lesbaren Namen aus.

    Wird ein Argument angegeben, dann wird eine Liste der einzelnen Core-IDs und ihrer Namen für den angegebenen Implementierer ausgegeben.

--arm-model ID
    gibt den Namen dieses spezifischen Kernmodells aus. Dazu muss --arm-id=ID angegeben werden, um auch die Implementierungs-ID anzugeben.

--annotate[=wann]
    fügt zu jedem Spaltenkopf eine Anmerkung hinzu. Diese Anmerkung kann von Terminals, die diese Funktion unterstützen, als Minihilfe angezeigt werden. Das optionale Argument when kann always, never oder auto sein. Wird das Argument weggelassen, wird standardmäßig auto verwendet, d.h. Anmerkungen werden nur dann verwendet, wenn die Ausgabe an ein Terminal gesendet wird.

-h, --help
    zeigt einen Hilfetext an und beendet das Programm.

-V, --version
    zeigt Versionsinformationen an und beendet das Programm.

UMGEBUNGSVARIABLEN

LSCPU_COLUMNS=
    gibt eine durch Kommas getrennte Liste der auszugebenden Spalten an. Alle durch --list-columns für die Optionen -e und -p aufgeführten Spalten können verwendet werden.

LSCPU_CACHES_COLUMNS=
    ist ähnlich wie LSCPU_COLUMNS, mit dem Unterschied, dass lediglich Spalten verwendet werden können, die für die Option -C aufgelistet werden.

LIBSMARTCOLS_DEBUG=all
    aktiviert die Debug-Ausgabe für libsmartcols.

LIBSMARTCOLS_DEBUG_PADDING=on
    verwendet sichtbare Auffüllzeichen.

SPALTEN

Eine Liste der gültigen Spaltenbezeichnungen kann mit der Option --list-columns angezeigt werden.

ANMERKUNGEN

Die standardmäßige Ausgabe kann sich ändern. Daher sollten Sie vermeiden, standardmäßige Ausgaben in Ihren Skripten zu verwenden, wo immer es möglich ist.

FEHLER

Die grundlegende Übersicht der CPU-Modelle ist heuristisch basiert, wobei Unterschiede wie CPU-Modellnamen und Anbieter-IDs berücksichtigt werden. In einigen (eher unüblichen) Fällen können sich CPUs in Flags oder BogoMIPS unterscheiden, aber diese Unterschiede werden in der lscpu-Übersicht ignoriert.

Gelegentlich liefert der Kernel in Xen Dom0 falsche Daten.

Auf virtueller Hardware kann die Anzahl der Kerne pro Sockel usw. falsch sein.

AUTOREN

SIEHE AUCH

chcpu(8)

FEHLER MELDEN

Nutzen Sie zum Melden von Fehlern das

VERFÜGBARKEIT

Der Befehl lscpu ist Teil des Pakets util-linux, welches aus dem heruntergeladen werden kann.