Команды ММХ, SSE (ММХ-2) Расширение 3Dnow! SSE-2, SSE-3 презентация

Содержание

ОСНОВНЫЕ ТЕМЫ ЛЕКЦИИ Команды ММХ Команды SSE (ММХ-2, KNI , SIMD- FP) Расширение 3Dnow! Расширение SSE-2 Расширение SSE-3

Слайд 1Команды ММХ, SSE (ММХ-2) Расширение 3Dnow!

SSE-2, SSE-3

Слайд 2ОСНОВНЫЕ ТЕМЫ ЛЕКЦИИ
Команды ММХ
Команды SSE (ММХ-2, KNI

, SIMD- FP)
Расширение 3Dnow!
Расширение SSE-2
Расширение SSE-3

Слайд 3 Идея ММХ (Matrix-Math eXtension) родилась как средство, решающее часть

проблем с нехваткой быстродействия центрального процессора для задач мульти-медиа приложений, характеризующихся следующими факторами:
➢ небольшие целочисленные данные (например, 8-ми битовые графические пиксели или 16-ти битовые элементы звукового потока), которые обрабатываются в значительных объемах;
➢ небольшие, многократно повторяющиеся циклы;
➢ частые умножения и накапливания результата (выражения типа: «а = а + b»);
➢ постоянные циклические обращения к памяти.

Расширение ММХ (1997 г.)


Слайд 4 Например, процесс изменения яркости изображения (содержащего более миллиона 8-ми

битовых пиксе-лей) состоит из прибавления к каждому элементу мас-сива определенной константы. Для этого необходимо:
➢    загрузить 8-ми битовое значение цвета из мас-сива в регистр процессора;
➢      добавить к нему константу;
➢      записать сумму в память и
     повторить этот цикл для каждого пикселя.

Однако процессор PENTIUM – 32-х разрядный и мог бы одновременно выполнить сложение данных сразу для четырех точек и затем одновременно записать результат в четыре смежные ячейки памяти.

Слайд 5Параллельность вычислений – ключевой момент в технологии ММХ. Поэтому большинство новых

ММХ-команд построены по принципу «ОДНА КОМАНДА - МНОЖЕСТВО ДАННЫХ» (SINGLE INSTRUCTION MULTIBLE DATA – SIMD).
Так как процессоры PENTIUM имеют 64-х разрядную шину данных, базовая длина слова данных новых ММХ-инструкций выбрана тоже 64 разрядной.
Основной тип данных ММХ – упакованное 64-х битовое целочисленное слово, которое состоит из нескольких меньших по разрядности данных и хранится в одном из ММХ-регистров или в памяти компьютера.

Слайд 6Форматы ММХ-данных
64-х битовое слово может представлять четыре подтипа данных:
➢  упакованные байты

(8 * 8 бит, Packed Byte),
➢  упакованные слова (4 * 16 бит, Packed Word),
➢ упакованные двойные слова (2 * 32 бита, Packed Doubleword)
и
➢ счетверенное слово (1 * 64 бита, Quad-word).

Слайд 78-ми битовые упакованные данные могут использоваться при обработке изображений, где каждый

байт представляет отдельный пиксель изображения или один из 8-ми битовых компонентов цвета в 24/32-х битовой цветовой модели (красный, зеленный, синий и альфа-канал (прозрачность)).
16-ти битовые данные чаще используются в средствах связи (модемы) и при обработке аудио-сигналов.
32-х и 64-х битовые значения полезны при промежуточных вычислениях над 8-ми или 16-ти битовыми данными.

Слайд 8ММХ-регистры «отражены» на имеющиеся у PENTIUMа восемь регистров для чисел с

плавающей запятой (FP-регистры).

Слайд 9 Данные, используемые в мульти-медиа-приложе-ниях, обычно имеют небольшую разрядность. 8-ми битовое

значение цвета может передать только 256 оттенков цветовой составляющей (или более 16 миллионов цветовых оттенков для трех цветов: R,G,B).
При использовании 8-ми битовых данных накопление цвета многих точек может выйти за предел представимых чисел. Обычно, если сложение двух чисел приводит к переполнению регистра, то старшие биты результата сохраняются во флагах CF или VF, а УСЕЧЕННАЯ СУММА сохраняется в регистре-приемнике.

УСЕЧЕНИЕ И НАКОПЛЕНИЕ РЕЗУЛЬТАТОВ


Слайд 10Для предотвращения последствий таких ситуаций необходимо производить проверку флагов на переполнение.
В

мульти-медиа-приложениях обычно требуется не УСЕЧЕНИЕ РЕЗУЛЬТАТА, а так называемое «НАСЫЩЕНИЕ», т.е. при достижении максимального (или минимального) значения – данные больше не изменяются.
Технология ММХ предусматривает 57 новых команд. Многие из них выполняют одни и те же операции (например, сложение или вычитание) над операндами различного размера (8, 16, 32 или 64 бита), а также, в зависимости от того, рассматривают ли они данные как «ЦЕЛЫЕ СО ЗНАКОМ» или «ЦЕЛЫЕ БЕЗ ЗНАКА».

Слайд 11 Различаются инструкции и по выполнению ими опе-раций «С УСЕЧЕНИЕМ» или

«НАСЫЩЕНИЕМ».
Синтаксис инструкций ММХ включает следующие элементы:
➢  префикс – P (Packed), указывающий на обработку упакованных ММХ-форматов;
➢      мнемонику операции (например, ADD, CMP, XOR...);
➢      суффикс:
- US (Unsigned Saturation) – насыщение беззнаковое;
- S (Signed Saturation) – насыщение знаковое;
- B,W,D,Q – тип данных : упакованные байты, слова, двойные слова или учетверенное слово.

