System 1: Notebook

System 1: Notebook

System 1: Notebook

Ermitteln der installierten CPU:

$ cat /proc/cpuinfo | grep "model name" | head -1
model name  : Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz

Im Datenblatt steht:

  • Anzahl der Kerne 2
  • Anzahl der Fäden 4

Kerne und Threads erkennen:

$ sudo dmidecode -t processor | grep -E '(Core Count|Thread Count)'
Core Count: 2
Thread Count: 4

Abschluss: Die Anzahl der Kerne und Threadspasstmit dem Datenblatt.

System 2: Desktop-PC

Ermitteln der installierten CPU:

$ cat /proc/cpuinfo | grep "model name" | head -1
model name  : Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz

Im Datenblatt steht:

  • Anzahl der Kerne 4
  • Anzahl der Fäden 8

Kerne und Threads erkennen:

$ sudo dmidecode -t processor | grep -E '(Core Count|Thread Count)'
Core Count: 4
Thread Count: 2

Abschluss: Die Anzahl der Kerne und Threadsnichtpasst zum Datenblatt.

Fragen

  • Wie lese ich die Intel-Datenblätter und die Ausgabe von dmidecode?
  • Wie viele Kerne habe ich?
  • Wie viele Threads hat jeder Kern?
  • Wie viele Threads hat das gesamte System?

[Bearbeiten] Update 1

Desktop-PC

$ lscpu | grep -i -E  "^CPU\(s\):|core|socket"
CPU(s):                8
Thread(s) per core:    2
Core(s) per socket:    4
Socket(s):             1

Von unten nach oben lesen:

  • Ich habe 1 Sockel mit 4 CPUs, jeder mit 2 Threads => insgesamt 8 Threads (CPUs)

Abschluss: Die Anzahl der Kerne und Threadspasstmit dem Datenblatt.

Notizbuch

$lscpu | grep -i -E  "^CPU\(s\):|core|socket"
CPU(s):                4
Thread(s) per core:    2
Core(s) per socket:    2
Socket(s):             1

Von unten nach oben lesen:

  • Ich habe 1 Sockel mit 2 CPUs, jeder mit 2 Threads => insgesamt 4 Threads (CPUs)

Abschluss: Die Anzahl der Kerne und Threadspasstmit dem Datenblatt.

[BEARBEITEN] Update 2

$ sudo dmidecode -t processor
# dmidecode 2.12
SMBIOS 2.7 present.

Handle 0x0041, DMI type 4, 42 bytes
Processor Information
    Socket Designation: SOCKET 0
    Type: Central Processor
    Family: Core i7
    Manufacturer: Intel
    ID: C3 06 03 00 FF FB EB BF
    Signature: Type 0, Family 6, Model 60, Stepping 3
    Flags:
        FPU (Floating-point unit on-chip)
        VME (Virtual mode extension)
        DE (Debugging extension)
        PSE (Page size extension)
        TSC (Time stamp counter)
        MSR (Model specific registers)
        PAE (Physical address extension)
        MCE (Machine check exception)
        CX8 (CMPXCHG8 instruction supported)
        APIC (On-chip APIC hardware supported)
        SEP (Fast system call)
        MTRR (Memory type range registers)
        PGE (Page global enable)
        MCA (Machine check architecture)
        CMOV (Conditional move instruction supported)
        PAT (Page attribute table)
        PSE-36 (36-bit page size extension)
        CLFSH (CLFLUSH instruction supported)
        DS (Debug store)
        ACPI (ACPI supported)
        MMX (MMX technology supported)
        FXSR (FXSAVE and FXSTOR instructions supported)
        SSE (Streaming SIMD extensions)
        SSE2 (Streaming SIMD extensions 2)
        SS (Self-snoop)
        HTT (Multi-threading)
        TM (Thermal monitor supported)
        PBE (Pending break enabled)
    Version: Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz
    Voltage: 1.1 V
    External Clock: 100 MHz
    Max Speed: 7000 MHz
    Current Speed: 3700 MHz
    Status: Populated, Enabled
    Upgrade: Other
    L1 Cache Handle: 0x0004
    L2 Cache Handle: 0x0005
    L3 Cache Handle: 0x0006
    Serial Number: Not Specified
    Asset Tag: Fill By OEM
    Part Number: Fill By OEM
    Core Count: 4
    Core Enabled: 1
    Thread Count: 2
    Characteristics:
        64-bit capable

