Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект по МПиМК / Лекция 08.doc
Скачиваний:
142
Добавлен:
15.06.2014
Размер:
153.09 Кб
Скачать

2. Технология sse2

У микропроцессора Intel Pentium 4 появилась новая группа инструкций, получивших название SSE2. Цифра 2 в названии указывается для того, чтобы отличить новую группу от одноименной, уже поддерживаемой микропроцессором Pentium III. Остальная часть имени расшифровывается как Streaming SIMD Extensions (потоковое SIMD расширение). В свою очередь SIMD является аббревиатурой от Single Instruction Multiple Data (одна инструкция много данных). В состав SSE2 входят операции для работы с 64-х разрядными целыми и вещественными (представление с удвоенной точностью) числами.

Согласно документации Intel в группу SSE2 входят инструкции, выполняющие 144 новые операции. Если же вы подсчитаете количество новых имен инструкций, то их окажется значительно меньше. Расхождение объясняется тем, что одному имени инструкции может соответствовать несколько разных кодов операций. Типичный пример инструкции пересылки данных, у которых код операции зависит от направления пересылки - из регистра в память или из памяти в регистр.

Большинство новых инструкций двухадресные. Первый операнд является приемником (dest), а второй источником (src). Приемник, как правило, находится в 128-bit регистре xmm, источник может находиться как в регистре xmm, так и в оперативной памяти (ОЗУ). Исключением являются только инструкции пересылки, у которых приемник может располагаться в ОЗУ. Третий операнд, если он есть, является целым числом, размер которого не превышает одного байта.

При работе с вещественными числами возможно выполнение одной и той же операции над одной или двумя парами чисел. В первом случае имя операции оканчивается буквами SD (скалярные данные), а во втором - буквами PD (упакованные данные). В данном случае выражение "упакованные данные" означает, что два 64-bit числа расположены в одном 128-bit регистре или в ОЗУ подряд друг за другом. А выражение "скалярные данные" означает, что одно 64-bit число расположено в младшей половине 128-bit регистра. По утверждению специалистов Intel скалярные операции более рационально используют ресурсы процессора чем аналогичные операции, выполняемые FPU.

3. Технология sse3

С выпуском нового 90-нм процессора Pentium 4 под кодовым названием Prescott, анонсированного Intel 2 февраля 2004 года архитектура Intel NetBurst приобрела ряд нововведений и дополнений, позволяющих по праву назвать процессор Prescott новым поколением процессоров семейства IA-32. Ключевыми моментами улучшенной архитектуры NetBurst, согласно Intel, являются следующие:

  • Поддержка технологии Hyper-Threading (которая, судя по всему, не претерпела каких-либо изменений);

  • Углубленный конвейер, позволяющий достичь еще более высоких частот;

  • Высокая частота системной шины (800 MHz, появившаяся еще со времен последних моделей Northwood);

  • Увеличенный вдвое объем первого и второго уровней кэша, а также большее количество буферов сохранения (store) и объединения записи (write-combining);

  • Поддержка новых SIMD расширений под кодовым названием Prescott New Instructions (официально — SSE3).

Ряд изменений коснулся информации, выдаваемой инструкцией CPUID (в то время как поведение самой инструкции не изменилось, за исключением большего количества выдаваемых значений). Специфичными для Prescott являются следующие значения CPUID:

  • Prescott New Instructions (SSE3): Extended Features, бит 0;

  • Debug Trace Store Qualification: Extended Features, бит 4;

  • Улучшенная технология Intel SpeedStep (использующая MSR процессора): Extended Features, бит 7;

  • Поддержка инструкций MONITOR/MWAIT: Extended Features, бит 3.

Ключевым элементом новой, улучшенной архитектуры Prescott является, конечно же, поддержка ряда новых инструкций, получивших кодовое название Prescott New Instructions (PNI) и, далее, официальное — SSE3. Это набор из 13 новых инструкций, призванных улучшить производительность процессора в ряде операций потоковой обработки данных. Дополнения коснулись набора команд SSE (Streaming SIMD Extensions), работающих с четырехкомпонентными векторами с одинарной точностью, SSE2 (Streaming SIMD Extensions 2), работающих с двумерными векторами чисел двойной точности, а также x87 FPU. Новая технология является полностью совместимой с существующим программным обеспечением (ПО), разработанным под архитектуру IA-32. В связи с этим гарантируется, что имеющееся ПО будет работать корректно без необходимости какой-либо модификации и на новых процессорах, поддерживающих расширения SSE3. Более того, использование расширений SSE3 не требует какой-либо дополнительной поддержки со стороны операционной системы, связанной с сохранением и восстановлением состояния процессора при переключении контекста, за исключением той, которая является необходимой (и уже имеется) для поддержки потоковых расширений SSE/SSE2.

96

Соседние файлы в папке Конспект по МПиМК