SSE3

SSE3

SSE3, also known by its Intel code name Prescott New Instructions (PNI), is the third iteration of the SSE instruction set for the IA-32 architecture. Intel introduced SSE3 in early 2004 with the Prescott revision of their Pentium 4 CPU. In April 2005, AMD introduced a subset of SSE3 in revision E (Venice and San Diego) of their Athlon 64 CPUs. The earlier SIMD instruction sets on the x86 platform, from oldest to newest, are MMX, 3DNow! (developed by AMD), SSE and SSE2.

SSE3 contains 13 new instructions over SSE2.

Changes

The most notable change is the capability to work horizontally in a register, as opposed to the more or less strictly vertical operation of all previous SSE instructions. More specifically, instructions to add and subtract the multiple values stored within a single register have been added. These instructions simplify the implementation of a number of DSP and 3D operations. There is also a new instruction to convert floating point values to integers without having to change the global rounding mode, thus avoiding costly pipeline stalls. Finally, the extension adds LDDQU, an alternative misaligned integer vector load that has better performance on NetBurst architectures for loads that cross cacheline boundaries.

CPUs with SSE3

*AMD:
**Athlon 64 (since Venice Stepping E3 and San Diego Stepping E4)
**Athlon 64 X2
**Athlon 64 FX (since San Diego Stepping E4)
**Opteron (since Stepping E4)
**Sempron (since Palermo. Stepping E3)
**Phenom
**Turion 64
**Turion 64 X2
*Intel:
**Celeron D
**Celeron 420, 430 and 440
**Pentium 4 (since Prescott)
**Pentium D
**Pentium Dual-Core
**Pentium Extreme Edition (but NOT Pentium 4 Extreme Edition)
**Intel Core Duo
**Intel Core Solo
**Intel Core 2 Duo
**Intel Core 2 Extreme
**Intel Core 2 Quad
**Xeon (since Nocona)
**Atom
*VIA/Centaur:
**C7
**Nano
*Transmeta
**Efficeon TM88xx (NOT Model Numbers TM86xx)

New instructions

Common instructions

Arithmetic
* ADDSUBPD - ("Add-Subtract-Packed-Double")
** Input - { A0, A1 }, { B0, B1 }
** Output - { A0 - B0, A1 + B1 }
* ADDSUBPS - ("Add-Subtract-Packed-Single")
** Input: { A0, A1, A2, A3 }, { B0, B1, B2, B3 }
** Output: { A0 - B0, A1 + B1, A2 - B2, A3 + B3 }AOS ( Array Of Structures )
* HADDPD - ("Horizontal-Add-Packed-Double")
** Input: { A0, A1 }, { B0, B1 }
** Output: { A0 + A1, B0 + B1 }
* HADDPS ("Horizontal-Add-Packed-Single")
** Input: { A0, A1, A2, A3 }, { B0, B1, B2, B3 }
** Output: { A0 + A1, A2 + A3, B0 + B1, B2 + B3 }
* HSUBPD - ("Horizontal-Subtract-Packed-Double")
** Input: { A0, A1 }, { B0, B1 }
** Output: { A0 - A1, B0 - B1 }
* HSUBPS - ("Horizontal-Subtract-Packed-Single")
** Input: { A0, A1, A2, A3 }, { B0, B1, B2, B3 }
** Output: { A0 - A1, A2 - A3, B0 - B1, B2 - B3 }
* LDDQU - As stated above, this is an alternative misaligned integer vector load. It can be helpful for video compression tasks.
* MOVDDUP, MOVSHDUP, MOVSLDUP - These are also used for complex numbers, and can be helpful for wave calculation like sound.
* FISTTP - Like the older x87 FISTP instruction, but ignores the floating point control register's rounding mode settings and uses the "chop" (truncate) mode instead. Allows omission of the expensive loading and re-loading of the control register in languages such as C where float-to-int conversion requires truncate behaviour by standard.

Intel instructions

* MONITOR, MWAIT - These optimize multi-threaded applications, giving processors with Hyper-Threading better performance.

ee also

*Computer numbering formats
*Streaming SIMD Extensions
*SSE2
*SSSE3
*SSE4
*SIMD

External links

* [http://www.intel.com/cd/ids/developer/asmo-na/eng/66717.htm SSE3 Overview by Intel]
* [http://www.xbitlabs.com/articles/cpu/display/prescott_10.html X-bit Labs]


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Look at other dictionaries:

  • SSE3 — (PNI Prescott New Instruction) третья версия SIMD расширения Intel, потомок SSE, SSE2 и MMX. Впервые представлено 2 февраля 2004 года в ядре Prescott процессора Pentium 4. В 2005 AMD предложила свою реализацию SSE3 для процессоров Athlon 64 (ядра …   Википедия

  • SSE3 — Saltar a navegación, búsqueda SSE3 (también conocido por el nombre en código que le puso Intel, Prescott New Instructions (PNI)) es la tercera generación de las instrucciones SSE para la arquitectura IA 32. Intel mostró las SSE3 a principios de… …   Wikipedia Español

  • SSE3 — SSE3, connu aussi par son nom de code interne Prescott New Instructions (PNI), est la troisième génération du jeu d instructions SSE pour l architecture IA 32. Intel a introduit SSE3 au début de l année 2004 avec la version Prescott de son… …   Wikipédia en Français

  • SSE3 — Die Streaming SIMD Extensions 3 (kurz SSE3) ist die zweite Erweiterung des SSE Befehlssatzes. Sie ist auch unter dem Intel Codenamen Prescott New Instructions (PNI) bekannt, da sie zuerst bei der Prescott Variante des Pentium 4 ab Frühjahr 2004… …   Deutsch Wikipedia

  • Streaming SIMD Extension 3 — SSE3 SSE3, connu aussi par son nom de code interne Prescott New Instructions (PNI), est la troisième génération du jeu d instructions SSE pour l architecture IA 32. Intel a introduit SSE3 au début de l année 2004 avec la version Prescott de son… …   Wikipédia en Français

  • Comparison of AMD processors — This list is incomplete; you can help by expanding it. Colors of the processor code names indicate same core. Archi tecture Family Code Name Model Group Speed (MHz) Socket Process (nm) Cores FSB/HT (MHz) Cache (KiB) Memory Controller …   Wikipedia

  • List of Intel Core 2 microprocessors — The Core 2 brand refers to Intel s x86/x86 64 microprocessors with the Core microarchitecture targeted at the consumer and business markets (except servers) above Pentium. The Core 2 solo branch covered single core CPUs for notebook computers,… …   Wikipedia

  • Intel Core 2 Duo (Mobil) — Intel Core 2 Duo Intel Core 2 Duo Emblem Produktion: seit 2006 Produzent: Intel Prozessortakt: 1,06 GHz …   Deutsch Wikipedia

  • Список микропроцессоров Intel — Информация в этой статье или некоторых её разделах устарела. Вы можете помочь проекту …   Википедия

  • List of AMD Athlon 64 microprocessors — This list is incomplete; you can help by expanding it. The Athlon 64 microprocessor from AMD is an eighth generation CPU targeted at the consumer market. Contents 1 Single core desktop processors 1.1 Athlon 64 …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”