SSE3 (PNI — Prescott New Instruction) — третья версия SIMD-расширения Intel, потомок SSE, SSE2 и MMX. Впервые представлено 2 февраля 2004 года в ядре Prescott процессора Pentium 4. В 2005 AMD предложила свою реализацию SSE3 для процессоров Athlon 64 (ядра Venice, San Diego и Newark).
Набор SSE3 содержит 13 инструкций: FISTTP (x87), MOVSLDUP (SSE), MOVSHDUP (SSE), MOVDDUP (SSE2), LDDQU (SSE/SSE2), ADDSUBPD (SSE), ADDSUBPD (SSE2), HADDPS (SSE), HSUBPS (SSE), HADDPD (SSE2), HSUBPD (SSE2), MONITOR (нет аналога в SSE3 для AMD), MWAIT (нет аналога в SSE3 для AMD).
Наиболее заметное изменение — возможность горизонтальной работы с регистрами. Если говорить более конкретно, добавлены команды сложения и вычитания нескольких значений, хранящихся в одном регистре. Эти команды упростили ряд DSP- и 3D-операций.
Существует также новая команда для преобразования значений с плавающей точкой в целые без необходимости вносить изменения в глобальном режиме округления.
Google Chrome начиная с версии 89 требует наличия этих инструкций.
Инструкции SSE3
- ADDSUBPD (Add Subtract Packed Double).
- ADDSUBPS (Add Subtract Packed Single).
- HADDPD (Horizontal Add Packed Double).
- HADDPS (Horizontal Add Packed Single).
- HSUBPD (Horizontal Subtract Packed Double).
- HSUBPS (Horizontal Subtract Packed Single).
- FISTTP — преобразование вещественного числа в целое с сохранением целочисленного значения и округлением в сторону нуля.
- LDDQU — загрузка 128bit невыровненных данных из памяти в регистр xmm, с предотвращением пересечения границы строки кеша.
Процессоры с поддержкой SSE3
См. также
Ссылки