lscpu

Aus Foxwiki

lscpu - Informationen zur Prozessorarchitektur anzeigen

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 und Stepping bereitgestellt.

Die standardmäßige Ausgabeformatierung auf dem Terminal ist Änderungen unterworfen und möglicherweise für bessere Lesbarkeit optimiert.

  • Die Ausgabe für Nicht-Terminals (z. B. 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, deren Ausgabe in Tabellenform dargestellt wird, haben ein Liste-Argument.

  • Verwenden Sie dieses Argument zum Anpassen der Ausgabe an Ihre Erfordernisse.
  • Geben Sie eine durch Kommata getrennte Liste von Spaltenüberschriften in der gewünschten Reihenfolge an, um die Ausgabe auf bestimmte Spalten zu beschränken.
  • In SPALTEN finden Sie eine Liste der verfügbaren Spaltenüberschriften (für die Groß- oder Kleinschreibung nicht beachtet wird).

Nicht alle Spalten werden auf allen Architekturen unterstützt.

  • Wenn eine solche Spalte angegeben wird, zeigt lscpu diese an, stellt aber keine Daten zur Verfügung.

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.

Installation

lscpu ist Teil des Pakets util-linux

Aufruf

lscpu [Optionen]

Optionen

Unix GNU Parameter Beschreibung
-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ößen in Byte anstelle eines menschenlesbaren Formats aus. Standardmäßig werden die Größen in Byte ausgedrückt und die Präfixe sind Potenzen der Form 2^10 (1024). Die Abkürzungen der Symbole werden zur besseren Lesbarkeit abgeschnitten, indem jeweils nur der erste Buchstabe dargestellt wird. Beispiele: »1 KiB« und »1 MiB« werden als »1 K« bzw. »1 M« dargestellt. Die Erwähnung des »iB«-Anteils, der Teil der Abkürzung ist, entfällt absichtlich.
-b --online begrenzt die Ausgabe auf Online-CPUs (Voreinstellung 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 --help. Wenn das Argument Liste nicht angegeben ist, werden alle Spalten in der Ausgabe angezeigt, für die Daten verfügbar sind. Beachten Sie, dass das optionale Liste-Argument nicht durch Leerzeichen vom Gleichheitszeichen (=) und das Gleichheitszeichen auch nicht durch Leerzeichen von der Option getrennt werden darf. Beispiele: »-C=NAME,GRÖSSE« oder »--caches=NAME,GRÖSSE«. Die voreingestellte Liste der Spalten kann erweitert werden, indem Sie die Liste im Format +Liste angeben (beispielsweise 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 Vorgabe-Spalten in die Befehlsausgabe aufgenommen. Die standardmäßige Ausgabe kann sich ändern. 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«. Die voreingestellte Liste der Spalten kann erweitert werden, indem Sie die Liste im Format +Liste angeben (beispielsweise lscpu -e=+MHZ).
-J --json verwendet das JSON-Ausgabeformat für die Standardzusammenfassung oder erweiterte Ausgabe (siehe --extended).
-p --parse [=Liste] optimiert die Befehlsausgabe für die maschinelle Auswertung. Falls das Argument Liste nicht angegeben ist, dann geschieht die Ausgabe in standardmäßiger abwärtskompatibler Form. 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. Beachten Sie, dass das optionale Liste-Argument nicht durch Leerzeichen von der Option getrennt werden darf. Die korrekte Form wäre beispielsweise »-p=cpu,node« oder »--parse=cpu,node«. Die voreingestellte Liste der Spalten kann erweitert werden, indem Sie die Liste im Format +Liste angeben (beispielsweise lscpu -p=+MHZ).
-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 ein Bindestrichzeichen (-) aus. Die logischen CPU-Nummern werden von dieser Option nicht beeinflusst.
--output-all gibt alle verfügbaren Spalten aus. Diese Option muss entweder mit --extended, --parse oder --caches kombiniert werden.

Parameter

Umgebungsvariablen

Exit-Status

Anwendung

Problembehebung

Die allgemeine Übersicht über CPU-Familie, Modell usw. basiert stets auf der ersten CPU

  • Gelegentlich liefert der Kernel in Xen Dom0 falsche Daten
  • Auf virtueller Hardware kann die Anzahl der Kerne pro Sockel usw. falsch sein

Konfiguration

Dateien

Anhang

Siehe auch

Dokumentation

Man-Page
Info-Pages

Links

Projekt
Weblinks