Hyperphredding bei Intel

Nebulus

Vice Admiral Special
Mitglied seit
01.03.2006
Beiträge
806
Renomée
53
Die neuen Intel CPUs werden ja wieder Hyperphredding einführen.
Wie effektiv war das eingentlich bei den alten Intels ?

Also, was ist von einer CPU mit 2 Kernen + 2 * Hyperthredding zu halten ?
 
Gehe ich recht in der Annahme, dass du Hyperthreading meinst?
 
"Hypterthreading" kenne ich...

Auf den Einkernsystemen von Intel hat das schon gewisse Vorteile gebracht, weil damit mehrere Prozesse besser verteilt werden konnten. Das viel zitierte Brennen und nebenbei arbeiten war damit problemlos möglich. Da kamen klasschische Einkerner ja schon mal ins Ruckeln.
Ein echter Dualcore macht das aber ne Ecke besser, der muss schliesslich nicht so tun als ob, sondern hat 2 Kerne.

Bei den Dualcores lehne ich mich jetzt mal aus dem Fenster und behaupte: Marketinggag von Intel. Altebekanntes wird neu hervorgeholt um auf der Feature-Liste noch was draufzupacken. Einen Quadcore wird man damit nicht ersetzen können. Nicht ansatzweise. Und auch sonst wird man das Hyperthreading nicht merken.

Fex
 
Bei den Dualcores lehne ich mich jetzt mal aus dem Fenster und behaupte: Marketinggag von Intel. Altebekanntes wird neu hervorgeholt um auf der Feature-Liste noch was draufzupacken. Einen Quadcore wird man damit nicht ersetzen können. Nicht ansatzweise. Und auch sonst wird man das Hyperthreading nicht merken.
Sehe ich genau so, zumal es glaube ich nichts gab das Brutto mit HT schneller wurde. Nur flüssiger weil simulierte zwei Kerne und damit eine bessere Verteilung von Aufgaben möglich war.
 
Hyperthreading-Technology = HTT ; HyperTransport = HT.

Also mit meinen non HTT "Einkernern" ala AXP, A64 und K8 Sempron konnte ich ohne Probleme eine CD brennen und ein Spiel nebenbei zocken, solange genügend RAM da war.

HTT war ja auf die lange Pipeline des P IV optimiert, da muss Intel also einiges dran verändern, damit dass anständig im P III Design läuft.
 
HTT war ja auf die lange Pipeline des P IV optimiert, da muss Intel also einiges dran verändern, damit dass anständig im P III Design läuft.

Wenn dann Pentium Pro und nicht Pentium III, denn es kann nur einen Urvater geben.
 
"Hypterthreading" kenne ich...

Auf den Einkernsystemen von Intel hat das schon gewisse Vorteile gebracht, weil damit mehrere Prozesse besser verteilt werden konnten. Das viel zitierte Brennen und nebenbei arbeiten war damit problemlos möglich. Da kamen klasschische Einkerner ja schon mal ins Ruckeln.
Ein echter Dualcore macht das aber ne Ecke besser, der muss schliesslich nicht so tun als ob, sondern hat 2 Kerne.

Bei den Dualcores lehne ich mich jetzt mal aus dem Fenster und behaupte: Marketinggag von Intel. Altebekanntes wird neu hervorgeholt um auf der Feature-Liste noch was draufzupacken. Einen Quadcore wird man damit nicht ersetzen können. Nicht ansatzweise. Und auch sonst wird man das Hyperthreading nicht merken.

Fex



Kommt drauf an es kann zu Vorteilen führen.

Je nach Anwendung.

Einen Vierkern kann es zwar nicht ersetzen aber dafür werden die Doeppelkern CPUs mit HT bestimmt auch günstiger sein als die mit 4 Kernen.
 
Kommt drauf an es kann zu Vorteilen führen.

Je nach Anwendung.

Einen Vierkern kann es zwar nicht ersetzen aber dafür werden die Doeppelkern CPUs mit HT bestimmt auch günstiger sein als die mit 4 Kernen.

Und wann kommt der Vierkern mit HT???. Ich halte diese "Entwicklung" für Quatsch.
 
