CPU-Threads werden nicht verwendet

518
Jason Desrosiers

Ich habe vor kurzem ein neues Thinkpad T570 bekommen. Ich verwende Fedora 27. Es hat einen i7-7600U-Prozessor, der laut Intel 2 Kerne und 4 Threads aufweisen sollte ( https://ark.intel.com/products/97466/Intel-Core-i7-7600U-Processor- 4M-Cache-up-to-3_90-GHz ). Wenn ich lscpu betreibe, werden jedoch 2 Kerne und 2 Threads angezeigt.

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: 2 Core(s) per socket: 2 Socket(s): 1 NUMA node(s): 1 Vendor ID: GenuineIntel CPU family: 6 Model: 142 Model name: Intel(R) Core(TM) i7-7600U CPU @ 2.80GHz Stepping: 9 CPU MHz: 2900.000 CPU max MHz: 3900.0000 CPU min MHz: 400.0000 BogoMIPS: 5808.00 Virtualization: VT-x L1d cache: 32K L1i cache: 32K L2 cache: 256K L3 cache: 4096K NUMA node0 CPU(s): 0-3 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 tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti intel_pt tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx rdseed adx smap clflushopt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp 

Was ist mit den anderen beiden Threads passiert? Gibt es etwas, was ich tun kann, um diese zusätzlichen Threads zu aktivieren?

1
Woher bekommst du "2 Kerne und 2 Fäden"? Es sagt "4" CPUs. Es sagt auch "2" Fäden pro Kern und "2" Kerne pro Sockel. (Gewinde pro Kern) x (Kerne pro Sockel) = (Gewinde pro Sockel). 2 x 2 = 4. Bob vor 6 Jahren 2
Das ist richtig. Vielleicht war meine Formulierung verwirrend. Das Problem ist, dass die Spezifikation (siehe Link) sagt, * sollte * 2 Kerne und 4 Threads pro Kern haben. 2x4 = 8. Es sollte 8 CPUs sagen. Jason Desrosiers vor 6 Jahren 0
Nee. Die Intel-Spezifikation listet die Gesamtzahl der Threads auf dem Chip auf. Keine Fäden pro Kern. Bob vor 6 Jahren 0
Bob, wenn sie nicht die Art und Weise verändert haben, in der sie die letzten 8 Jahre Dinge getan haben, ist das nicht richtig. Ich hatte in dieser Zeit zwei Computer, die 8 CPUs gemeldet haben, wenn Intel angibt, dass es zwei Kerne und vier Threads hat. Jason Desrosiers vor 6 Jahren 0
Ein einfacher Test der Vernunft besteht darin, dass es keine x86-Mainstream-CPU gibt, die mehr als 2 Threads pro Kern hat, geschweige denn auf einem Laptop. Es sei denn, Sie rocken einen 6000-Dollar-Xeon-Phi mit 72 Kernen in diesem Laptop. Bob vor 6 Jahren 0
Meinen Sie damit, dass [meine CPU] (https://ark.intel.com/products/97129/Intel-Core-i7-7700K-Prozessor-8M-Cache-up-to-4_50-GHz) über 32 Hardware verfügt Fäden Bob vor 6 Jahren 0
@ Bob ist richtig. Hyperthreading umfasst zwei Threads pro Kern. War schon immer. n8te vor 6 Jahren 0
OK, ich glaube dir. Ich werde versuchen herauszufinden, welche Prozessoren ich auf diesen beiden Maschinen hatte, die 8 CPUs gemeldet haben. Es war möglich, dass sie 4 Kerne x 2 Threads hatten, aber ich glaube nicht, dass sie Quad Core-Laptop-Prozessoren erst vor acht Jahren gemacht haben. Jason Desrosiers vor 6 Jahren 0
Warte was? Quad-Core-Laptop-Prozessoren gibt es bereits seit 2 Tagen im Kern (https://ark.intel.com/products/40480/Intel-Core2-Quad-Processor-Q9000-6M-Cache-2_00-GHz) -1066-MHz-FSB) und mobile 4C / 8T-Prozessoren [gibt es seit * Nehalem *] (https://ark.intel.com/products/43124/Intel-Core-i7-820QM-Processor-8M-Cache -1_73-GHz). bwDraco vor 6 Jahren 0
Wenn Sie möchten, ist [hier] (https://superuser.com/questions/225915/how-do-i-read-intel-cpu-specs) eine Frage von vor 8 Jahren, in der die Antworten die Spezifikationen in derselben Hinsicht erklären So haben wir hier. [4-Core- / 8-Thread-Mobil-CPUs] (https://ark.intel.com/products/43125/Intel-Core-i7-840QM-Processor-8M-Cache-1_86-GHz) waren, wenn etwas, das noch üblicher war als damals, bevor all das Low-Power-ULV-Material populär wurde. Bob vor 6 Jahren 0
https://ark.intel.com/products/53464/Intel-Core-i7-2640M-Processor-4M-Cache-up-to-3_50-GHz Hier ist der Prozessor auf einem dieser alten Maschinen. Die Angaben sagen 2 Kerne und 4 Fäden genau wie dieser. Ich habe das seit Jahren mit 8 logischen Kernen verwendet. (Es ist jetzt eine Hand, die ich herunterlasse und Windows laufen lasse, so dass ich lscpu nicht darauf ausführen kann). Jason Desrosiers vor 6 Jahren 0
Dann haben Sie entweder falsch gedacht oder hatten eine fehlerhafte Linux-Distribution, die die Anzahl der logischen Prozessoren falsch interpretierte. bwDraco vor 6 Jahren 0
Ich habe Fedora auf beiden Maschinen mit Standardeinstellungen ausgeführt. Der Systemmonitor schien auf allen 8 Kernen eine einzigartige Aktivität zu zeigen. Ich bezweifle nicht, dass Sie recht haben, aber etwas stimmt nicht zusammen. Jason Desrosiers vor 6 Jahren 0

1 Antwort auf die Frage

2
bwDraco

Ihr System verfügt über 4 logische Prozessoren:

CPU(s): 4 

Dies ist das Ergebnis von 2 Prozessorkernen mit jeweils 2 Hardwarethreads von Intel Hyper-Threading Technology :

Thread(s) per core: 2 Core(s) per socket: 2 

Die Anzahl der Threads, die auf der Seite Intel ARK aufgeführt sind, ist die Gesamtanzahl der Hardwarethreads, die der Prozessor hat. Der angegebene Wert lscpuist die Anzahl der Threads pro Kern .

Kurz gesagt, Ihr System wird alle Threads auf dem physischen Prozessor zu sehen.

"Ein Thread oder ein Thread der Ausführung ist ein Softwarebegriff für die geordnete Reihenfolge von Anweisungen, die von einem einzelnen CPU-Kern durchlaufen oder verarbeitet werden kann." - Die Spezifikationen für Ihre CPU geben an, dass Ihr Prozessor 4 Threads ausführen kann. Ihr Prozessor verfügt auch über 2 Kerne. Bei zwei dieser Kerne handelt es sich um einen virtuellen Kern (dh Intel® Hyper-Threading-Technologie). Ich sehe, ich sage dasselbe auf eine andere Weise. Ramhound vor 6 Jahren 0
Ich habe diese Beschreibung auch gelesen, aber ich habe sie anders interpretiert. Für mich klingt das so, als würden sie einen "einzelnen CPU-Kern" beschreiben. Ich erwarte dann, dass sich die Zahl neben "Threads" auf einen "einzelnen CPU-Kern" bezieht und ich sollte Threads und Cores multiplizieren, um die Anzahl der logischen CPUs zu erhalten. Basierend auf dem, was meine Maschinen seit Jahren melden, schien diese Interpretation bestätigt zu sein. Jason Desrosiers vor 6 Jahren 0
Sie haben mich überzeugt, dass das, was ich seit Jahren sah, das Ergebnis einer Art Fehler war. Ich bin immer noch neugierig, wie es schien, 8 logische CPUs zu verwenden, als angeblich nur 4 möglich waren, aber für jetzt halte ich dies für gelöst. Danke für Ihre Hilfe und Ihre Geduld. Jason Desrosiers vor 6 Jahren 0