Слайд 12 57 команд ММХ можно разбить на несколько групп :
➢ Команды

пересылки (PMOV), упаковки (PACKSS), чередования (PUNPCKH);
➢ Арифметические команды (PADD, PSUB, PMUL , PMADD );
➢ Логические команды (PAND, PANDN, POR, PXOR);
➢ Команды сравнения (PCMP) ;
➢ Команды сдвига (PSHIM, PSLL, PSRL, PSRA).

ММХ-команды


Слайд 13Все ММХ-команды, за исключением умножения, выполняются за ОДИН такт процессора. При

умножении происходит задержка на три такта, однако, за счет внутреннего конвейера АЛУ, все последующие операции умножения выполняются без задержек.
Использование ММХ-команд в программах обработки изображений, компрессии аудио-, видеоданных и других вычислениях позволяет увеличить производительность в 1,5-2 раза, а в некоторых случаях – и до четырех раз.

Слайд 14Команды SSE (ММХ-2, KNI , SIMD-FP) 1999 г.
Основное отличие

новой технологии (ММХ-2), так называемое, потоковое расширение – SSE (Streaming SIMD Extensions), получившей официальное название «Новый набор инструкций KATMAI» – KNI (Katmai New Instruction), – использование параллельных вычислений над числами с плавающей запятой одинарной точности (SIMD-FP, Single Instruction Multiple Data –– Floating Point).
В добавление к 57 ММХ-командам процессор PЕNTIUM-3 (более раннее название – KATMAI) имеет еще 70 команд, ориентированных на SIMD-FP, направленных на обработку 3D-приложений,

Слайд 15В состав новых 70-ти команд дополнительно введены целочисленные инструкции с регистрами

ММХ и команды управления кэшированием.
Добавлены специализированные команды для ускорения потоковой трансформации трехмерных объектов, эффектов освещения, атмосферных эффектов и др.
Поток в данном контексте подразумевает, что с его данными должны выполняться однотипные операции. Кроме того, данные, уже прошедшие обработку, в дальнейшем этим вычислительным процессом использоваться не будут и ими не следует засорять КЭШ.
Появились инструкции загрузки данных в КЭШ, а также записи в память, минуя КЭШ.

Слайд 16В архитектуру процессора PENTIUM-3 (KATMAI) добавлены восемь новых 128-ми битовых регистра

ХММ0…ХММ7 (eXtended MultiMedia) для одновременной обработки четырех чисел с плавающей запятой одинарной точности (4 * 32 бита).
Это позволяет использовать одновременно либо обработку вещественных чисел в блоке SIMD-FP и целых – в ММХ, либо SIMD-FP и основной блок с плавающей запятой двойной точности.

Слайд 17Расширение 3Dnow! (1998 г.)
Расширение 3Dnow!, введенное фирмой AMD в

процессорах К6-2, расширяет возможности ММХ. Оно позволяет оперировать с новым типом данных – парой упакованных чисел в формате с плавающей точкой. Эти числа занимают по 2 * 32 бита в 64-х битовых регистрах ММХ.
В систему команд добавлена 21 новая инструкция, большая часть которых предназначена для обработки упакованных чисел с плавающей точкой.
Имеется и новая целочисленная ММХ-инструкция усреднения восьми пар 8-ми битовых чисел, предназначенная для декодеров MPEG-2.

Слайд 18Расширение 3Dnow! работает с упакованными целочисленными форматами ММХ, а также с

упакованными данными в FP-формате одинарной точности. FP-арифметика выполняется с насыщением.
Технология 3Dnow! дает заметный результат при обработке графики, хотя не претендует на вытеснение графических ускорителей, а призвана служить их мощным дополнением.
При этом сохраняется программная совместимость с прежними процессорами и операционными системами (поскольку регистры ММХ отобра-жаются на регистры FPU, для них работают традиционные механизмы сохранения контекста в многозадачных ОС).


Слайд 19В процессорах Athlon набор инструкций 3Dnow! был дополнен. Появилось 5 новых

инструкций для сигнальных процессоров (DSP), работающими с упакованными FP-числами. Еще 19 инструкций расширяют набор инструкций ММХ, а также служат для управления кэшированием.
В процессорах Athlon-МР и Athlon-XР добавлен полный набор инструкций SSE фирмы INTEL.

Слайд 20Расширение SSE-2 (2000 г.)
В новом процессоре PENTIUM-4 основные ново-введения направлены на

ускорение обработки потоковых данных, что обеспечивает максимальную производительность при обработке видео, графических изображений, работе с мультимедиа и в других сложных задачах.
Добавлены дополнительные 144 команды (SSE-2), ускоряющие работу широкого спектра потоковых ресурсоемких приложений.
Среди них также 128-ми разрядные команды целочисленных вычислений с механизмом SIMD.

Слайд 21Расширение SSE-3 (2003 г.)
В процессор PENTIUM-4 на ядре PRESCOTТ, который появился

в конце 2003 г., добавлены еще 13 новых команд SIMD-FP, получившие название SSE-3.

Слайд 22Вопросы для экспресс-контроля
Объясните необходимость появления ММХ-команд
Зачем ММХ-регистры отображены на FP-реги-стры?
Чем отличаются

мнемоники ММХ-команд от остальных команд процессора?
Зачем нужны команды «с насыщением» и команды «с усечением»?
Основное отличие команд SSE от ММХ-команд
Особенности команд 3Dnow!
Какие новые команды появились в процессорах PENTIUM-4?

Слайд 23Лекция окончена
СПАСИБО ЗА
ВНИМАНИЕ


Обратная связь

Если не удалось найти и скачать презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое ThePresentation.ru?

Это сайт презентаций, докладов, проектов, шаблонов в формате PowerPoint. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами с другими пользователями.


Для правообладателей

Яндекс.Метрика