Тесты производительности: факты, обман или фантазии?

Совсем недавно мне на глаза попался интереснейший отчет Роберта Р. Коллинза, озаглавленный "Как заставить Pentium 166 МГц обогнать Pentium II 300 МГц". Очень поучительное чтение, полезное и умельцам-любителям, и профессионалам. Без дальнейших предисловий предлагаю вашему вниманию этот текст.

Недавно я встретил знакомого, сделавшего карьеру, тестируя производительность компьютерного оборудования. В свое время он нашел это дело настолько прибыльным, что бросил постоянную работу и с головой ушел в тестирование. Так вот, он мне сказал: "Скажи, чего ты хочешь, а я подберу тест, который выдаст желаемые результаты". Меня это не удивило, поскольку я тоже имел отношение к тестированию. Обыкновенные же покупатели могут неприятно удивиться, особенно, если им уже приходилось делать свой выбор, основываясь на результатах тестирования.

В прошлом году редакция одного известного компьютерного журнала оплакивала тестирование машины на базе AMD K6. Она жаловалась, что сравнение с компьютером на базе Intel Pentium MMX, который проверялся раньше, - нечестное, поскольку у AMD была лучшая дисковая подсистема.

В то время винчестер Seagate Cheetah Ultra-Wide SCSI был новинкой, во время проверки интеловской машины его не давали даже на бета-тестирование. Но когда тестировался Intel, новинкой был диск Seagate Barracuda 4LP Ultra-Wide SCSI. Виноваты и AMD, и Intel, снабдившие свои компьютеры, предназначенные для тестирования, лучшими дисками из имевшихся в тот момент на рынке.

Нет ничего нового в том, что производители ставят на "образцовые" компьютеры наилучшую периферию. Мы так делали, когда я работал в ACER, Intel сделал так для проверки Pentium MMX. С какой стати журнал удивлялся, когда то же самое совершил AMD? Полагаю, что будь редакция действительно озабочена, то они вставили бы Barracuda 4LP в компьютер AMD и повторили бы тесты, а без этого статья об AMD получилась подтасованной.

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

Вообще говоря, я обнаружил три основных разновидности тестов:

А) нацеленные на измерение общесистемной производительности;

Б) предназначенные для оценки частных аспектов производительности, например, числа операций процессора или полосы пропускания конкретных подсистем;

В) служащие целям торговой рекламы, запутывания публики или ввода ее в заблуждение.

Среди наборов тестов, применяющихся в бизнесе, популярнее прочих Sysmark компании BAPCO и Winstone производства Ziff-Davis. И Sysmark, и Winstone предназначены для оценки общесистемной производительности. Прочие показатели играют второстепенную роль. Главное - общая производительность, служащая пробным камнем.

Среди тестов для изучения таких компонентов компьютера, как процессор или дисковая подсистема, самые популярные - WinBench и SPEC. WinBench использует технику так называемого "проигрывания", когда при работе избранной программы в системный журнал заносятся выполняемые программой специфические операции, например, вызовы графики, а потом эти операции повторно "проигрываются", но уже сами по себе, изолированно от прочих. WinBench оценивает каждую подсистему компьютера: винчестер, CD-ROM, процессор, память и графику. SPEC измеряет "чистую" производительность процессора при операциях с целыми или вещественными числами (SpecINT95 и SpecFP95).

