SSE4: Wann bringt es wirklich mehr Speed?

Einen Durchbruch gab es mit SSE2. Diese Erweiterung erlaubt die Verwendung von Double-Precision-Zahlen. Da Double-Precision-Zahlen 64 Bit lang sind, können jeweils nur zwei Werte in ein XMM-Register gepackt werden.

SSE2 ist deutlich schneller als die Verwendung der 80×87-Befehle. Die 80×87-Register arbeiten intern mit 80 Bit, obwohl als Ergebnis immer nur das Standard-IEEE754-Double-Precision-Format mit 64 Bit zurückgegeben wird. SSE2 verzichtet auf die interne 80-Bit-Genauigkeit. Damit ist SSE2-Code zwar schneller, aber auch ungenauer. In der Praxis reicht die Genauigkeit jedoch meist aus, wenn man einige Dinge beachtet. SSE2 ist damit der erste vollwertige Ersatz für die 80×87-Floating-Point-Arithmetik auf Basis einer modernen SIMD-Architektur.

SSE3 stellt im Wesentlichen ein kleines Upgrade von SSE2 dar und bringt nur in wenigen Fällen Performancevorteile. Mit SSE3 ist es möglich, Addition und Subtraktion in einem Befehl zu mischen, was aber wenig praktische Relevanz hat. Ein weiteres Merkmal von SSE3 ist die Möglichkeit, einen 64-Bit-Wert in einem XMM-Register in beide 64-Bit-Hälften eines anderen XMM-Registers oder in den Speicher zu duplizieren. Dies hilft im Umgang mit komplexen Zahlen und bei Wellenformberechnung. Somit können typische DSP-Aufgaben, wie MP3-Kompression wesentlich beschleunigt werden. SSE3 erweitert den Befehlssatz um die horizontale Addition und Subtraktion. Dahinter verbirgt sich die Möglichkeit, verschiedene Felder eines einzigen XMM-Registers zu addieren und zu subtrahieren, anstatt jeweils ein Feld von zwei XMM-Registern.

Themenseiten: Anwendungsentwicklung, Intel, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu SSE4: Wann bringt es wirklich mehr Speed?

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *