ХАРАКТЕРИСТИКИ ЭТАЛОННЫХ ПРОГРАММ

Ниже приводятся краткие описания эталонных программ (benchmarks) - тестов, используемых для оценки характеристик микропроцессоров и ЭВМ. Большинство описываемых тестов позволяет оценить эффективность векторизующих и оптимизирующих компиляторов. Некоторые тесты из-за большого объема не помещаются в КЭШ, что дополнительно позволяет проверить эффективность подсистемы обращения к КЭШ.

Dhrystone. Этот стандартный тест спроектирован для изменения как характеристик аппаратуры, так и эффективности компиляторов. Он включает с определенным весом вызовы процедур, циклы, логические и целочисленные арифметические операции, результат выражается в D/s (Dhrystone per second).

Whetstone. Тест спроектирован для оценки характеристик систем при интенсивном использовании операций с плавающей запятой. Это смесь плавающих и целочисленных операций, вычисления трансцедентных функций, обработки массивов и вызовов процедур. Тест основан на статистике научных программ, написанных на Фортране, имеет небольшой размер и помещается в КЭШ. Результат выражается в Mwhet/s (Millions Whetstone per Second).

SPECmark92. Содержит две составляющие: SPECint92 и SPECfp92. Тест SPECint оценивает характеристики процессора и является типичной смесью команд для коммерческих применений. Тест SPECfp используется для технических и научных приложений, где преобладают операции с плавающей запятой. SPECint дает среднее значение для 4-х программ, написанных на Си, результат выражается в МИПС. SPECfp дает среднее значение 6-ти программ, написанных на Фортране, результат выражается в МФлопс.

Linpack. Тест большого объема для научных расчетов на основе пакета для решения систем линейных уравнений. Преимущественно содержит операции с плавающей запятой. Результат - в МФлопс.

Livermore Fortran Kernel. Тест содержит 24 фрагмента на Фортране из реальных программ в области физики. Предназначен для суперЭВМ. Результат - в МФлопс.

Paradox. Этот тестовый файл содержит свыше 7000 имен, адресов и расчетных данных. Измеряется время пяти операций: загрузка и преобразование dBASE файла в текстовый файл, который затем передается на принтер.

AutoCAD. Этот тест содержит трехмерный чертеж из области архитектуры объемом 172 Кбайт. Тест включает пять операций: прорисовку, удаление скрытых линий и др. Измеряется время выполнения теста.

MathCAD. Тест предназначен для решения уравнений в области электроники с интенсивным использованием целочисленных и плавающих операций. Измеряются времена для загрузки и расчета документа, включающего операции над матрицами, двойное интегрирование, вычисление производных и быстрое преобразование Фурье.


ХАРАКТЕРИСТИКИ СУПЕРСКАЛЯРНЫХ МИКРОПРОЦЕССОРОВ
Историческая справка

Первый суперскалярный МП i960 был выпущен фирмой Intel в 1987 году. Затем были разработаны МП SPARC (1987-1989 годы), MIPS (1988-1989 годы), МПi860 (1989 год), Motorola 88?00 (1988 год) и ряд других суперскалярных МП, в частности:

  1. Микропроцессор Pentium был впервые поставлен фирмой Intel в 1993 году как продолжение семейства МП 80x86. Цель его создания - получение быстродействия RISC-МП и полная совместимость на уровне двоичных кодов с программным обеспечением, созданным для всех МП 80x86. В настоящее время разрабатываются МП Р6 (4 конвейера, 1995 год) и Р7 (6 конвейеров к 2000 году). МП Р7 предположительно будет содержать 4 скалярных и 2 векторных процессора, которые будут функционировать на частоте 250 Мгц. Каждый из скалярных процессоров будет содержать 4 млн транзисторов и иметь скорость 700 MIPS. Внутренний КЭШ будет иметь объем 2 Мбайт. Р6 и Р7 снизу вверх будет полностью совместимы с МП 80x86.
  2. Группа фирм AIM (APPLE + IBM + MOTOROLA) совместно разработали семейство МП POWER PC и выпустили его первый образец МП 661 в 1993 году. Семейство предназначено для создания новой идеологии ПЭВМ на базе RISC, которые в перспективе заменят ПЭВМ PC IBM, созданных на базе МП фирмы Intel.
  3. Фирма DEC в 1992 году для создания мощных рабочих станций выпустила МП 21064 с тактовой частотой 250 Мгц, а затем более мощный МП - 21164.
  4. В 1994 году фирма MIPS Computer, известная разработкой суперконвейерных МП, выпустила первый суперскалярный МП MIPS R8000 (MIPS - Microprocessor Without Interlocked Pipeline Stages), а затем МП R10000.
  5. В 1994 году фирма Sun Microsystem Inc. в продолжение развития своей серии SPARC (Scalable Processor Architecture) выпустила мощный МП UltraSPARC.
  6. В 1994-1995 годах фирмой Hewlett-Packard был выпущен МП PA7200 с высокими показателями быстродействия, предполагается к выпуску МП РА8000.