Кроме перечисленных, есть еще тесты, которые относятся к категории пропагандистских. Их результаты, опубликованные в печати, следует рассматривать с большой осторожностью. Например, тест Intel ICOMP версии 1.0 является образцом программы для тестирования производительности микропроцессоров, разработанной непосредственным производителем этих микропроцессоров. ICOMP 1.0 - собственный тест Intel, принадлежащий компании. Корпорация не опубликовала формул, по которым осуществлялся подсчет индексов производительности. Больше того, Intel не давала никому лицензий на право использования ICOMP. Таким образом, результаты теста не могли быть проверены независимой организацией. К своей чести Intel выпустила 2-ю версию ICOMP, обнародовав методику расчетов на своем сайте (http://www.intel.com/procs/perf/icomp/faxback/ICOMP.HTM), придав ей статус открытого стандарта, который может быть проверен.

Короче говоря, производителям известно, что периферия больше влияет на показатели проверок, чем дизайн материнской платы или модель процессора. Различия между материнскими платами никогда не выливаются в различие результатов тестирования, превышающее один или два процента. Аналогичным образом выбор процессора от AMD, Cyrix, Intel или IDT не является существенным фактором с точки зрения результатов проверки производительности.

Следовательно, если у вас нет каких-либо особенных требований к компьютеру, то вы поступите мудро, выбрав материнскую плату попроще, процессор помедленнее, а на сэкономленные деньги приобретете высокопроизводительную периферию.

Итак, вызов брошен. Для доказательства своей правоты я заставлю Pentium, работающий на частоте 166 МГц, как бы обогнать Pentium II с тактовой частотой 300 МГц. Как я это сделаю? Запросто. Начнем с Pentium-166 в основной конфигурации, являющей образец типичного домашнего компьютера. Потом заменим на нем дисковую и видео подсистемы. С этими двумя незначительными улучшениями мы сможем достичь большей производительности (по результатам тестирования), чем для компьютера Pentium II-300, имеющего ту же основную конфигурацию, что первоначально была у Pentium-166.

Эта демонстрация призвана подчеркнуть несколько важных принципов:

1) Берегитесь верить результатам тестирования. Тщательно исследуйте, какая периферия использовалась. Если вы не сможете получить ответа на этот вопрос, считайте результаты недостоверными.

2) Берегитесь верить сравнению результатов, полученных в ходе разных тестов. Если только проверяемые машины не имеют одинаково настроенной одинаковой периферии, результаты несопоставимы. К примеру, в одном тесте графическая плата может проверяться в режиме 1024х768 с восьмибитовым цветом, а в другом тесте - в режиме 1024х768 с 24-битовым цветом. В последнем случае для построения тестового изображения нужно передать видеоплате в три раза больше данных. Естественно, показатели будут ниже.

3) Правильно подобранный жесткий диск и видеоплата способны существенно поднять производительность компьютера. Что бы ни твердили завзятые геймеры (для игры в Quake не нужен Pentium II-300). Достаточно обновить пару компонентов компьютера.

4) Приобретение самых дорогих компонентов не всегда дает наибольший прирост производительности.

5) Угробить производительность 300 мегагерцовой машины очень просто: достаточно неправильно подобрать периферийные компоненты.

Для осуществления проверки я выбрал тесты из двух главных категорий: Winstone и Sysmark, оценивающие общую системную производительность. Как уже упоминалось, Winstone обнародован компанией Ziff-Davis. Sysmark принадлежит BAPCO, в его создании принял участие консорциум производителей аппаратуры (в т.ч. Intel) и программного обеспечения. Больше того, офис BAPCO расположен на территории штаб-квартиры Intel.

Вообще говоря, я считаю методологию BAPCO более научной, чем Winstone. Winstone позволяет настраивать головокружительное количество конфигурационных опций, а BAPCO - нет. Бесконечная гибкость настроек Winstone делает его более подходящим для разного рода манипуляций. К сожалению, участие Intel в BAPCO привело к меньшему признанию теста Sysmark в компьютерной индустрии по сравнению с Winstone.

Для конкретных проверок я выбрал WinBench и SpecINT. Первый тест делает попытку проверить все подсистемы, а второй - только процессор.

Итак, я собрал два компьютера настолько похожими, насколько это было возможно. В первой таблице описаны обе машины и доводы в пользу каждого решения. Эти компьютеры считались эталонными для всех моих проверок. Перечисленные компоненты не менялись от конфигурации к конфигурации и от теста к тесту.

