News SSE-Nachfolger heißt AVX und ist 256 Bit breit

gruffi

Danke dafür, dass Du viel Licht in das große Dunkel gebracht hast.
Vor allem dass einiges an Halbwissen eliminiert wurde...
 
Nuja, das ist auch ne Art, den Entwicklern Kopfzerbrechen zu bereiten... SSE gibt es seit neuerem nicht mehr nur von Intel (weil die irgendwas verbockt haben) - und nun muss man sich wenn man SSE integrieren will SSE, SSE2, SSE3, SSE4, SSE4.1 und SSE5 verinnerlichen. Dazu kommt jetzt noch AVX.
Na gut, es mag Leute geben die das toll finden (z.B. Leute, die vorm Regal einer gewissen Kette mit zwei M stehen und keine Ahnung haben während sie von einem unzureichend ausgebildeten Verkäufer fachmännisch vera***t werden), aber es gibt am anderen Ende auch Leute, die von EA oder Maxis oder JoWoood (oder sonst einer Spieleschmiede) bezahlt werden und ein dickes Buch im Regal haben mit dem Titel "SSE und was man damit macht" (oder so ähnlich)... Im Endeffekt sorgt das dann zwar dafür, dass man einen Winkel jetzt statt auf 12034 Stellen hinterm Komma auf 8765043 Stellen hinter dem Komma berechnen kann, aber wozu braucht man bitte 256 bit Vektorberechnung? Ich kann mir vorstellen, dass BlueGen und der Supercomputer der bei der NASA werkelt nativ 256 bit können, die werden die einzigen sein die das brauchen...

So, ich bin mal eben weg und erklär den Yerli-Brüdern, dass demnächst 256 bit große Vektoren verwendet werden können...

Edit: Obwohl, kann auch ein Versuch von Intel sein, SSE5 über ne Hintertür einzuführen, so wie sie es damals mit EMT64 gemacht haben. Das war auch nur ne Art von "Stell dem Kerl nen Hirsch hin - wenn es genug Leute ne Kuh nennen glaubt ers vielleicht"...
 
Zuletzt bearbeitet:
SSE5 beinhaltet doch alle SSE 1, 2 und 3 Befehle, also verstehe ich jetzt nicht, wo das Problem dabei sein soll. Und die Yerli-Brüder beschäftigen sich ja nun auch mit neuen Shaderstandards. Was dann den Aufwand nicht lohnt, weils bei der jeweiligen Aufgabe nciht viel bringt, wird eben nicht benutzt - ist ja niemand gezwungen.
 
Solche Befehle werden dann vielleicht (abseits von Spezialprogrammen) frühestens 2012 benutzt...
 
Finde das nicht gut, dass sich das jetzt parallell entwickelt

Dann müssen die Softwarehersteller für zwei verschiedene Befehlssätze optimieren

Außerdem müssen die Binarys dann verschieden sein
 
finde die gleichzeitige entwicklung auch nicht so toll :(
Einheitliche standards sind immer besser. In der realität sind eh nur SSE 1&2 wirkliche standards, alles was darüber hinaus geht hat eh keine breite unterstützung am markt. eben wegen der tatsache das man es nicht überall implementiert.
 
Intel bastelt doch schon seit einiger Zeit am Echtzeitraytracing und der Zeitpunkt der Einführung von Larabee(so hieß das doch?) war doch auch so gegen 2010. Wenn sie es dafür brauchen, dann paßt es in etwa.
 
MountWalker schrieb:
SSE5 beinhaltet doch alle SSE 1, 2 und 3 Befehle, also verstehe ich jetzt nicht, wo das Problem dabei sein soll.

Nein tut es nicht. SSE5 definiert einen Satz neuer Befehle, d.h. es ist nicht kumulativ!
 
SSE5 ersetzt aber auch keine SSE 1,2,3 Befehle und deswegen muss man hier nichts doppelt lernen - das ist der Punkt. SSE5 ist keine Software, sondern eine Definition, und da braucht es eben keine doppelte, gleiche Definition von bereits gleich definiertem geben.

Wird es einen SSE5-Prozessor geben, der kein SSE 1,2,3 kann? ;)
 
Zuletzt bearbeitet:
Tommy schrieb:
Nein tut es nicht. SSE5 definiert einen Satz neuer Befehle, d.h. es ist nicht kumulativ!

Natürlich ist SSE5 abwärtskompatibel, nur eben nicht zu SSE4(.1 und.2). Lt. AMD soll es an Intel liegen, ob SSE4 unterstützt wird oder nicht. Würde Intel SSE4 für AMD zur Verfügung stellen, würde der Prozessor es ebenfalls unterstützen. Es ist also im Prinzip tatsächlich eine volle Abwärtskopatiblität da, aber aus lizenztechnischen Gründen gehts halt nicht.
Die K10.5 CPU untersützt alle Befehlssätze, von MMX über 3DNow bis alle SSE Varianten bis SSE3 und eben sehr wahrscheinlich SSE5. Ich denke mir, da AMD SSE5 vor allem als AMD64 Erweiterung sieht, kommt es vllt. zu einem Austausch der beiden Befehlssätze. Wär ja auch nicht das erste Mal so.