Все указанные МП являются суперскалярными и поэтому характеризуются рядом общих свойств, в частности:

  1. Формирование группы команд для загрузки конвейеров производится динамически в каждом такте. Для этого аппаратно на этапе предвыборки и дешифрации производится анализ зависимости по данным смежных команд. В конвейеры для параллельного исполнения подбираются независимые команды, при этом допускается изменение порядка выполнения команд.
  2. Все МП используют динамическое прогнозирование ветвлений на основе буфера истории переходов. Иногда используется одновременное выполнение альтернативных ветвей.
  3. Некоторые МП строятся таким образом, что число физиче-ских регистров превышает число РОН, определенных архитектурно (РРС620, Mips R10000, P6). Это необходимо для реализации альтернативных ветвей при переходах и для устранения зависимостей по данным, вызванных недостатком РОН. В процессе выполнения команд необходимо производить переименование физических регистров, то есть они выступают в качестве виртуальных.
  4. Для суперскалярных МП используются КМОП технология с шагом сетки 0,8...0,5 мк.

Большинство указанных МП выпускается в однокристальном исполнении, однако в целях получения более высокого быстродействия для МП PPC 620 использовано 10 кристаллов пяти типов, а для МП R8000 - 4 кристалла трех типов.

При разработке суперскалярных МП используются новые системы команд. Их число колеблется в широких пределах от 60...70 (UltraSPAC, Mips) до 220 (ALPHA DEC). Новизна системы команд создает проблемы в разработке прикладного программного обеспечения.

Для МП Pentium без изменения переносится все системное и прикладное ПО на уровне двоичных кодов, созданное для линии 80x86. Однако при этом не используются все возможности архитектуры МП, поэтому ряд фирм (WATCOM, SEMANTEC, MicroWay и др.) разработали оптимизирующие компиляторы, которые позволяют получить коды, работающие в 1,5-2 раза быстрее, чем немодифицированные.

Для МП Power PC и Alpha разработаны модификации опера-ционных систем Windows NT, OS-2, Mac OS, Taligent, Magic Cops. Перевод громадного числа прикладных пакетов, написанных и существующих в кодах МП 80x86, в коды Power PC или Alpha не представляется возможным, по крайней мере, в короткое время. Поэтому для выполнения пакетов используются эмуляторы, например, Soft Windows, Wabi, Toolset и другие.

Для МП MIPS, SPARC и PA ранее наработан достаточно большой объем ПО, тем не менее и для них используются средства эмуляции.

Архитектура описанных выше суперскалярных МП приобретает традиционный характер, поэтому предпринимаются попытки освоить новые архитектуры. Одной из наиболее перспективных является разработка МП РА9000, производимая совместно фирма-ми Hewlett-Packard и Intel. Главная особенность РА9000 состоит в том , что генерация набора команд для одного такта полностью переносится в компилятор, что позволяет достичь высокого уров-ня оптимальности программы и значистельно разгрузить кристалл от схем планирования и упаковки. Тем самым совершается переход к VLIW (Very Long Instruction Word) архитектуре МП. Выпуск РА9000 предполагается в 1998 году и он будет содержать около 20 конвейерных устройств. Предполагается совместимость на уровне двоичных кодов с МП i80x86 и РА7ХХХ и РА8ХХХ.