Таблица 1

Базовые компоненты компьютера (неизменяемые)

Компонент

166 МГц

300 МГц

Примечания
Материнская плата Tyan Tomcat IV S1564D Tyan Tatoe 2 S1682D Обе платы рассчитаны на 2 процессора. Установлен только один. Чипсет Intel 82430, поддерживает больше 64 Мб памяти.
Микропроцессор Intel Pentium 166 последней модели (P54c) Intel Pentium II 300 последней модели P54c — то, что у нас стоит дома. P II — то, что, как убеждает Intel, мы должны иметь дома.
Память 64 МБ EDO 64 МБ EDO Один и тот же производитель, одна и та же партия.
Кэш 512 Кб L2 512 Кб L2 Одинаковый размер кэша.
Видео 1024х768х256 1024х768х256 Самое малое разрешение для тестирования. Должно давать наивысшие результаты.
Операционная система Windows NT 4.0, Service Pack 3 Windows NT 4.0, Service Pack 3 NT проще воспринимает замену компонентов, не требуя дополнительных изменений в системе.
При проверках всегда важно иметь эталоны. Когда эталоны проверены, можно приступать к замене того или иного компонента и изучать эффект замены. Роль заменяемых компонентов я отвел дисковой и видео подсистемам. Будем их поочередно заменять, чтобы оценить их влияние на производительность компьютера. Во второй и третьей таблицах перечислены указанные компоненты, выбранные для участия в тестах.


Таблица 2

Подсистема видео и графики. Заменяемые компоненты

Компонент

Память

Шина

Примечания
SIIG Master ISA
1 Мб DRAM

ISA
То, что стоит в домашнем компьютере.
Matrox Millenium
4 Мб DRAM

PCI
Последнее слово в 2D графике.
IMS Twin Turbo
8 Мб VRAM

PCI
По логике вещей, самое лучшее. VRAM лучше DRAM, и стоит плата на $100 больше, чем Matrox.

Таблица 3

Дисковая подсистема. Заменяемые компоненты

Диск

CD-ROM

Контроллер

Примечания
Fujitsu M1624 TAU 8x Sanyo CRD 168P IDE на материнской плате Домашняя конфигурация. В BIOS установлен режим диска Mode 2.
Seagate 34572W Barracuda 4LP 7200 об/мин 4.5 ГБ Ultra-Wide SCSI 16x Teak CD 5168 Adaptec 2940 Seagate с контроллером Adaptec теоретически обеспечивает полосу 40 МБ/с. Оптимальная по цене высокопроизводительная конфигурация.
Micropolis 4345 WAV 7200 об/мин 4.5 ГБ Ultra-Wide SCSI 16x Teak CD 516S Adaptec 2940 Чтобы было честно, Micropolis сравнивается с Seagate. Оба диска считаются пригодными для AV приложений.
Seagate ST 19101W Cheetah 9 10000 об/мин 9.1 ГБ Ultra-Wide SCSI 24x Pioneer ДР-U24X Diamond Fileport 40 Отличная производительность. Лучше только IBM 9XL. Контроллер Diamond построен на более быстрой микросхеме и стоит вдвое меньше контроллера Adaptec.
IBM 9XL 10000 об/мин 9.1 ГБ Ultra-Wide SCSI 24x Pioneer ДР-U24X Diamond Fileport 40 Чемпион. Самый быстрый из дисков, доступных на момент проведения испытаний.
Естественно, без проблем не обошлось. Испытания компьютеров всегда чреваты сюрпризами. Обнаружилось, что у некоторых из тестов непростой норов. Winstone 97 частенько снимался по тайм-ауту или даже "подвешивал" компьютер. Работая с Winstone 97, я обнаружил, что порядок, в котором устанавливались тестовые программы и Service Pack 3, влияет на работу и результаты тестов. Если программы устанавливались после Service Pack, то они часто снимались по тайм-ауту. Если программы устанавливались перед Service Pack, то этой проблемы не было.

