Warum behauptet meine nicht für Hyperthreading aktivierte CPU, über Hyperthreading zu verfügen?

5

Ich habe meinen Prozessor auf das AESNI (Hardware-AES, "AES" -Flag) überprüft, als ich das "HT" -Flag entdeckte. Dies bedeutet, dass die CPU auf i7-Prozessoren Hyperthreading ausführen kann. Da ich jedoch einen i5-4690K besitze, sollte dies meines Erachtens nicht passieren.

Hier sind meine CPU-Flags, die mit / proc / cpuinfo gekennzeichnet sind

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 daran, dass die Prozessoren der Core-Serie fast alle identische Chips verwenden? Warum versenden sie mit fehlerhaften Flaggen?

Für weitere Erklärungen, hier ist meine 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
Azsgy
quelle
Welche CPU hast du? (Der 4690k ist ein i5, kein i7). Eine Katze machen / proc / cpuinfo | grep "model name" teilt Ihnen diese Information mit.
davidgo
@ Davidgo Ich fürchte, Sie haben gerade Ihre Frage beantwortet. Ich besitze, wie gesagt, einen i5-4690K.
Azsgy
Bitte beißen Sie nicht auf die Hand, die Sie füttert. Die Bearbeitung, die Sie zur gleichen Zeit vorgenommen haben, als Ihr Beitrag anzeigt, dass Sie zu diesem Zeitpunkt das "i5" hinzugefügt haben. Sie haben nicht angegeben, dass Sie einen I5-4690K besitzen. Sie haben über einen Prozessor der i7-Serie und eine 4690k-CPU gesprochen, was keinen Sinn ergibt.
davidgo

Antworten:

6

Das ht Das Flag gibt an, dass es die Hyper-Threading-Spezifikation unterstützt. Diese Spezifikation erfordert nicht, dass die CPU Hyper-Threading tatsächlich unterstützt, solange sie den Mechanismus der Spezifikation zur Meldung der Unfähigkeit unterstützt, Hyper-Threading tatsächlich zu unterstützen.

David Schwartz
quelle