Wer eine Software nutzt, die für 4 Kerne optimiert ist, wird auch eine Quadcore Architektur einsetzen und ganz sicher keine Dualcore +HT.
Damit ist der Sinn des Prozessors so gut wie weg. 75% aller auf dem Markt befindlichen Programme nutzen nicht mal einen Dualcore optimal, da wollen wir von Quadunterstützung mal gar nicht erst reden. Im Serverbereich machen Quadcores Sinn, für Desktops ist das alles Marketinggeblubber vom blauen Riesen und vom grünen Zwerg.
Wer sich bei der Marktsituation einen Quadcore für den Desktop kauft, kauft auch einen Dual+HT oder einen Quad+HT. Klingt sehr potent, also muss es auch so sein....

Fex
 
Wenn Software einmal richtig parallelisiert wurde läuft sie auf beliebig vielen Kernen. Da macht es keinen Unterschied ob das nur 2 oder 1024 Kerne sind.
HT wird aber wohl keine Vorteile bringen, da von Dualcores sowieso schon SMP genutzt werden kann, und die Prozessoren damit in den SMP Programmen schon optimal ausgenutzt werden.
 
Naja, es stört doch auch nicht, oder? Und wenns nur bei gewissen Anwendungen ein paar Prozent bringt, warum sollte man es nicht nutzen?

MFG Max
 
Naja, es stört doch auch nicht, oder? Und wenns nur bei gewissen Anwendungen ein paar Prozent bringt, warum sollte man es nicht nutzen?

MFG Max


Richtig.

Ausser dieses Feature kostet zuviel


.
 
Bringt doch eh nur was, wenn die jeweilige Anwendung den oder die Kerne nicht annähernd voll auslastet. Wenn der oder die Kerne bereits ausgelastet sind, muss der Prozess ja künstlich verlangsamt werden um Rechenleistung für den anderen Prozess bereitzustellen.
 
Wie effektiv war das eingentlich bei den alten Intels ?

Kommt drauf an. Extrembeispiel SETI, da war locker ne 50%-Steigerung drin.

Also, was ist von einer CPU mit 2 Kernen + 2 * Hyperthredding zu halten ?

Gegen HT ist eigentlich nichts einzuwenden, beim P4 solls kaum zusaetzliche Transen gekostet haben, 5% mehr habe ich da in Erinnerung. Im Falle des Presler bzw. Dual-Xeon-Systemen kam da aber wieder die Bandbreiten-Limitierung ins Spiel.

Eigentlich muesste sich mal jemand nen P4 EE (Gallatin-Core, S775) besorgen und auf ein aktuelles 965/975-Board stecken, Multi auf x8 runter und FSB bis an den Anschlag, waere interessant zu sehen, wie sich da die Netburst-Architektur in Verbindung mit HT verhaelt.

Das viel zitierte Brennen und nebenbei arbeiten war damit problemlos möglich.

Mit nem richtigen OS geht das auch auf ner 400 MHz-Kiste, selbst mit IDE-Geraeten.
 
Bringt doch eh nur was, wenn die jeweilige Anwendung den oder die Kerne nicht annähernd voll auslastet. Wenn der oder die Kerne bereits ausgelastet sind, muss der Prozess ja künstlich verlangsamt werden um Rechenleistung für den anderen Prozess bereitzustellen.



Vielleicht irre ich mich aber ist es nicht so das CPUs nie 100 prozentig ausgelastet werden könnenund Intel deswegen Hyperthreading eingeführt hat um die Auslastung zu verbessern ?


Müsste eigetnlich so sein denn sonst hätte ein P 4 mit HT im Vergleich zu einem ohne HT nicht shcneller sein dürfen.


(Testbedingungen waren gleich)
 
@Lochfrass

Ich habe dieses Beispiel mit Bedacht gewählt. Die technischen Möglichkeiten sind mir klar, aber "das viel zitierte" kommt ja nicht von irgendwoher oder?
Darunter kann sich jeder auf technisch weniger anspruchsvollem Niveau ein Bild machen.

Fex
 
Sehe ich genau so, zumal es glaube ich nichts gab das Brutto mit HT schneller wurde. Nur flüssiger weil simulierte zwei Kerne und damit eine bessere Verteilung von Aufgaben möglich war.

Eben alles was mehr als einen Thread genutzt hat, war in der Tat schneller. Wäre für unsere Crunchergemeinde natürlich genial - 4 Cores, 8 Virtuelle, und nochmal 20-30% mehr Leistung als mit 4 realen.
 
