В.: Можно ли считать ММХ стратегическим изменением архитектуры процессоров х8б?
О.: Да, это действительно так. Следует особо подчеркнуть, что сегодня мы являемся свидетелями уникального события, которое крайне редко встречается в истории вычислительной техники. ММХ - наиболее значительное изменение архитектуры х86, с тех пор, как Intel представила миру первый 32-разрядный 386-процессор в 1985 году. Теперь важно, чтобы и производители компьютеров, и разработчики программ быстрее освоили эту новую технологию. Последний раз, когда Intel пересматривала архитектуру x86 в таком «интенсивном духе», было 11 лет назад, но большинство пользователей PC только теперь переходит к 32-разрядному программному обеспечению. Сегодня Intel хочет, чтобы технология ММХ намного быстрее нашла свое признание.
В.: В чем сущность технологии ММХ?
О.: Задачи мультимедиа, на которые ориентирована технология ММХ, требуют интенсивных вычислений над целыми числами. Поэтому сущность решения состояла в том, чтобы нарастить архитектуру процессоров Pentium новым модулем, нацеленным на решение данной задачи, - но так, чтобы этот модуль был незаметен для уже существующих программ и операционных систем. При этом, чтобы не нарушать вопросов совместимости с предыдущими поколениями программ, Intel представила восемь новых регистров ММХ как логические регистры, которые отображаются на существующий стек регистров с плавающей запятой (FPU, сопроцессор). В сопроцессорах Pentium имеются восемь универсальных регистров для операций над числами с плавающей запятой, и каждый - шириной 80 битов. При этом в описании числа с плавающей запятой используются 64 бита для мантиссы и 16 битов для экспоненты. Команды ММХ используют только 64-разрядную часть мантиссы каждого из регистров сопроцессора, чтобы сохранить операнды ММХ.
Итак, сущность ММХ состоит в появлении в процессорах Pentium виртуального эквивалента восьми новых регистров и 57 новых команд, которые оптимизированы для задач мультимедиа. Такой прием дает возможность обойтись без радикального изменения стандартной архитектуры х86. Поставщикам операционных систем также не придется придумывать новые коды, чтобы сохранить состояние регистров ММХ - с точки зрения операционной системы они выглядят точно также, как обычные регистры чисел с плавающей запятой.
В.: За счет чего возрастает производительность систем? О.: Как было отмечено выше, команды ММХ используют регистры сопроцессора, но представляют собой команды целочисленного типа. Их 64-разрядные операнды могут содержать восемь упакованных байтов, или четыре упакованных 16-разрядных слова, или два упакованных 32-разрядных двойных слова, или же одиночное 64-разрядное слово учетверенной длины. Т.е. различные по длине данные мультимедиа упаковываются в одно 64-разрядное слово, и над ним производится некое общее действие.
Эта методика называется одиночной командой с множественными данными (SIMD), и ориентирована на алгоритмы и типы данных, которые характерны для программного обеспечения мультимедиа. Примеры включают MPEG-декомпрессию, оценку и компенсацию движения (учет изменения изображения в кадре), преобразование цветового пространства, наложение текстуры, двумерную фильтрацию, умножение матриц, быстрое преобразование Фурье, дискретное косинус-преобразование и т.д. В сущности, то, что объединяет эти процессы - потенциальный параллелизм вычислений. Поэтому ММХ-команды разработаны прежде всего для того, чтобы максимально эксплуатировать такой параллелизм.
Предположим, что программа управляет графикой в 8-разрядном цвете, который чаще всего используется в играх. ММХ-команда может упаковывать восемь пикселей в одиночный операнд и обрабатывать их разом. Обычный же ЦП класса х86 может обрабатывать одновременно только один пиксель. Приложения, работающие со звуком или коммуникационные программы в основном используют шестнадцатиразрядные типы данных, так что одиночная ММХ-команда может зараз обрабатывать по четыре из таких значения в одном разряде. Однако следует подчеркнуть, что для реализации этого алгоритма требуется отдельное программное обеспечение, оптимизированное для ММХ.
В.: Были ли сделаны какие-либо дополнительные усовершенствования в Pentium ММХ, кроме поддержки новых инструкций? О.: Да, существует целый список схемотехнических и архитектурных изменений, которые внесены в Pentium ММХ наряду с поддержкой новых инструкций:
<
• Увеличенный вдвое размер кэш-памяти первого уровня - 16KB для данных и 16К.В для инструкций.
• Новый блок предсказания ветвлении, заимствованный из процессора PentiumPro
• Введена реализация Return Stack, предложенная IBM
• Увеличена на один шаг длина конвейера (тем самым Pentium ММХ перешел в класс суперскалярных суперконвейерных процессоров)
• Проведена работа по улучшению параллельной работа конвейеров чтобы снизить вероятность возникновения заторов
• Введена возможность исполнения двух ММХ - инструкций за один такт процессора, следовательно две SIMD инструкции могут обработать 16 байт данных за один такт.
• Увеличенное вдвое количество Write Buffers, 4 вместо 2.
Благодаря этим изменениям, удалось повысить на 10%-15% производительность работы даже обычных программ, которые не оптимизированы для Pentium ММХ (таких, к примеру, как Word, Excel, PageMaker и т.д.) . В основном это обусловлено повышением размера первичной кэш-памяти в новых процессорах.
В.: Что можно сказать о совместимости ПО и процессоров Pentium ММХ? О.: Как подчеркивается в многочисленных документах корпорации Intel, следует говорить о полной совместимости существующего у пользователей программного обеспечения при его работе на ММХ-системах. Напротив, программные продукты, разработанные с учетом специфики набора инструкций ММХ, совершенно необязательно будут работать на обычных системах с процессором Pentium. Дело в том, что при запуске этих программ они вначале проверяют наличие в системе процессора Pentium ММХ, и если он не обнаружен, могут прекращать свою работу. Intel делегировала такое право разработчикам ПО и каждый разработчик вправе сам определить, хочет ли он, чтобы конкретная версия программы работала на обычном «не - ММХ» компьютере.
На сегодня уже разработано более десятка программных продуктов в таких областях как обработка изображений (Adobe PhotoDeluxe и отечественный PictureMan), видеоконференции, и конечно же, многочисленные компьютерные игры и мультимедиа-энциклопедии. Судя по заявлениям производителей ПО, «на подходе» более сотни наименований программных продуктов, адаптированных под Pentium ММХ. С полным списком существующего ПО можно познакомиться по адресу http://mmx.com/mmx/software/ или http://] 93.124.133.131/contents/mmx/software/index.htm.
В.: Из каких компонентов состоит полноценная ММХ-система? О.: Для того, чтобы создать полноценную ММХ-систему, необходимо, чтобы в компьютере присутствовали три компонента:
}. Процессор Pentium ММХ,
2. Системная плата, поддерживающая процессор Pentium ММХ,
3. Программное обеспечение, оптимизированное для использования инструкций процессора Pentium ММХ.
В.: Чем же отличается системная плата с поддержкой ММХ от обычной системной платы для процессоров Intel Pentium? О.: Здесь также можно говорить о трех отличиях:
• 2 раздельных напряжения питания (2,8В и 3,3В), т.к. ядро новых процессоров питается пониженным напряжением,
• модифицированное гнездо Socket 7, рассчитанное на дополнительный вывод у процессоров Pentium ММХ (платы, имеющие такое гнездо, часто имеют название, начинающееся с обозначения «Р55С...»),
• специально разработанный BIOS, поддерживающий ММХ.
Отвечая на вопросы о том, как проверить, поддерживает ли конкретная система технологию ММХ в полном объеме, представитель Intel (Russia) В. Предтеченский отметил, что если такие условия, как наличие самого процессора Pentium ММХ, двух регуляторов напряжения питания и тип гнезда под ЦП на системной плате можно
определить чисто визуально, то проверить BIOS на поддержку ММХ можно с помощью специальной утилиты, доступной для копирования на узле http://mmx. com.
В.: Какие модели системных плат с поддержкой ММХ существуют сейчас на рынке?
О.: Как было отмечено представителем Intel В. Предтеченским на презентации технологии ММХ, прошедшей 22 января в Москве, в корпорации разработаны 4 модели системных плат, ориентированных на поддержку Pentium ММХ. Из них сейчас серийно выпускается и доступна в России лишь единственная системная плата, имеющая кодовое обозначение ТС430НХ. В обиходе, среди компьютерщиков, ее еще называют TUCSON. Кстати, эти платы поставляются в разных конфигурациях. Те представляют собой весьма «продвинутое» решение, поскольку содержат интегрированный графический адаптер S3 ViRGE с 2 МБ памяти и аппаратной поддержкой 3-мерных игр и очень неплохой звуковой адаптер с волновым синтезом Yamaha OPL3-SA / OLP4-ML. Подробнее с ТС430НХ вы можете познакомиться на врезке к этой статье.
В.: Кто из покупателей наиболее заинтересован в приобретении компьютеров с поддержкой ММХ?
О.: Следует назвать две большие категории покупателей, которые получат заметную выгоду от применения новых систем - это в первую очередь домашние пользователи, ориентирующиеся на современные игры, просмотр видеофильмов на CD-ROM и компьютерные телекоммуникации, и вторая категория - профессионалы-дизайнеры, для которых критично быстродействие компьютеров при создании сложных оригинал-макетов в полноцветной 24-бит. палитре. Такое позиционирование обусловлено новыми возможностями ММХ-систем по повышению производительности работы с растровой и 3-мерной графикой, компрессированными видео и звуком.
В.: Какое значение имеет поддержка ММХ для обычной офисной работы? О.: Как известно, большинство компьютеров в России покупается для офисной работы, и как утверждает статистика, наиболее популярными являются- офисные программы Microsoft. Вообще говоря, приложения наиболее распространенного пакета MS Office 95, ни нового MS Office 97 (Word, Excel, Access и т.д.) не разрабатывались впрямую для поддержки технологию ММХ. Другое дело, что новая версия Windows 95, известная как Service Release 2 (SR2) и которая будет доступна через OEM-партнеров Microsoft, по утверждению Microsoft разработана таким образом, что содержит поддержку ММХ для драйверов DirectX. Поэтому производительность всех приложений Windows 95, включая офисные пакеты, возрастет по двум причинам: увеличенная кэш-память процессоров Pentium ММХ и более быстрая графика.