Sollte ich Hyperthreading in einer Intel-CPU deaktivieren?

3834
Rigel

Ich habe einen Laptop mit Intel i5 M430 2.27GHz. Die CPU verfügt über ZWEI REAL-Kerne, jedoch auch über eine Art Virtualisierung, die von Windows als 4-Core-Prozessor bezeichnet wird.

In einer REAL-Dual-Core-CPU wird ein einzelnes Threaded-Programm mit 2,27 GHz in einem einzelnen Kern ausgeführt. Recht?

Meine Frage ist, in meiner 4-Kern-CPU läuft das gleiche Programm mit einer Geschwindigkeit von 1,13 GHz? (2.27 / 2) Ich meine, die Frequenz jedes realen Kerns ist zweigeteilt, um eine 4-Kern-CPU zu simulieren.

Ich muss wissen, um ein CPU-hungriges Programm mit maximaler Geschwindigkeit auszuführen. Wenn ich zwei Instanzen dieses Programms ausführe, werde ich meine Datenverarbeitung zwei Mal schneller beenden, da ich zwei echte Kerne habe. Wenn ich jedoch 4 Instanzen starte, werde ich die Verarbeitung viermal schneller beenden, oder handelt es sich bei diesem 'zwei zusätzlichen virtuellen Kernen' um ein weiteres Augenmerk auf Intel?


Aktualisieren:

Ich habe CPU Overload verwendet, um 2 und 3 sehr CPU-intensive Threads zu starten. Im Ressourcenmonitor zeigt die Grafik "CPU-Total" nur eine Auslastung von 50% bzw. 75%.

8

2 Antworten auf die Frage

21
Michael K

Sie haben eine CPU mit Hyperthreading-Technologie . Sie können dies nicht ändern, aber machen Sie sich keine Sorgen, Sie haben keinen Leistungsverlust. tatsächlich erhöht es die Leistung Ihres Systems.

Beachten Sie, dass der CPU-Takt nicht der CPU-Leistung entspricht. Die Uhr ist für zwei Threads nicht durch zwei geteilt.

Update / Fazit: Wie schon in den Kommentaren erwähnt, ist es in einigen (den meisten?) BIOSs möglich, das Hyperthreading auszuschalten. Dies bringt jedoch keine Leistungsverbesserungen, da das Thread-Management von Intels intelligent genug ist, um nur so viel wie nötig zu verwenden.