[MTB]JackTheRipper;3156395 schrieb:
Wenn Software einmal richtig parallelisiert wurde läuft sie auf beliebig vielen Kernen. Da macht es keinen Unterschied ob das nur 2 oder 1024 Kerne sind.


Das muss Du mir mal erklären ;D

Es gibt sicherlich ausnahmen, da kann die Berechnung sich selber in x-beliebig viele Threads aufteilen (Videobearbeitung) und auf die Kerne verteilen aber die meissten Berechnungen laufen liniear und sind somit ziemlich starr.
Da kann höchstens der Anwender "von Hand" versuchen die Berechnungen logisch zu trennen und in mehrere Threads zu verteilen.

m.E. profitiert ein DualCore optimiertes Programm nicht automatisch von weiteren Kernen.
 
HT war öfters auch unvorteilhaft und verlangsamte diverse Applikationen.

Für die Leute, die im Hintergrund SETI oder wasauchimmer gerechnet haben, war es eh nicht brauchbar. Von daher genauso nutzlos wie ein P4 an sich.

Wenn daran nichts verbessert wird, bleibt es auch weiterhin nutzlos und lediglich ein Marketing-Gag für die DAUs.
 
@jacktheripper
ich will hier keinem ans Bein pinkeln aber deine Aussage ist nicht korrekt. Es ist absolut nicht so, dass sobald eine Applikation parallelisiert wurde, dass es dann keine Unterschied mehr macht auf wie vielen Cores sie laeuft.
Allein von der Theorie her siehe Amdahlsches Gesetz.
Es gibt in jedem Programm einen sequentiellen Anteil den man nicht parallelisieren kann und genau von dem haengt auch die Geschwindigkeit ab. Auch kann man ein Programm nicht in beliebig viele Teile teilen, irgendwann nimmt der Geschwindigkeitszuwachs wieder ab, da die Programmteile von Slaves berechnet und wieder "zurueckgeschickt" werden muessen.
Auch ist quasie ein Core immer der "Master'' und der muss die berechneten "Teile'' wieder zusammenbauen, von daher ist parallelisierung ein verdammt hartes Pflaster. Man muss genau die Balance finden wie viele Cores man benutzt zu welchem Teil man welchen belastet und in wie viele Teile man das Programm teilt.

Ich programmiere Applikationen fuer den Cell Prozessor von IBM und selbst bei 9 Cores ist es schon schwierig die Leistung auszunutzen.
Natuerlich kann man mehr als 4 Cores ohne Probleme nutzen, aber die Grenze ist meist dann doch recht schnell erreicht wo es keinen Sinn mehr macht.

Fuer die meisten Softwarehersteller lohnt sich der Mehraufwand ueberhaupt nicht, denn die meiste Software laeuft ja schon auf einem SingleCore problemlos. CAD-Anwendungen und generell Rendering und Spiele sind wohl die Software die Mehrkernprogrammierung nutzen werden.
Jedoch ist auch hier nur von simpler Parallelisierung mittels boost/threads auszugehen.
Spannend wird es eigentlich erst, wenn AltiVec / Vektorprogrammierung betrieben wird, dadurch entsteht erst richtig potente parallelisierte Software. Problem dabei ist jedoch wieder, dass AMD, Intel und IBM ein anderes Konzept verfolgen, also wird sich dies zumindest auf x86 Architekturen nicht durchsetzen solange es keinen Standard gibt.
IBMs AltiVec wird da schon deutlich oefter verwendet, einfach weil es was den PowerPC angeht, keine wirkliche Konkurrenz gibt.
 
Zuletzt bearbeitet:
Wenn ich mich recht entsinne, dann brachte HT auf dem P4 auch nur dann wirklich was wenn das entsprechende Programm NICHT für SMP gedacht war, was wiederum die Vorraussetzung zur Auslastung aller Cores eines Mehrkernsystemes ist.

Genau da sehe ich dann das Problem bei einem entsprechenden Programmen, welche auch die Cores nutzen können aber das wird sich dann ja zeigen.

Das Argument des flüssigeren Arbeitens ist jedenfalls seit Dualcore und co im grossen und ganzen nichtig.
 
Das Argument des flüssigeren Arbeitens ist jedenfalls seit Dualcore und co im grossen und ganzen nichtig.