MountWalker
SSE5-CPUs untersützen alle Befehlssätze bis auf SSSE3, SSE4.1 und SSE4.2. Es wird keine CPU geben, bei der das anders sein wird.
 
Zuletzt bearbeitet:
@ HOT

Kann es sein, dass ihr SSE3 da völlig falsch im Kopf habt? Denn mein Athlon 64 SanDiego unterstützt SSE3, wieso also sollte das bei neueren AMD-Prozessoren plötzlich anders sein? Die SSE3-Lizenz hat AMD. (nur ab 4/4a/4.1 usw. gibts nichts einheitliches mehr)
 
Zuletzt bearbeitet:
Genau hinschauen, HOT sprach von SSSE3.
 
Noch mal zum Mitschreiben:

SSE1 definiert A Befehle
SSE2 definiert B Befehle
SSE3 definiert C Befehle
SSSE3 definiert D Befehle
SSE4.1 definiert E Befehle
SSE4.2 definiert F Befehle
SSE4.A definiert G Befehle
SSE5 definiert H Befehle.

SSE5 ist nicht SSE1+SSE2+SSE3... sondern es sind neue Befehle. Niemand sagt, dass du SSE1 unterstützten musst, wenn du SSE5 unterstützt. Auch wenn es normal sein mag, musst du für jede Befehlsgruppe die CPUID abfragen, ob die Befehle zur Verfügung stehen, oder nicht.

Die Aussage "SSE5 beinhaltet doch alle SSE 1, 2 und 3 Befehle, also verstehe ich jetzt nicht, wo das Problem dabei sein soll." ist also falsch.

Zu SSE4: Die Ankündigung kam seitens Intel zu spät, als dass diese bei AMD in den Produktplänen hätten berücksichtigt werden können. SSE4A unterstützt einige Befehle der SSE4.*-Gruppe. Ebenso unterstützt SSE5 einige Befehle, die Intel in SSE4.* definiert hat. Inzwischen ist da einfach nur totales Chaos.
 
Zuletzt bearbeitet:
Sollen die ruhig soviel Befehle entwickeln, wie die wollen. SSE und 3dnow werden noch bestehen bleiben.
SSE hat einen solchen bekanntheitsgrad, dass dieser befehlssatz noch mehrere Jahre ein starkes Fundament bleibt.
Der Rest ist eine Sache der Compiler und der Libs. Je nach Wunsch wird der passende Befelssatz dann ins Programm reinkompiliert.
 
Tommy schrieb:
Noch mal zum Mitschreiben:

SSE1 definiert A Befehle
SSE2 definiert B Befehle
SSE3 definiert C Befehle
SSSE3 definiert D Befehle
SSE4.1 definiert E Befehle
SSE4.2 definiert F Befehle
SSE4.A definiert G Befehle
SSE5 definiert H Befehle.

SSE5 ist nicht SSE1+SSE2+SSE3... sondern es sind neue Befehle. Niemand sagt, dass du SSE1 unterstützten musst, wenn du SSE5 unterstützt. Auch wenn es normal sein mag, musst du für jede Befehlsgruppe die CPUID abfragen, ob die Befehle zur Verfügung stehen, oder nicht.

Die Aussage "SSE5 beinhaltet doch alle SSE 1, 2 und 3 Befehle, also verstehe ich jetzt nicht, wo das Problem dabei sein soll." ist also falsch.

Zu SSE4: Die Ankündigung kam seitens Intel zu spät, als dass diese bei AMD in den Produktplänen hätten berücksichtigt werden können. SSE4A unterstützt einige Befehle der SSE4.*-Gruppe. Ebenso unterstützt SSE5 einige Befehle, die Intel in SSE4.* definiert hat. Inzwischen ist da einfach nur totales Chaos.

Theoretisch ja, Faktisch nicht. Es wird keine CPUs geben, bei der die älteren SIMD Versionen nicht unterstützt werden und ich finde es grundfalsch darauf herumzureiten, denn das führt nur zu Verunsicherungen. Das sind meist eh nur µCode Geschichten. Es ist nötig zu erwähnen, dass eine SSE5-CPU momentan kein SSSE3, SSE4.1 und SSE4.2 enthält, aber alle anderen SIMD Befehlssätze. Das jede SSE Version einen eigenen Befehlssatz definiert ist klar. Aber es ist auch so, dass jede SSE Version ebenfalls die Befehle der Vorgängerversion erweitert.
 
Zuletzt bearbeitet:
Zurück
Oben