Sie können Hyperthreading im BIOS deaktivieren, wenn Sie dies benötigen. In den meisten Situationen hat Hyperthreading jedoch einen Leistungsvorteil. Journeyman Geek vor 13 Jahren 11
Laut Intel wird die Leistung durch Hyperthreading um bis zu 30% gesteigert. Ich wusste nicht, dass Sie es tatsächlich ausschalten können, die meisten BIOS scheinen diese Option nicht zu haben. Michael K vor 13 Jahren 2
viele Biosen sind vermutlich verkrüppelt, es sollte auf den meisten anständigen möglich sein; p Journeyman Geek vor 13 Jahren 0
"Auch der CPU-Takt entspricht nicht der CPU-Leistung" - - - das weiß ich. Rigel vor 13 Jahren 0
"Tatsächlich erhöht es Ihre Systemleistung" - - - das weiß ich auch. Ich bin aber an maximaler Leistung für ein einzelnes / spezifisches Programm interessiert. Rigel vor 13 Jahren 0
"Die Uhr ist für zwei Threads nicht durch zwei geteilt" - - - dann sind diese zusätzlichen 2 Kerne zu 100% unbrauchbar. Woher hast du CPU-Zyklen, um sie anzutreiben? Beispiel: Wenn Sie zwei Programme in den realen Kernen und dann zwei weitere Programme in den virtuellen Kernen starten, werden die Programme in den virtuellen Kernen verhungern. Rigel vor 13 Jahren 0
Bitte schauen Sie sich den Artikel an, der in meinem Text verlinkt ist. Sie haben in keiner Weise mehr Leistung, wenn Sie HT deaktivieren. Michael K vor 13 Jahren 0
Der Kern verfügt über eine teilweise Pipeline, mit der er umgehen kann - Teil eines Kerns im Gegensatz zu einem Vollkern Journeyman Geek vor 13 Jahren 0
Diese Wikipedia-Seite erklärt nicht, wie sie sich auf ein einzelnes Programm auswirkt oder wie die CPU-Zyklen auf 4 unabhängige Programme verteilt werden, die jeweils 100% CPU verwenden. Rigel vor 13 Jahren 0
Um auf Ihre Frage zurückzukommen, kann es sein, dass in Ihrem BIOS ein Schalter für das HT ist. Wenn Sie dort keine finden, gehe ich davon aus, dass es keine Möglichkeit gibt, sie auszuschalten. Michael K vor 13 Jahren 0
HT war bei Single-Core-CPUs äußerst nützlich, aber bei Multi-Core-CPUs ist dies aufgrund der anderen Kerne weniger sinnvoll. Wenn HT deaktiviert ist, erhalten Sie * möglicherweise * eine bessere * Leistung *, da für jeden realen Kern mehr Ressourcen zur Verfügung stehen. Sicher ist nur durch empirische Tests. Ignacio Vazquez-Abrams vor 13 Jahren 4
HT ist seit der ersten Implementierung in den Pentium 4-CPUs weit fortgeschritten. Es gibt sehr wenige Szenarien, in denen die Leistung beeinträchtigt wird. afrazier vor 13 Jahren 1
Danke, Ignacio. Ich hoffe, ich konnte eine Website finden, auf der dieser Test bereits durchgeführt wurde. Rigel vor 13 Jahren 0
HT halbiert die für einen bestimmten Thread vorgesehenen CPU-Zyklen nicht, da diese Technologie dem physischen CPU-Kern mehr als einen Thread pro Zyklus ermöglicht. Mit einer Art von Intelligenz, die bestimmt, welcher Teil des Kerns von einem bestimmten Thread verwendet wird, führt HT zwei Threads in einem einzigen Zyklus auf einem einzelnen Kern aus, ohne dass ein anderer einen anderen Kern stört. music2myear vor 13 Jahren 2
@Altar Als Randbemerkung: Wenn die CPU nicht stark genug verwendet wird, um die potenzielle zusätzliche Ressource zu verwenden, die Hyperthreading bereitstellt, "parkt" Windows 7 diesen Hyperthread-Kern, wodurch vermutlich alle Ressourcen frei werden, um die echten Kerne zuzulassen effizient arbeiten. Ich kann dies auf meinem Quad-Core-i7 im Resource Monitor-Programm beobachten, da die Kerne # 1, # 3, # 4 und # 7 "geparkt" sind und 0% CPU-Auslastung zeigen, während die Kerne # 0, # 2, # 5 und # 6 laufen. Mokubai vor 13 Jahren 4
Danke music2myear. Zum Schluss noch eine gute TECHNISCHE Erklärung. Kannst du auf mehr Dokumentation darüber verweisen? Danke Mokubai - Du hast recht. Zwei meiner Kerne sind ebenfalls geparkt, auch wenn die ResMon eine Aktivität (unter 10%) aufweist. Rigel vor 13 Jahren 0
Alle diese Informationen und die gewünschte Dokumentation finden Sie in dem von mir verlinkten Wikipedia-Artikel. Michael K vor 13 Jahren 0
http://software.intel.com/en-us/articles/intel-hyper-threading-technology-your-questions-answered/?wapkw=(hyper+threading+technologies) Dies ist die Intel-Anweisung zum Hyperthreading. Weitere Referenzen finden Sie im Referenzkapitel des Wikipedia-Artikels. Michael K vor 13 Jahren 0
3
Andy

Hyper Threading (HT) von Intel ist so konzipiert, dass zwei Threads gleichzeitig auf einem einzelnen Core ausgeführt werden können. Da Sie über eine Dual-Core-CPU mit HT verfügen, können Sie also vier Threads gleichzeitig ausführen. Im Allgemeinen ist die Taktrate der CPU festgelegt und hängt nicht davon ab, wie viele Threads gleichzeitig ausgeführt werden. Intel hat jedoch kürzlich eine Funktion namens Turbo Boost eingeführt, mit der die CPU mit einer höheren Taktrate laufen kann, wenn nicht alle Kerne verwendet werden. Ihre CPU verfügt über einen integrierten Turbo-Boost, so dass sie bei 2,26 GHz läuft, wenn beide Kerne stark beansprucht werden, und 2,53 GHz, wenn nur ein Kern stark beansprucht wird. Dies wird alles automatisch erledigt und der Unterschied in der Taktrate beträgt nur etwa 10%, also machen Sie sich keine allzu großen Sorgen. Sie werden besser sicherstellen, dass alles andere heruntergefahren wird, wodurch Ressourcen für Ihren Hauptprozess freigesetzt werden.

Ich habe 'CPU Overload' verwendet, um einen sehr CPU-intensiven Thread zu starten. Im Ressourcenmonitor springt das Diagramm (die blaue Linie, die Maximum Frequency darstellt) nicht auf 110%. Rigel vor 13 Jahren 0