Тесты SPEC
Важность создания пакетов тестов,
базирующихся на реальных
прикладных программах широкого
круга пользователей и
обеспечивающих эффективную оценку
производительности процессоров,
была осознана большинством
крупнейших производителей
компьютерного оборудования,
которые в 1988 году учредили
бесприбыльную корпорацию SPEC (Standard
Performance Evaluation Corporation). Основной целью
этой организации является
разработка и поддержка
стандартизованного набора
специально подобранных тестовых
программ для оценки
производительности новейших
поколений высокопроизводительных
компьютеров. Членом SPEC может стать
любая организация, уплатившая
вступительный взнос.
Главными видами деятельности SPEC
являются:
- Разработка и публикация
наборов тестов,
предназначенных для измерения
производительности
компьютеров. Перед публикацией
объектные коды этих наборов
вместе с исходными текстами и
инструментальными средствами
интенсивно проверяются на
предмет возможности
импортирования на разные
платформы. Они доступны для
широкого круга пользователей
за плату, покрывающую расходы
на разработку и
административные издержки.
Специальное лицензионное
соглашение регулирует вопросы
выполнения тестирования и
публикации результатов в
соответствии с документацией
на каждый тестовый набор.
- SPEC публикует ежеквартальный
отчет о новостях SPEC и
результатах тестирования:
"The SPEC Newsletter", что
обеспечивает централизованный
источник информации для
результатов тестирования на
тестах SPEC.
Основным результатом работы SPEC
являются наборы тестов. Эти наборы
разрабатываются SPEC с
использованием кодов, поступающих
из разных источников. SPEC работает
над импортированием этих кодов на
разные платформы, а также создает
инструментальные средства для
формирования из кодов, выбранных в
качестве тестов, осмысленных
рабочих нагрузок. Поэтому тесты SPEC
отличаются от свободно
распространяемых программ. Хотя
они могут существовать под
похожими или теми же самыми
именами, время их выполнения в
общем случае будет отличаться.
В настоящее время имеется два
базовых набора тестов SPEC,
ориентированных на интенсивные
расчеты и измеряющих
производительность процессора,
системы памяти, а также
эффективность генерации кода
компилятором. Как правило, эти
тесты ориентированы на
операционную систему UNIX, но они
также импортированы и на другие
платформы. Процент времени,
расходуемого на работу
операционной системы и функции
ввода/вывода, в общем случае
ничтожно мал.
Набор тестов CINT92, измеряющий
производительность процессора при
обработке целых чисел, состоит из
шести программ, написанных на языке
Си и выбранных из различных
прикладных областей: теория цепей,
интерпретатор языка Лисп,
разработка логических схем,
упаковка текстовых файлов,
электронные таблицы и компиляция
программ.
Набор тестов CFP92, измеряющий
производительность процессора при
обработке чисел с плавающей точкой,
состоит из 14 программ, также
выбранных из различных прикладных
областей: разработка аналоговых
схем, моделирование методом
Монте-Карло, квантовая химия,
оптика, робототехника, квантовая
физика, астрофизика, прогноз погоды
и другие научные и инженерные
задачи. Две программы из этого
набора написаны на языке Си, а
остальные 12 - на Фортране. В пяти
программах используется одинарная,
а в остальных - двойная точность.
Результаты прогона каждого
индивидуального теста из этих двух
наборов выражаются отношением
времени выполнения одной копии
теста на тестируемой машине к
времени ее выполнения на эталонной
машине. В качестве эталонной машины
используется VAX 11/780. SPEC публикует
результаты прогона каждого
отдельного теста, а также две
составные оценки: SPECint92 - среднее
геометрическое 6 результатов
индивидуальных тестов из набора
CINT92 и SPECfp92 - среднее геометрическое
14 результатов индивидуальных
тестов из набора CFP92.
Следует отметить, что результаты
тестирования на наборах CINT92 и CFT92
сильно зависят от качества
применяемых оптимизирующих
компиляторов. Для более точного
выяснения возможностей аппаратных
средств с середины 1994 года SPEC ввел
две дополнительные составные
оценки: SPECbase_int92 и SPECbase_fp92, которые
накладывает определенные
ограничения на используемые
компиляторы поставщиками
компьютеров при проведении
испытаний.
Составные оценки SPECint92 и SPECfp92
достаточно хорошо характеризуют
производительность процессора и
системы памяти при работе в
однозадачном режиме, но они
совершенно не подходят для оценки
производительности
многопроцессорных и
однопроцессорных систем,
работающих в многозадачном режиме.
Для этого нужна оценка пропускной
способности системы или ее емкости,
показывающая количество заданий,
которое система может выполнить в
течение заданного интервала
времени. Пропускная способность
системы определяется прежде всего
количеством ресурсов (числом
процессоров, емкостью оперативной
и кэш-памяти, пропускной
способностью шины), которые система
может предоставить в распоряжение
пользователя в каждый момент
времени. Именно такую оценку,
названную SPECrate и заменившую ранее
применявшуюся оценку SPECthruput89, SPEC
предложила в качестве единицы
измерения производительности
многопроцессорных систем.
При этом для измерения выбран
метод "однородной нагрузки"
(homogenous capacity metod), заключающийся в
том, что одновременно выполняются
несколько копий одной и той же
тестовой программы. Результаты
этих тестов показывают, как много
задач конкретного типа могут быть
выполнены в указанное время, а их
средние геометрические значения
(SPECrate_int92 - на наборе тестов,
измеряющих производительность
целочисленных операций и SPECrate_fp92 -
на наборе тестов, измеряющих
производительность на операциях с
плавающей точкой) наглядно
отражают пропускную способность
однопроцессорных и
многопроцессорных конфигураций
при работе в многозадачном режиме в
системах коллективного
пользования. В качестве тестовых
программ для проведения испытаний
на пропускную способность выбраны
те же наборы CINT92 и CFT92.
При прогоне тестового пакета
делаются независимые измерения по
каждому отдельному тесту. Обычно
такой параметр, как количество
запускаемых копий каждого
отдельного теста, выбирается
исходя из соображений оптимального
использования ресурсов, что
зависит от архитектурных
особенностей конкретной системы.
Одной из очевидных возможностей
является установка этого параметра
равным количеству процессоров в
системе. При этом все копии
отдельной тестовой программы
запускаются одновременно, и
фиксируется время завершения
последней из всех запущенных
программ.
С середины 1994 года SPEC ввела две
дополнительные составные оценки:
SPECrate_base_int92 и SPECrate_base_fp92, которые
накладывает ограничения на
используемые компиляторы.
Следует отметить, что SPEC объявила
о полном переходе с середины 1996
года на новый (третий) комплект
тестов - CINT95, CFP95. Эти тесты
удовлетворяют следующим
ограничениям и требованиям:
- размер кода и данных должен
быть достаточно большим, чтобы
он гарантированно не
размещался целиком в
кэш-памяти
- время выполнения тестов должно
быть увеличено с секунд до
минут
- используемые фрагменты
программ должны быть
реалистичными
- применение
усовершенствованного способа
измерения времени
- реализация более удобных
инструментальных средств
- стандартизация требований к
компиляторам и методов вызова
Новый комплект тестов состоит из 8
целочисленных программ, написанных
на языке Си и 10 программ
вещественной арифметики,
написанных на Фортране. Новые
метрики получили соответствующие
названия: SPECint95, SPECfp95, SPECint_base95,
SPECfp_base95, SPECrate_int95, SPECrate_fp95, SPECrate_base_int95
и SPECrate_base_fp95.
[Предыдущая глава]
[Оглавление] [Следующая
глава]
|