Сравнение производительности процессоров по индексу iCOMP Index 2.0
Для сравнения процессоров с одинаковой архитектурой (или близких по системе
команд и совпадающих по разрядности операндов) применялся показатель, равный
усредненному числу операций, выполняемых за единицу времени. Чтобы по возможности
не привязываться к быстродействию памяти, операции обычно подразумевали регистровые
операнды. На таком принципе построена единица измерения MIPS (Mega Instruction
Per Second), означающая число миллионов выполненных инструкций за секунду.
Во времена процессоров 80/86 и 80/26 их производительность (вместе с указанием
типа) достаточно четко характеризовалась тактовой частотой. В последующих
моделях процессоров стали появляться довольно значительные изменения архитектуры,
в результате которых тактовая частота перестала быть почти единственным фактором,
определяющим производительность. Для измерения производительности при выполнении
вычислений с плавающей точкой вместо единицы MIPS применяется FLOPS (FLoating
point Operations Per Second) со всеми возможными десятичными приставками
– MFLOPS, GFLOPS, TFLOPS… Для сравнения производительности 32-битных процессоров
с архитектурой х86 фирма Intel в 1992 году предложила свою единицу измерения:
iCOMP Index (Intel COmparative Microprocessor Performance). Эти измерения позволяют
дать конечному пользователю упрощенный способ определения относительной
мощности конкретного процессора. Для определения производительности определяется
скорость выполнения определенной смеси 16- и 32- битных операций 4-ч категорий:
целочисленных, с плавающей точкой, скорость обработки графики и видео. Измерения
проводятся при установке процессора в системную плату, оптимальную для его
архитектуры. Полученные относительные скорости входят в общий показатель с определенными
весовыми коэффициентами. В качестве базового процессора, по отношению
133 МГц
1110
Таблица 1: Индексы производительности iCOMP Index В 1996 году была
введена новая единица: iCOMP Index 2.0, отличающаяся набором показателей и весовыми
коэффициентами, а также выбором базового процессора. Им теперь стал Pentium
120 Мгц, принятый в качестве процессора начального уровня (по прежней шкале
его производительность составляла 1000 единиц). Значения индекса iCOMP 2.0 нельзя
сравнивать со значениями, полученными при оценке с использованием более ранних
версий iCOMP, так как использовались разные наборы тестов. Появление нового
показателя вызвано общей тенденцией преобладающего применения 32-битных операций,
в результате чего из тестовой смеси исключили 16-битные инструкции. Тип приложения
iCOMP
Index
iCOMP Index 2.0
32-битное
30 %
100 %
16-битное
70 %
0 %
Таблица
2: Соотношение 16 и 32 битных приложений в iCOMP Index и iCOMP Index 2.0
Существуют три основные тенденции развития рынка и роста производительности,
которые нашли свое отражение в формуле расчета производительности. 1. Развитие
современных эталонных тестов, которые наилучшим образом отражают реальную работу
популярных приложений. 2. Ускорение перехода к 32-битным операционным системам
и приложениям на настольных системах. 3. Внедрение средств мультимедиа, телекоммуникаций
и 3-мерной графики. Значения индекса iCOMP 2.0 основаны на результатах
оценки производительности процессора при выполнении целочисленных операций,
операций с плавающей запятой, обработки мультимедиа. В свою очередь, оценка производительности
операций с мультимедиа складывается из четырех компонентов - производительности
аудиосистемы, производительности видеосистемы, производительности
системы обработки изображений и производительности трехмерной графики. В общем
виде формула подсчета индекса представлена ниже: Индекс iCOMP 2.0 дает простую
относительную меру производительности. Это не эталонный тест, а совокупность
результатов эталонных тестов, использованных для вычисления индекса относительной
производительности процессоров. Индекс измеряет производительность на традиционных
и “тяжелых” (high-end) деловых приложениях, используя тесты CINT и CFP95
5: Индексы производительности iCOMP Index 2.0 Тесты производительности
при выполнении целочисленных операций эмулируют работу пользователей с повседневными
типовыми приложениями типа текстовых процессоров, электронных таблиц,
финансовых, презентационных программ и др. Традиционные наборы тестовых программ
не были разработаны для измерения производительности систем при работе с
современными приложениями, богатыми графикой, звуком и видео. Наборы тестовых мультимедиа-программ
были специально разработаны для эмуляции работы стандартного
пользователя с такими средствами, как видео MPEG1 и MPEG2, цифровой звук Dolby,
файлы в формате AVI, обработка изображений или видеоконференции, а также с аналогичными
приложениями, насыщенными различными данными. Приложения, применяющие
технику трехмерной визуализации, такие как игры, все чаще используют улучшенную
производительность операций с плавающей точкой, чтобы поддерживать насыщенные
текстуры и расширенные эффекеты освещения. Производительность операций с плавающей
точкой - критический фактор для прикладных программ автоматизированного
рабочего места типа CAD (CAD - Computer Aided Design). Рассмотрим подробно тесты,
составляющие iCOMP INDEX 2.0. Производительность процессора Pentium при выполнении
действий с целыми 32-разрядными числами в среде Windows иллюстрируется с
помощью обычно используемых эталонных тестов Windows. Эти эталонные тесты демонстрируют
высокие потенциальные возможности процессора Pentium корпорации Intel,
когда на нем выполняются 32-разрядные приложения. CPUmark32* представляет собой
работающий в среде Windows 32-разрядный эталонный тест, созданный в Ziff-Davis
Labs. Этот тест был разработан для измерения потенциальной производительности
при выполнении будущих 32-разрядных приложений. Norton SI32* является 32-разрядным
тестом, работающим под Windows 95. Он предназначен для сравнения производительностей
систем однотипной конфигурации (центральный процессор, кэш второго
уровня и оперативная память) при выполнении 32-разрядных приложений. Этот эталонный
тест является составной частью модуля SYSINFO*, входящего в состав Norton
Utilities* for Windows 95. На рис.1 и 2 показана производительность процессоров
Pentium корпорации Intel, при выполнении этих двух популярных 32-разрядных тестов.
Рисунок 1: CPUmark32 Рисунок 2: Norton SI32 Эталонный тест SPEC CPU95* является
программным продуктом, разработанным корпорацией Standard Performance Evaluation
Corp. (SPEC) — некоммерческим объединением, в которое вошли производители
компьютеров, системные интеграторы, университеты, издатели, исследовательские
организации и консультанты со всего мира. Этот эталонный тест был разработан
для проведения измерений производительности, чтобы можно было сравнивать скорость
работы различных компьютерных систем при интенсивных вычислениях. SPEC95 состоит
из двух комплектов эталонных тестов: CINT95* для измерения и сравнения производительности
при интенсивных целочисленных вычислениях и CFP95* для измерения
и сравнения производительности при интенсивных вычислениях с плавающей точкой.
Эти два комплекта позволяют проводить на компонентном уровне эталонны тесты,
измеряющие производительность центрального процессора, архитектуры памяти и компилятора.
Эталонные тесты SPEC выбираются из существующих прикладных программ и
исходные коды эталонных тестов могут работать на самых разных компьютерных платформах.
Каждый эталонный тест проверяется на разных платформах, что позволяет
получить объективные результаты оценки производительности для конкурирующих программных
и аппаратных систем. Комплект CINT95, написанный на языке С, содержит
восемь целочисленных эталонных тестов, требующих интенсивных процессорных вычислений.
Он используется для измерения и подсчета следующих метрик: * SPECint95 —
вычисление среднего геометрического восьми нормированных значений (по одному на
каждый целочисленный эталонный тест), когда для каждого эталонный теста была
проведена компиляция с глубокой оптимизацией. * SPECint_base95* — вычисление среднего
геометрического восьми нормированных значений, когда для каждого эталонный
теста была проведена компиляция с обычной оптимизацией. Комплект CFP95, написанный
на языке Фортран*, содержит десять эталонных тестов, требующих интенсивных
процессорных вычислений с плавающей точкой. Он используется для измерения и
подсчета следующих метрик: * SPECfp95 — вычисление среднего геометрического десяти
нормированных значений (по одному на каждый эталонный тест с плавающей точкой),
когда для каждого эталонный теста была проведена компиляция с глубокой оптимизацией.
* SPECfp_base95* — вычисление среднего геометрического десяти нормированных
значений, когда для каждого эталонный теста была проведена компиляция с
обычной оптимизацией. Так как подавляющее количество современных коммерческих
приложений создано на основе программ, использующих интенсивные целочисленные вычисления,
то смесь инструкций, используемая SPECint95, в наибольшей степени подходит
для коммерческих приложений и, таким образом, является существенно более
эффективным эталонным тестом, чем SPECfp95, для предсказания производительности
процессора при работе с 32-разрядными приложениями для сферы бизнеса. На SPECint95
производительность разработанного Intel процессора Pentium с технологией
MMX и тактовой частотой 200 МГц оказалась на 26 % выше, чем производительность
такого же процессора, но без технологии MMX. Данные о производительности приведены
на нижеследующих рисунках. Рисунки 3 и 4 показывают производительности процессоров
на тестах SPECint95 и SPECfp95, когда в конфигурациях присутствует кэш
второго уровня («кэш L2») объемом 512 Кб. Рисунок 3: CPECint95 Рисунок 4: SPECfp95
Распространение мультимедиа-приложений происходит весьма быстро. Корпорация
Intel разработала Intel Media Benchmark (комплексный тест графики и мультимедиа),
поскольку в настоящее время не существует соответствующих промышленных эталонных
тестов для измерения производительности систем мультимедиа. Intel Media Benchmark
измеряет производительность процессоров, выполняющих алгоритмы, реализованные
в системах мультимедиа. Этот тест содержит программы воспроизведения аудио
и видео, обработки изображений, оцифровки звука с разными частотами дискретизации,
а также программы работы с трехмерной геометрией. Согласно прогнозу, наиболее
вероятным применением микропроцессора в видеоприложениях будет программное
выполнение декомпрессии видео данных. Одним из таких алгоритмов, распространенность
которого постоянно возрастает, является алгоритм, реализующий промышленный
стандарт MPEG1. Этот алгоритм используется в популярной технологии декомпрессии
XING и в условно-бесплатном программном обеспечении Berkeley MPEG1. Используемая
в Intel Media Benchmark компонента воспроизведения видео реализует алгоритм
декомпрессии, описанный в MPEG1 (международный стандарт ISO11172-2). Этот эталонный
тест оценивает влияние процессора на процесс воспроизведение видео. Компонента,
относящаяся к аудио, основана на определении алгоритма декомпрессии звука,
приведенного в описании MPEG1 (международный стандарт ISO11172-3). Эта компонента
Intel Media Benchmark выполняет декомпрессию и воспроизведение стереофонического
аудио клипа. В состав аудио компоненты входят также оцифровка звука
с разными частотами дискретизации, спецэффекты и микширование стереозвука. Компонента
обработки изображений применяет дискретные фильтры к растровым изображениям
с 24-разрядным кодированием цвета. В состав этих фильтров входят: прямоугольный
фильтр, который используют для реализации таких фильтров, как растушевка и
тиснение по методу Гаусса; функция сопряжения изображений, используемая для объединения
двух изображений в одно, и функция преобразования цветового пространства,
используемая для изменения яркости изображения. Трехмерная компонента Intel
Media Benchmark основана на пакете Direct3D* и на геометрической программе из
эталонного теста OpenGL* 3D Triangle. Эти тесты используются для измерения геометрической
составляющей трехмерных вычислений. При этом не измеряется скорость
растеризации, поскольку Intel полагает, что в течение следующих двух или трех
лет растеризация будет реализовываться в плате графического ускорителя. Следовательно,
скорость растеризации не будет зависеть от центрального процессора, поэтому
ее измерение не будет иметь отношение к производительности процессора. Рисунок
5: Intel Media Benchmark Приведу в пример конфигурацию системы, на которой
тестировались процессоры для определения индекса iCOMP Index 2.0. Следует отметить,
что конфигурация систем для тестов SPEC95 и Intel Media Benchmark немного
отличались от приведенной ниже. Рисунок 6: Системная конфигурация В заключение
хочу сказать, что индекс iCOMP отражает условную производительность процессора,
но не системы, в которую он установлен. Для его определения процессор устанавливается
в систему с наивысшей производительностью, допускающую его применение.
Следовательно, тесты, проведенные на различных системных платах, дадут несовпадающие
результаты. Но для конкретной системной платы производительность, естественно,
будет тем выше, чем выше индекс процессора. Данные индексы уместно рассматривать
для процессоров, предназначенных для обычных “настольных” применений –
к серверным применениям больше подходят иные тесты, направленные на интенсивные
операции ввода-вывода. И, конечно же, эти индексы не следует рассматривать как
альтернативу другим тестам и указанию тактовой частоты ядра, они являются одним
из параметров сложной системы оценки производительности.