Кроме того, Winstone 97 невзлюбил видеоплату IMS Twin Turbo. Несмотря на многочисленные звонки производителю, я так и не смог ничего поделать. В конце концов пришлось позвонить и объявить изготовителю, что плата снимается с тестирования. Очень жаль, поскольку это не позволило мне продемонстрировать, как IMS Twin Turbo иллюстрирует принцип "дороже - не всегда лучше". IMS Twin Turbo в два с лишним раза дороже Matrox Millenium, но на 30% слабее по производительности. Просто имейте в виду, что в дорогих комплектах не всегда встречается самая быстрая периферия.

У Pioneer 24x CD-ROM были свои причуды. При запуске WinBench на тестирование CD-ROM программа иногда заявляла, что в дисководе нет компакт-диска и предлагала мне загрузить его в дисковод. Я сделал вывод, что причина, по всей вероятности, коренилась в недостаточной балансировке скоростного привода. Тщательно выставив CD-ROM в корпусе, я, казалось, устранил эту проблему. Однако результаты повторных тестов очень различались между собой. Вероятнее всего причина была той же самой - разбалансировка и, как следствие, многократные попытки считывания данных с одного и того же места.

Наконец, винчестер Micropolis 4345 WAV приказал долго жить, не дойдя до финишной прямой. Он перестал работать как раз в момент тестирования последней конфигурации. Мотор раскручивался - и останавливался, и так раз за разом. Этот диск никогда больше так и не загрузился. Звонить изготовителю было бесполезно: фирма Micropolis перестала работать.

Вот и пришел черед ознакомить вас с результатами. Как я и ожидал, тесты, проверявшие раздельные компоненты компьютерной системы, дали наиболее надежные и сопоставимые результаты. На них незначительно влияла производительность видеоплаты или дисковой подсистемы. Тест SpecINT95 выдавал близкие результаты вне зависимости от конфигурации. Pentium 166 показывал от 3.53 до 3.55 SpecINT95. Pentium II 300 надежно выдавал от 8.99 до 9.00 SpecINT95. По этой причине данные результаты далее не упоминаются во избежание ненужных повторений.

Результаты прочих тестов показали, какое драматическое влияние на общую производительность системы оказывает замена периферии. Припомните, что конечной целью является демонстрация того, как Pentium 166 может показать лучшие результаты по сравнению с Pentium II 300. Winstone и Sysmark служат для проверки общей производительности компьютера. Несмотря на то, что WinBench не является общесистемным тестом, я привел еще некоторые результаты и для него, поскольку они тоже оказались чувствительными к указанному влиянию.

Рисунок 1 показывает базовую конфигурацию: Pentium 166 и Pentium II 300 с IDE-дисками и стандартным VGA видеоконтроллером. Все результаты были пересчитаны по отношению к этим базовым результатам. Следовательно, можно видеть процентную разницу между конфигурациями и сравнивать их между собой. Некоторые из результатов кажутся ненормальными. Для Pentium II тесты Graphics Winmark и Business Winstone показали меньше, чем для Pentium 166. Это противоречит всякой логике. Чтобы убедиться, я прогнал каждый тест по три раза и учел наивысший результат для каждого из прогонов. После этого я могу гарантировать, что результаты нормальные, более того, наилучшие из всех показанных измерительными программами. В остальных случаях очевидно, что Pentium II 300 значительно быстрее Pentium 166.

Рисунок 2 показывает выгоду от замены дисковой системы для pentium 166. Как видно на графике, лучшие диски увеличивают общую производительность на 12% для теста sysmark и приблизительно на 20% для winstone. Интересно, что ни sysmark, ни winstone не показывают существенной разницы между 7200- и 10000-оборотными дисками, хотя winbench ясно демонстрирует превосходство 10000-оборотных винчестеров. Обратите внимание, что за единицу принята производительность базовой конфигурации pentium 166, а на графике для сравнения указана еще и производительность базовой конфигурации pentium ii 300.


