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 состоял из 170 инструкций (включая 46 базовых инструкций), многие из которых предназначены для улучшения однопоточной производительности. Некоторые инструкции SSE5 являются 3-операндными инструкциями , использование которых увеличит среднее количество инструкций за цикл, достижимое кодом x86 . [2] Избранные новые инструкции включают: [3]
AMD заявила, что SSE5 обеспечит значительное повышение производительности, особенно в высокопроизводительных вычислениях (HPC), мультимедиа и приложениях компьютерной безопасности , включая 5-кратный прирост производительности для шифрования AES и 30-процентный прирост производительности для дискретного косинусного преобразования (DCT), используемого, например, при обработке видео. [2]
Спецификация SSE5 включала предлагаемое расширение общей схемы кодирования инструкций x86 , чтобы позволить инструкциям иметь более двух операндов. В 2008 году Intel объявила о своем запланированном наборе инструкций AVX , который предлагал другой способ кодирования инструкций с более чем двумя операндами. Две предложенные схемы кодирования, SSE5 и AVX, являются взаимно несовместимыми, хотя схема AVX имеет определенные преимущества перед схемой SSE5: самое главное, AVX имеет много места для будущих расширений, включая большие размеры векторов.
В мае 2009 года AMD опубликовала пересмотренную спецификацию для запланированных будущих инструкций. Эта редакция изменяет схему кодирования, чтобы сделать ее совместимой со схемой AVX, но с другим префиксным байтом, чтобы избежать перекрытия между инструкциями, представленными AMD, и инструкциями, представленными Intel.
Пересмотренный набор инструкций больше не носит название SSE5, которое критиковалось за то, что оно вводило в заблуждение, но большинство инструкций в новой редакции функционально идентичны исходной спецификации SSE5 — отличается только способ кодирования инструкций. Планируемые дополнения к набору инструкций AMD состоят из трех подмножеств:
И XOP, и FMA4 удалены в новых процессорах AMD, использующих микроархитектуру Zen . [4]
Но поскольку Zen — это проект с чистого листа, в процессорах Bulldozer есть некоторые расширения набора инструкций, которых нет в Zen/znver1. К числу тех, которых больше нет, относятся FMA4 и XOP.