Streaming SIMD Extensions 4

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von SSE4.1)
Wechseln zu: Navigation, Suche

SSE4 (Streaming SIMD Extensions 4) ist eine Befehlssatzerweiterung, die bei AMD seit K10 und bei Intel seit der Penryn-Variante der Core-2-Prozessoren verwendet wird. Der zweite Teil, SSE4.2 genannt, wurde mit der Intel-Nehalem-Mikroarchitektur eingeführt.

Intel SSE4 besteht aus 54 Befehlen. Der erste Teil von 47 Befehlen erschien unter den Namen SSE4.1. Darüber hinaus erschienen noch einmal sieben Befehle als SSE4.2 ab Core i7 ab der Variante Nehalem.

AMD fügte anstelle dessen mit der K10 Architektur vier eigene Befehle hinzu und veröffentlichte diesen Instruktionssatz unter dem Namen SSE4a. Die Prozessoren der Bulldozer-Mikroarchitektur, die im Oktober 2011 veröffentlicht wurden, unterstützen zusätzlich zu SSE4a auch SSE4.1 und 4.2 vollständig. Intel CPUs unterstützen im Gegenzug die SSE4a Befehle bis heute nicht.

Instruktionen[Bearbeiten]

Im Folgenden eine unvollständige Auflistung der neu eingeführten Befehle und ihrer Einsatzbereiche.

SSE 4.1[Bearbeiten]

z. B. für 3D-Grafiken, Spiele
  • Bedingtes Überblenden – BLENDPS/-D, BLENDVPS/-D, PBLENDVB, PBLENDDW
z. B. für Bildverarbeitung, Multimedia, Spiele
  • Minima bzw. Maxima bestimmen – PMINSB, PMAXSB, PMINUW, PMAXUW, PMINUD, PMAXUD, PMINSD, PMAXSD
z. B. für Bildverarbeitung, Multimedia, Spiele
  • IntegerumwandlungPMOVSXBW/-D/-Q, PMOVZXBW/-D/-Q, PMOVSXWD/-Q, PMOVZXWD/-Q, PMOVSXDQ, PMOVZXDQ
z. B. für Bildverarbeitung, Multimedia, Spiele

SSE 4.2[Bearbeiten]

Beschleunigte Prüfsummenberechnung. Implementiert die Castagnoli-Variante (CRC-32C), und ist daher inkompatibel zur in IEEE 802.3 standardisierten CRC32-Variante, welche in Netzwerkprotokollen (wie Ethernet, V.42), SATA, MPEG-2, PNG, und im UNIX-cksum-Kommando zum Einsatz kommt. CRC-32C kommt unter anderem bei iSCSI und bei dem Linux Dateisystem Btrfs zum Einsatz.
  • Erweiterte String-Operationen – PCMPESTRI, PCMPESTRM, PCMPISTRI, PCMPISTRM
Leistungssteigerung für Virenscanner, Datenbanken und Textverarbeitung. Da die Operationen, wie in SSE üblich, auch hier auf 128-Bit-Operanden basieren, werden nur Strings bis zu einer maximalen Länge von 16 Bytes, bzw. bis zu 8 UCS-2-Zeichen, verarbeitet. Die möglichen Funktionen sind im Einzelnen
  • Vergleiche Zeichenketten
  • Finde Zeichen aus einer spezifizierten Menge
  • Finde Zeichen aus spezifizierten Intervallen
  • Suche, ob eine Zeichenkette in einer anderen enthalten ist

Weblinks[Bearbeiten]