ЛИТЕРАТУРА

  1. Шпаковский Г.И. Архитектура параллельных ЭВМ: Учеб. пособие для вузов. - Мн.: Университетское, 1989. - 192 с.
  2. Хокни З., Джессхоуп К. Параллельные ЭВМ. - М.: Радио и связь, 1986. - 389 с.
  3. Поспелов Д.А. Введение в теорию вычислительных систем. - М.: Сов.радио, 1972. - 280 с.
  4. Бабаян Б.А., Бочаров А.В., Волин В.С. и др. Многопроцессорные ЭВМ и методы их проектирования. - М.: Высш. шк., 1990. - 143 с.
  5. Головкин Б.А. Параллельные вычислительные системы. - М.: Наука, 1980. - 518 с.
  6. Смирнов А.Д. Архитектура вычислительных систем: Учеб. пособие для вузов. - М.: Наука, 1990. - 320 с.
  7. Прангишвили И.В., Виленкин С.Я., Медведев И.Л. Параллельные вычислительные системы с общим управлением. - М.: Энергоатомиздат, 1983. - 311 с.
  8. Каляев А.В. Многопроцессорные системы с программируемой архитектурой. - М.: Радио и связь, 1984. - 283 с.
  9. Векторизация программ: теория, методы, реализация. Сб. статей: Пер. с англ. и нем. - М.: Мир, 1991. - 275 с.
  10. Вальковский В.А. Распараллеливание алгоритмов и программ. Структурный подход. - М.: Радио и связь, 1989. -176 с.
  11. Тыугу Э.Х. Концептуальное программирование. - М.: Наука, 1984. - 255 с.
  12. Шоу А. Логическое проектирование операционных систем: Пер. с англ. - М.: Мир, 1981. - 360 с.
  13. Дейтел Г. Введение в операционные системы. - М.: Наука, 1984. - 255 с.
  14. Буза М.К., Зимянин Л.Ф. Секционная модель параллельный вычислений // Программирование. 1990. № 4. С. 54-62.
  15. Харп Г., Мэй Д., Уэйман Р., и др. Транспьютеры: архитектура и программное обепечение / Пер. с англ. А.А. Агараняна. - М.: Радио и связь, 1993. - 303 с.
  16. Бахтеяров С.Д., Дудников Е.Е., Евсеев М.Ю. Транспьютерная технология. - М.: Наука, 1990. - С. 3-93.
  17. Краснов С.А. Транспьютеры, транспьютерные вычислительные системы и Оккам. В сб.: Вычислительные процессы и сис-темы / Под ред. Г.И. Марчука. Вып.7. - М.: Наука, 1990. - С. 3-93.
  18. Додонов А.Г., Кузнецова М.Г., Горбачик Е.С. Введение в теорию живучести вычислительных систем. - Киев: Наук. думка, 1990. - 184 с.
  19. Коуги П.М. Архитектура конвейерных ЭВМ / Пер. с англ. - М.: Радио и связь, 1985. - 360 с.
  20. Pentium processor User's Manual, v. 1, Intel Order Number 241428, 1993.
  21. Головкин Б.А. Расчет характеристик и планирование параллельных вычислительных процессов. - М.: Радио и связь, 1983. - 272 с.
  22. Шпаковский Г.И. Метод планирования трасс и архитектура ЭВМ со сверхдлинной командой // ЗРЭ. - 1991. - N 11. -С. 10-27.
  23. Кузюрин Н.Н., Фрумкин М.А. Параллельные вычисления: теория и алгоритмы // Программирование. - 1991. - N 2. - С. 3-19.
  24. Hardenberg H.L. Характеристики процессоров. - Dr. Dobbs Jr., January 1994.

Составлено по материалам книги Г.И. Шпаковский. Организация параллельных ЭВМ и суперскалярных процессоров