Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

SSE3 , Streaming SIMD Extensions 3 , также известный под кодовым названием Intel Prescott New Instructions ( PNI ), является третьей итерацией набора инструкций SSE для архитектуры IA-32 (x86). Intel представила SSE3 в начале 2004 года с версией Prescott своего процессора Pentium 4 . В апреле 2005 года AMD представила подмножество SSE3 в версии E (Venice и San Diego) своих процессоров Athlon 64 . Более ранние наборы инструкций SIMD на платформе x86 , от самых старых до новейших, - это MMX , 3DNow!(разработан AMD, но не поддерживается процессорами Intel), SSE и SSE2 .

SSE3 содержит 13 новых инструкций по SSE2 .

Изменения [ править ]

Наиболее заметным изменением является возможность горизонтальной работы в регистре, в отличие от более или менее строго вертикальной работы всех предыдущих инструкций SSE. Более конкретно, были добавлены инструкции для сложения и вычитания нескольких значений, хранящихся в одном регистре. Эти инструкции можно использовать для ускорения выполнения ряда операций DSP и 3D . Также есть новая инструкция для преобразования значений с плавающей запятой в целые числа без изменения глобального режима округления, что позволяет избежать дорогостоящих остановок конвейера . Наконец, расширение добавляет LDDQU, альтернативную загрузку с неверно выровненным целочисленным вектором, которая имеет лучшую производительность на платформах на основе NetBurst для нагрузок, пересекающих границы строки кэша.

Процессоры с SSE3 [ править ]

  • AMD :
    • Opteron (начиная со степпинга E4)
    • Sempron (начиная с Palermo. Stepping E3)
    • Athlon 64 (начиная с Venice Stepping E3 и San Diego Stepping E4)
    • Athlon 64 FX (начиная с San Diego Stepping E4)
    • Athlon 64 X2
    • Phenom 64 X2
    • Семья Турион
    • Семья К10
    • Семейство APU (в том числе без GPU)
    • Серия FX
    • Дзен
    • Дзен +
    • Zen2
  • Intel :
    • Celeron D
    • Celeron (начиная с микроархитектуры Core)
    • Pentium 4 (начиная с Prescott)
    • Pentium D
    • Pentium Extreme Edition (но НЕ Pentium 4 Extreme Edition)
    • Двухъядерный Pentium
    • Pentium (начиная с микроархитектуры Core)
    • Основной
    • Xeon (начиная с Nocona)
    • Атом
  • ВИА / Кентавр :
    • C7
    • Нано
  • Transmeta Efficeon TM88xx (НЕ номера моделей TM86xx)

Новые инструкции [ править ]

Общие инструкции [ править ]

Арифметика

  • ADDSUBPD - (сложить-вычесть -упаковано-двойное )
    • Ввод: {A0, A1}, {B0, B1}
    • Выход: {A0 - B0, A1 + B1}
  • ADDSUBPS - (сложить-вычесть -упаковано-одиночное )
    • Ввод: {A0, A1, A2, A3}, {B0, B1, B2, B3}
    • Выход: {A0 - B0, A1 + B1, A2 - B2, A3 + B3}

AOS (массив структур)

  • HADDPD - ( горизонтальное добавление-упаковка-двойной )
    • Ввод: {A0, A1}, {B0, B1}
    • Выход: {A0 + A1, B0 + B1}
  • HADDPS ( горизонтальное добавление- упаковка -одиночное )
    • Ввод: {A0, A1, A2, A3}, {B0, B1, B2, B3}
    • Выход: {A0 + A1, A2 + A3, B0 + B1, B2 + B3}
  • HSUBPD - ( горизонтальное-вычитание-упакованное-двойное )
    • Ввод: {A0, A1}, {B0, B1}
    • Выход: {A0 - A1, B0 - B1}
  • HSUBPS - ( горизонтальное-вычитание-упакованное-одиночное )
    • Ввод: {A0, A1, A2, A3}, {B0, B1, B2, B3}
    • Выход: {A0 - A1, A2 - A3, B0 - B1, B2 - B3}
  • LDDQU - Как указано выше, это альтернативная загрузка целочисленного вектора с неверным выравниванием. Это может быть полезно для задач сжатия видео.
  • MOVDDUP , MOVSHDUP, MOVSLDUP - они полезны для комплексных чисел и расчета волн, таких как звук.
  • FISTTP - аналогично старой инструкции x87 FISTP, но игнорирует настройки режима округления регистра управления с плавающей запятой и вместо этого использует режим «измельчения» (усечения). Позволяет исключить дорогостоящую загрузку и повторную загрузку регистра управления на таких языках, как C, где преобразование float-to-int требует стандартного поведения усечения.

Инструкции Intel [ править ]

  • MONITOR, MWAIT - оптимизируют многопоточные приложения, повышая производительность процессоров с Hyper-threading .

Ссылки [ править ]

Внешние ссылки [ править ]

  • X-bit Labs