stringtranslate.com

SSE5

SSE5 (сокращение от Streaming SIMD Extensions version 5 ) — расширение набора инструкций SIMD , предложенное AMD 30 августа 2007 года в качестве дополнения к 128-битным основным инструкциям SSE в архитектуре AMD64 .

AMD решила не внедрять SSE5, как изначально предлагалось. В мае 2009 года AMD заменила SSE5 тремя меньшими расширениями набора инструкций, названными XOP , FMA4 и F16C , которые сохраняют предложенную функциональность SSE5, но кодируют инструкции по-другому для лучшей совместимости с предложенным набором инструкций AVX от Intel .

Три набора инструкций, производных от SSE5, были введены в ядре процессора Bulldozer , выпущенном в октябре 2011 года по 32-нм техпроцессу. [1]

Совместимость

Пакет расширений SSE5 от AMD не включает в себя полный набор инструкций SSE4 от Intel , что делает его конкурентом SSE4, а не преемником.

Улучшения SSE5

Предложенный набор инструкций SSE5 состоял из 170 инструкций (включая 46 базовых инструкций), многие из которых предназначены для улучшения однопоточной производительности. Некоторые инструкции SSE5 являются 3-операндными инструкциями , использование которых увеличит среднее количество инструкций за цикл, достижимое кодом x86 . [2] Избранные новые инструкции включают: [3]

AMD заявила, что SSE5 обеспечит значительное повышение производительности, особенно в высокопроизводительных вычислениях (HPC), мультимедиа и приложениях компьютерной безопасности , включая 5-кратный прирост производительности для шифрования AES и 30-процентный прирост производительности для дискретного косинусного преобразования (DCT), используемого, например, при обработке видео. [2]

Пересмотр 2009 года

Спецификация SSE5 включала предлагаемое расширение общей схемы кодирования инструкций x86 , чтобы позволить инструкциям иметь более двух операндов. В 2008 году Intel объявила о своем запланированном наборе инструкций AVX , который предлагал другой способ кодирования инструкций с более чем двумя операндами. Две предложенные схемы кодирования, SSE5 и AVX, являются взаимно несовместимыми, хотя схема AVX имеет определенные преимущества перед схемой SSE5: самое главное, AVX имеет много места для будущих расширений, включая большие размеры векторов.

В мае 2009 года AMD опубликовала пересмотренную спецификацию для запланированных будущих инструкций. Эта редакция изменяет схему кодирования, чтобы сделать ее совместимой со схемой AVX, но с другим префиксным байтом, чтобы избежать перекрытия между инструкциями, представленными AMD, и инструкциями, представленными Intel.

Пересмотренный набор инструкций больше не носит название SSE5, которое критиковалось за то, что оно вводило в заблуждение, но большинство инструкций в новой редакции функционально идентичны исходной спецификации SSE5 — отличается только способ кодирования инструкций. Планируемые дополнения к набору инструкций AMD состоят из трех подмножеств:

  1. XOP : инструкции умножения-накопления целочисленных векторов, горизонтальное сложение целочисленных векторов, сравнение целочисленных векторов, инструкции сдвига и поворота, инструкции перестановки байтов и условного перемещения, извлечение дробей с плавающей запятой.
  2. FMA4 : Умножение-накопление векторов с плавающей точкой .
  3. F16C : Преобразование чисел с плавающей точкой половинной точности .

И XOP, и FMA4 удалены в новых процессорах AMD, использующих микроархитектуру Zen . [4]

Смотрите также

Ссылки

  1. ^ Хруска, Джоэл (14 ноября 2008 г.). «AMD Fusion теперь отодвинут на 2011 год». Ars Technica .
  2. ^ ab Vance, Ashlee (30 августа 2007 г.). "AMD планирует однопоточный прирост с расширениями x86". The Register .
  3. ^ "128-битный набор инструкций SSE5". AMD Developer Central. Архивировано из оригинала 15 января 2008 г. Получено 28 января 2008 г.
  4. ^ Майкл Ларабель (3 марта 2017 г.). «Влияние настройки компилятора GCC Zen на производительность AMD Ryzen». Phoronix . Но поскольку Zen — это проект с чистого листа, в процессорах Bulldozer есть некоторые расширения набора инструкций, которых нет в Zen/znver1. К числу тех, которых больше нет, относятся FMA4 и XOP.

Внешние ссылки