wird aber sofort wieder aktuell, wenn man EIN Programm nutzt das einen DualCore komplett belasten kann.
Nur die Kombination "DualCore" mit fehlenden DualCore optimierten Programmen lässt das System "geschmeidiger" bleiben.
Von daher ist das m.E. grundlegend nur ein Vorteil auf Zeit (ok, es werden ganz sicher nicht alle Programme DualCore fähig werden)
 
Hyperthreading brachte beim P4 vor allem bei sogenannten "Multimedia-Anwendungen", wie Encoding usw. eine ganze Menge. Man erinnere sich an die Benchmarks, wo der P4 einem Athlon-XP regelrecht davonzog, und das lag nicht an dessen fehlendem SSE2 oder der Bandbreitenlimitierung, denn auch der Single-Core A64 wurde in bestimmten Benchmarks vom P4 geschlagen, eben die, die Hyperthreading nutzten.

Ich erinnere mich auch an eine DiVX-Version, wo stand, wie viel die nun von Dual-Cores und sogar von Dual-Cores mit HTT (p4 Extreme Edition) profitieren würde, auch beim reinen Abspielen der Videos. Kann mich jetzt nicht mehr an die Zahlen erinnern, aber es war im zweistelligen Prozentbereich, die eine HTT-CPU gegenüber einer nicht-HTT-CPU schneller war. Diese News war auch hier auf P3D, weiss aber nicht mehr, wann die rauskam.

Sharpy
 
Hyperthreading brachte beim P4 vor allem bei sogenannten "Multimedia-Anwendungen", wie Encoding usw. eine ganze Menge.
Man erinnere sich an die Benchmarks, wo der P4 einem Athlon-XP regelrecht davonzog, und das lag nicht an dessen fehlendem SSE2 oder der Bandbreitenlimitierung, denn auch der Single-Core A64 wurde in bestimmten Benchmarks vom P4 geschlagen, eben die, die Hyperthreading nutzten.

Ich erinnere mich auch an eine DiVX-Version, wo stand, wie viel die nun von Dual-Cores und sogar von Dual-Cores mit HTT (p4 Extreme Edition) profitieren würde, auch beim reinen Abspielen der Videos.
Ich sehe auch im Multimedia-Bereich und auf Mobilplattformen einen Sinn für HT.
Zudem bei Budget-Lösungen ggf. in Kombination mit onDIE GPU.

Der Mehrbedarf TDP ist mäßig im Vergleich zum echten Quad-Core.
Dafür läßt aber die SSE voll auslasten.
Nicht ohne Grund haben die Konsolen ja per SMT-fähigen Cores ähnliche Hardware.

Die neue HT muss aber so gebaut sein, daß sie nicht am fehlenden Zufluss an Bytes aus dem L1 erstickt. Dazu die eher selten genutzte 4.Unit im 4-fach superskalren Design nutzen.

Gibt es am Markt dann viele Systeme mit echtem Quad und 2*2 Quad per HT dann wird auch Software/Treiber für 4 Cores optimiert.
Bei nvidia-Demo erhalten einzelne Core unterschiedliche Teilaufgaben, die aber nicht jeden Core voll auslasten. Da sind schon Ansätz für HT sichtbar.
 
Wenn ich mich recht entsinne, dann brachte HT auf dem P4 auch nur dann wirklich was wenn das entsprechende Programm NICHT für SMP gedacht war, was wiederum die Vorraussetzung zur Auslastung aller Cores eines Mehrkernsystemes ist.
Eben nicht. Sinn und Zweck von HT ist es ja, zwei virtuelle CPUs für Multithreading zur Verfügung zu haben. Kann natürlich sein, dass bei der einen oder anderen Multithreaded Applikation der Schuss etwas nach hinten losgeht und es ohne HT auf der selben Maschine besser läuft.

Grundsätzlich konnte ich in eigenen Multithreaded-Programmen ähnliche bis gleiche
Performancesteigerungen mit HT im Vergleich zu Dualcore sehen.
Am besten funktioniert HT meiner Erfahrung nach mit relativ kurzen Threadschleifen und Threads, welche in zwei Instanzen laufen (gleicher Code, unterschiedliche Daten).
Je komplexer und unterschiedlicher die Threads, desto weniger Gewinn bei HT, im schlimmsten Fall sogar Verschlechterung. Mit zwei echten Kernen passiert dann so etwas nicht.
 
Zurück
Oben Unten