Antwort1

  • Beachten Sie immer das Datenblatt
  • Ich hatte dieselbe CPU (die K-Version, manchmal übertakte ich die CPU in meiner Freizeit) und Sie haben 4 Kerne und 8 Threads, 100 % garantiert.
  • Normalerweise hat jeder Kern zwei Threads.
  • Ich kannte dmidecode vor heute nicht :/

Das habe ich Ihnen als Kommentar zu Ihrer Frage geschrieben. Ich habe Ihnen auch einen Link geschickt und freue mich, dass Sie das Problem mit den Anweisungen auf dieser Seite gelöst haben.

Das ist die Verbindung: http://fibrevillage.com/sysadmin/155-how-to-tell-if-cpu-hyperthreading-enabled-on-linux

Ich habe das gelesen

Hinweis: Auf alten Rechnern liefert Ihnen dmidecode möglicherweise keine detaillierten CPU-Informationen wie etwa die Anzahl der Kerne, die Anzahl der Threads usw.

aber die 4770 ist nicht so alt, es ist immer noch eine großartige CPU.

Wie dem auch sei, es gibt andere Lösungen und ich freue mich, dass eine davon für Sie funktioniert hat!

Im Einzelnen: lscpu | grep -i -E "^CPU\(s\):|core|socket"

Natürlich nehme ich dafür keine Anerkennung entgegen! Ich glaube, es ist einfach besser, die Antwort zu schreiben und sie zu schließen, wenn Sie glauben, dass Sie das Problem gelöst haben!

Antwort2

Zunächst einmal bedeutet aktiviertes HTT, dass es zwei Threads pro Kern gibt.

Nun, was die dmidecodeAusgabe betrifft, stimmt etwas nicht, da dort, wie von Ihnen anfangs zitiert, 4 Kerne und 2 Threads als Ausgabe aufgeführt sind.

Ihr gesamter dmidecodeOutput deutet jedoch auf etwas hin, daskönnteSinn ergeben.

Core Count: 4
Core Enabled: 1
Thread Count: 2

Warum wird nun angezeigt, dass nur 1 Kern aktiviert ist? Ich sehe zwei Hauptoptionen:

  • nur ein Kern ist aktiviert (die offensichtlichste Ursache)
    Überprüfen Sie möglicherweise, ob tatsächlich alle Kerne aktiviert sind (UEFI-/BIOS-Setup-Einstellung), aber die Ergebnisse anderer Tools deuten darauf hin, dass die Kerne aktiviert sind.
  • etwas stimmt nicht mit den DMI-Daten Ihres Systems

Die dmidecodeAusgabe basiert, wie der Name des Tools schon sagt, auf dem Lesen und Dekodieren von System-DMI-Daten. Daher ist es sehr wahrscheinlich, dass fehlerhafte Daten nicht durch das dmidecodeTool selbst verursacht werden, sondern durch die DMI-/SMBIOS-Tabellen Ihres Systems, die falsche Werte enthalten.

Was das Datenblatt betrifft, ist es im Hinblick auf die Fähigkeiten des Chips selbst vertrauenswürdig, es beantwortet jedoch möglicherweise eine etwas andere Frage als das, was in Ihrer Umgebung verfügbar ist (da es Konfigurationsoptionen gibt, mit denen einige der Funktionen aktiviert/deaktiviert werden können).

verwandte Informationen