Frage Warum aktiviert mein nicht-Hyperthreading CPU CPU-Hyperthreading?


Ich habe meinen Prozessor auf die Aesni (Hardware AES, "AES" -Flagge) überprüft, als ich die "HT" -Flagge entdeckte. Dies bedeutet auf i7-Prozessoren, dass die CPU Hyperthreading ausführen kann. Da ich jedoch einen i5-4690K besitze, ist dies meines Wissens nach nicht der Fall.

Hier sind meine CPU-Flags, wie von / proc / cpuinfo angegeben

flags       : fpu vme de pse tsc msr pae mce
cx8 apic sep mtrr pge mca cmov pat pse36 clflush
dts acpi mmx fxsr sse sse2 ss ht    <--------------- Hyperthreading flag
tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc
arch_perfmon pebs bts rep_good nopl xtopology
nonstop_tsc aperfmperf eagerfpu pni pclmulqdq
dtes64 monitor ds_cpl vmx est tm2 ssse3 fma cx16
xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt
tsc_deadline_timer aes xsave avx f16c rdrand
lahf_lm abm arat xsaveopt pln pts dtherm
tpr_shadow vnmi flexpriority ept vpid fsgsbase
tsc_adjust bmi1 avx2 smep bmi2 erms invpcid

Warum passiert das? Liegt das vielleicht an den Prozessoren der Core-Serie, die alle ziemlich identische Chips teilen? Warum werden sie mit fehlerhaften Flaggen ausgeliefert?

Für mehr Erklärung, hier ist mein lscpu Ausgabe

Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                4
On-line CPU(s) list:   0-3
Thread(s) per core:    1
Core(s) per socket:    4
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 60
Model name:            Intel(R) Core(TM) i5-4690K CPU @ 3.50GHz
Stepping:              3
CPU MHz:               3500.136
CPU max MHz:           3900.0000
CPU min MHz:           800.0000
BogoMIPS:              6999.62
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              6144K
NUMA node0 CPU(s):     0-3

5
2018-01-31 22:33


Ursprung


Welche CPU hast du? (Das 4690k ist ein i5, kein i7). Eine Katze machen / proc / cpuinfo | grep "Modellname" wird Ihnen diese Information mitteilen. - davidgo
@davidgo Ich fürchte, du hast gerade deine Frage beantwortet. Ich besitze, wie gesagt, einen i5-4690K. - Azsgy
Bitte "nicht die Hand beissen, die dich füttert" Die Bearbeitung, die du ungefähr zur gleichen Zeit wie dein Post gemacht hast, zeigt, dass du an dieser Stelle das "i5" hinzugefügt hast. IE, du hast nicht gesagt, dass du eine I5-4690K besitzt, du hast über einen i7-Prozessor und eine 4690k-CPU gesprochen, was keinen Sinn ergibt - also eine Klarstellung war vernünftig. - davidgo


Antworten:


Das ht Flag zeigt an, dass es die Hyper-Threading-Spezifikation unterstützt. Diese Spezifikation erfordert nicht, dass die CPU tatsächlich Hyper-Threading unterstützt, solange sie den Mechanismus der Spezifikation unterstützt, um zu melden, dass das tatsächliche Hyper-Threading nicht unterstützt werden kann.


6
2018-02-01 00:15