Похожие результаты показывает и Pentium II 300 (см. рис.3). В тесте Winstone видно, что для 7200-оборотного диска прирост производительности невелик, но 10000-оборотный винчестер дает драматическую прибавку в скорости. Тест Sysmark в этом отношении ведет себя спокойнее. WinBench указывает на неоспоримое превосходство 10000-оборотных дисков. Интересно, что WinBench показывает преимущество диска IBM 9XL над винчестером Seagate Cheetah 9LP.

Какие бы значительные выгоды для увеличения общей производительности ни происходили из наращивания дисковой подсистемы, их еще недостаточно, чтобы я мог достичь заветной цели - заставить Pentium 166 обскакать Pentium II 300. Что же, возьмемся за видео. Замены видеоплаты достаточно, чтобы обвести вокруг пальца тесты Business Winstone и Sysmark, но не Highend Winstone. На рисунке 4 приведены сводные результаты по Pentium 166 и Pentium II 300.

Тест Business Winstone для Pentium 166 с Matrox Millennium показывает 81 процент прироста скорости сравнительно с базовой конфигурацией Pentium II 300! Тест Sysmark обманывается только на 12 процентов. Не стоит игнорировать и показания Winbench для графики.

Они ясно указывают на достоинства высокопроизводительных графических плат, таких как Matrox Millennium.

Наконец, на рисунке 5 показан суммарный эффект от улучшения графики при помощи Matrox Millennium и дисковой системы при помощи 10000-оборотного IBM 9XL SCSI-винчестера. Как и в случае с видеосистемой, Sysmark и Business Winstone обманулись, решив, что компьютер с медленным Pentium 166 обошел машину со звездным Pentium II 300. На графике видно, что P166 опередил PII на 22% по версии Sysmark и на 98% по мнению Business Winstone. Однако, программу Highend Winstone обмануть ни одним из моих трюков не удалось. Этот тест всегда пропорционально показывал именно те результаты, которых можно было ожидать от сравнения 166- и 300-мегагерцовых компьютеров.

Итак, заключение. Показать, что Pentium 166 по всей видимости превосходит Pentium II 300 - легко. При помощи простой видеокарты и жесткого диска я заставил тестовую программу Business Winstone 97 показать, что первый на 98% быстрее второго. Это доказывает, что вам не следует всегда верить результатам тестов, приводимым в компьютерных журналах. Имейте в виду, что если компьютеры не испытывались в одинаковых конфигурациях, а компоненты не заменялись по одному за раз, скажем, только материнская плата или только процессор, то результаты, скорее всего, не сопоставимы.


А еще я обнаружил, что больше не всегда значит лучше. Дорогие видеоплаты могут быть на треть медленнее более дешевого контроллера Matrox Millennium. Аналогичным образом, 200-долларовый видеоконтроллер Matrox Millennium дает больший прирост производительности компьютера в целом, чем 1000-долларовый жесткий диск IBM 9XL. Сравнение SCSI-контроллеров показало, что Diamond Fireport работает быстрее Adaptec 2940 UW, причем за половинную стоимость.

Несмотря на неплохие показатели 24-скоростного привода, я счел его работу слишком нестабильной, чтобы он заслуживал доверия. Поэтому, вместо того чтобы
покупать домой pentium ii, я, наверное, возьму 233-mhz amd k6, добавлю matrox millennium и прикуплю diamond fireport с 4.5-гигабайтным 10000-оборотным scsi-винчестером. Такое обновление даст моему компьютеру весь прирост скорости, который мне нужен - до следующего раза. 

Евгений Щербатюк


Компьютерная газета. Статья была опубликована в номере 51 за 1999 год в рубрике разное :: мелочи жизни

©1997-2024 Компьютерная газета