Протестируй свой компьютер

Сергей Пахомов

Тесты на реальных приложениях

Синтетические тесты

 

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

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

Само по себе железо не имеет такого свойства, как производительность, поэтому правильнее будет говорить о производительности железа при выполнении конкретного приложения или задачи. Кроме того, тестироваться может как компьютер в целом, так и отдельная его подсистема. При этом компьютер можно условно разделить на несколько подсистем:

  • процессорную;
  • дисковую;
  • видео;
  • сетевую.

Конечно, такое деление весьма приблизительно, однако именно тестирование отдельных подсистем компьютера позволяет понять, насколько сбалансирован компьютер и какая из его подсистем является наиболее слабым местом.

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

Для тестирования отдельных подсистем компьютера больше подходят так называемые синтетические (или искусственные) тесты, которые не имеют отношения к реальным приложениям и предназначены для создания стрессовой нагрузки на отдельные подсистемы компьютера. Синтетические тесты эмулируют специализированные задачи, позволяющие сконцентрироваться на тестировании отдельных компонентов, причем результаты этих тестов не должны зависеть от конфигурации всего компьютера или, по крайней мере, влияние остальных компонентов на результаты теста должно быть сведено к минимуму. К примеру, если синтетический тест направлен на определение производительности процессора, то результат не должен зависеть от модели используемого жесткого диска или видеокарты.

Тесты на реальных приложениях

К тестированию отдельных подсистем компьютера мы еще вернемся, а пока сосредоточимся на тестировании компьютера в целом.

С точки зрения пользователя, понятие производительности компьютера логично было бы связать с временем выполнения определенного тестового приложения. В этом смысле компьютер, выполняющий тот же объем работы за меньшее время, является более быстрым и, следовательно, более производительным. Временной показатель производительности, который также называется временем отклика (response time), временем выполнения (execution time) или прошедшим временем (elapsed time),  — это задержка выполнения задания, включающая буквально все: работу процессора, обращения к диску, обращения к памяти, ввод-вывод и накладные расходы операционной системы. Примером, когда именно время является основным показателем для оценки производительности компьютера, могут служить такие простые тесты, как инвертирование звуковых файлов из формата wav в mp3 или время сжатия файла с использованием архиваторов.

Естественно, что время выполнения определенной задачи — не единственный возможный показатель производительности компьютера. Как правило, в бенчмарках для определения рейтинга производительности используются собственные условные единицы измерения, которые профессионалы называют «попугаями». К тому же далеко не всегда вообще известно, как эти самые «попугаи» рассчитываются. Так, если в процессе тестирования выполняется несколько задач, то для получения интегрального результата может использоваться довольно сложная схема, учитывающая значимость того или иного теста. Классическим примером такого подхода является популярный тест MadOnion 3Dmark 2002 SE, результат которого выдается в единицах 3Dmark’s. Хотя такие единицы измерения и не имеют никакого физического смысла, они могут использоваться для сравнения различных систем друг с другом.

Другим подходом к расчету результата теста является использование относительных единиц измерения. Для этого выбирается некоторый эталонный компьютер, производительность которого, измеряемая бенчмарком, считается равной единице (при этом собственно производительность опять-таки измеряется как скорость выполнения тестовой программы), а производительность всех остальных компьютеров измеряется уже по отношению к производительности эталонного компьютера. Если, допустим, в таком бенчмарке результат тестирования равен 30 единицам, то это означает, что данный компьютер в 30 раз производительнее эталонного.

Для получения корректных результатов при использовании тестов на основе реальных приложений нужно соблюдать ряд требований, что порой сильно ограничивает возможность их использования в домашних условиях.

Правило первое: тестирование необходимо проводить на «чистой» операционной системе, то есть для тестирования используется компьютер, на котором установлены операционная система, необходимые драйверы и сам тест. Больше никаких программ устанавливать нельзя. Как правило, столь жесткое ограничение является требованием самого теста, поскольку тесты на основе реальных приложений устанавливают и сами приложения, с которыми они работают. Если же на компьютере уже установлено нечто подобное, то конфликта не избежать. Кроме того, даже если тест корректно устанавливается и запускается, пользовательские приложения, которые загружаются в фоновом режиме, могут отразиться на результатах тестирования.

Второй важный момент связан с самой операционной системой, а точнее с ее локализованной версией. Нередко установка русской версии операционной системы приводит к сбоям в тестировании. Отчасти проблема заключается в том, что тестовые утилиты могут иметь встроенные макросы для обработки результатов. Если, к примеру, вы используете русскую систему мер, где в качестве разделителя целой и дробной части числа используется запятая, а макрос, обрабатывающий результаты, написан в программе, где в качестве такого разделителя используется точка, то результат будет некорректен. Отсюда следует второе правило: используйте «родные» версии операционных систем.

Третье правило при тестировании — это предварительная дефрагментация жесткого диска. Поскольку при работе с реальными приложениями результат зависит в том числе и от производительности жесткого диска, перед началом проведения тестирования необходимо обязательно выполнить процедуру дефрагментации. Кстати, такие известные тестовые утилиты, как Ziff Davis Business Winstone и Office Productivity, автоматически запускают процесс дефрагментации перед началом тестирования.

Ну и последнее правило тестирования касается количества повторений одного и того же теста. Хорошим тестом может считаться только такой бенчмарк, который показывает стабильные результаты с минимальным разбросом. Если результаты тестирования по нескольким запускам отличаются друг от друга более чем на 5%, то этим тестом лучше не пользоваться вообще. Но даже если тестовая программа показывает стабильные результаты, тест необходимо запускать как минимум три раза.

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

  • SYSmark 2002 Office Productivity;
  • SYSmark 2002 Internet Content Creation;
  • ZD Business Winstone 2001 v.1.0.2;
  • ZD Content Creation Winstone 2002 v.2.0;
  • 3Dmark.

Тестовый пакет SYSmark 2002, разработанный компанией BAPCO, состоит из двух частей: Office Productivity и Internet Content Creation. Тест Office Productivity, как следует из его названия, предназначен для определения производительности компьютеров при работе с офисными приложениями. В этом тесте эмулируется работа пользователя с такими приложениями, как Dragon NaturallySpeaking Preferred 5, McAfee VirusScan 5.13, McAfee VirusScan 5.13, Microsoft Access 2002, Microsoft Excel 2002, Microsoft Outlook 2002, Microsoft Word 2002, Netscape Communicator 6.0 и WinZip 8.0. Тест Internet Content Creation предназначен для выявления производительности компьютера при работе с приложениями, использующимися для создания так называемого Интернет-контента. В этом тесте больший упор делается уже на мультимедийные приложения, а именно: Adobe Photoshop 6.0.1, Adobe Premiere 6.0, Macromedia Dreamweaver 4, Macromedia Flash 5 и Microsoft Windows Media Encoder 7.1.

Отличительной особенностью пакета SYSmark 2002 является то обстоятельство, что тестовые приложения запускаются не последовательно друг за другом, а параллельно, то есть одновременно эмулируется работа нескольких программ, некоторые из которых активны, а другие выполняются в фоновом режиме, что в полной мере соответствует реальной ситуации. К примеру, работая с текстовым редактором (Microsoft Word 2002), пользователь может одновременно сканировать диск антивирусной программой (McAfee VirusScan 5.13), имея при этом открытыми такие приложения, как Microsoft Excel 2002 и Microsoft Outlook 2002.

Тестовый пакет SYSmark 2002, несмотря на утверждение о его некорректной работе с процессорами AMD (не в том смысле, что он с ними не работает, а в том, что результаты этого теста с процессорами AMD хуже, чем с процессорами Intel), является общепризнанным и самым распространенным и, кроме того, показывает довольно стабильные результаты с минимальным разбросом. Впрочем, у этого теста есть и недостатки. Поставляется он на двух компакт-дисках (скачать его из Интернета нельзя), весьма дорого стоит и довольно критичен к настройке операционной системы, например тестовый пакет возможно использовать только на «чистой» операционной системе.

Альтернативой тестам из пакета SYSmark 2002 является тестовый пакет компании Ziff Davis (ZD), также состоящий из двух тестов: Business Winstone 2001 v.1.0.2 и Content Creation Winstone 2002 v.2.0. Первый тест использует такие офисные приложения, как Norton Antivirus 2000, Winzip 7.0, Microsoft FrontPage 2000, Lotus Notes R5, Microsoft Access 2000, Microsoft Excel 2000, Microsoft PowerPoint 2000, Microsoft Project 98, Microsoft Word 2000, Netscape Communicator 4.73. Второй тест, то есть Content Creation Winstone 2002 v.2.0, использует приложения: Adobe Photoshop 6.0.1, Adobe Premiere 6.0, Macromedia Director 8.5, Macromedia Dreamweaver UltraDev 4, Microsoft Windows Media Encoder 7.01.00.3055, Netscape Navigator 6/6.01 и Sonic Foundry Sound Forge 5.0c (build 184).

Интересна система расчета итоговых результатов в тестах Business Winstone 2001 v.1.0.2 и Content Creation Winstone 2002 v.2.0. Естественно, основным критерием для получения результата является время выполнения (время отклика) отдельных приложений, однако для удобства в тестах Business Winstone 2001 v.1.0.2 и Content Creation Winstone 2002 v.2.0 используются относительные единицы измерения. Для этого берется некоторый эталонный компьютер, для которого результат в тестах принимается равным 10 единицам.

В тесте Content Creation Winstone 2002 v.2.0 в качестве эталонного компьютера использует компьютер NEC Powermate VT следующей конфигурации:

  • процессор — Intel Pentium III 500 MГц (L2-кэш 512 Кбайт);
  • RAM-память — SDRAM 128 Мбайт;
  • видеокарта — S3 Savage 3D video adapter (8 MB SDRAM);
  • жесткий диск — Maxtor 91303D6, 13 Гбайт;
  • операционная система — Windows 2000 Build 2195, Service Pack 2;
  • разрешение экрана — 1024Ѕ768, 16 бит.

В тесте Business Winstone 2001 v.1.0.2 в качестве такого эталонного компьютера используется уже несколько иная конфигурация (более слабая):

  • процессор — Intel Pentium II 333 MГц (L2-кэш 512 Кбайт);
  • RAM-память — SDRAM 64 Мбайт;
  • видеокарта — Cirrus Logic(R) 5465 (4 MB RDRAM);
  • жесткий диск — Seagate Medalist ST 3654 0A;
  • операционная система — Windows NT 4.0 Service Pack 6, Build 1381;
  • разрешение экрана — 1024Ѕ768, 24 бит.

Таким образом, если при тестировании в каком-либо из тестов результат равен 25, то это означает, что данный результат в 2,5 раза выше результата, показанного на эталонной машине.

Рассмотренные тесты SYSmark 2002 Office Productivity, SYSmark 2002 Internet Content Creation, ZD Business Winstone 2001 v.1.0.2 и ZD Content, Creation Winstone 2002 v.2.0 относятся, скорее, к профессиональным тестам, и их использование в домашних условиях, то есть на рабочей машине, довольно сомнительно. Как мы уже говорили, для корректной работы тестов приходится переустанавливать операционную систему на время проведения тестирования.

Для домашнего пользователя лучше подойдут такие тесты, которые можно запускать без переустановки ОС, то есть на рабочем компьютере. Среди тестов, работающих с реальными приложениями, к таковым относятся игровые тесты. Классический пример  — широко известный бенчмарк MadOnion 3DMark 2001 SE, который предназначен для тестирования видеоподсистемы, но прекрасно нагружает и процессорную подсистему компьютера. Единственное, от чего результаты теста практически не зависят, — это от дисковой подсистемы компьютера.

Тест построен на основе популярных игровых приложений и поддерживает технологию DirectX 8 (Vertex Shaders, Pixel Shaders and Point Sprites) и позволяет производить различные настройки, например включать или выключать антиалиасинг, выбирать двухсэмпловый или четырехсэмпловый методы. Текстуры могут быть 16-битными, 32-битными или компрессированными, причем 3Dmark 2001 SE использует только оригинальный метод компрессии DXTC, также известный как S3TC. Таким образом, при компрессии используются методы DXTC1 и DXTC3.

Кроме того, поддерживается рендеринг Software T&L, Hardware T&L и Pure Hardware T&L (исключительно аппаратные трансформации и освещение, когда все вычисления производит видеокарта). Настроек у этого теста достаточно много, но когда речь заходит об официальных результатах, то, как правило (если это не оговаривается отдельно), тест запускается с настройками по умолчанию. Бенчмарк MadOnion 3DMark 2001 SE выдает результат в условных единицах 3Dmark’s, но в то же время позволяет просмотреть подробный отчет по каждому тесту и сохранить его в тестовом виде. Отметим, что, несмотря на всеобщее признание, у этого теста есть и недостаток: разброс в результатах теста может достигать 5%, вследствие чего этот тест необходимо запускать как минимум три раза.

Другими распространенными тестами, построенными на реальных приложениях, являются игровые бенчмарки. Среди них наиболее популярны Unreal Tournament 2003, Quake III Arena (v.1.30), DroneZ mark, ChameleonMark, Codecreatures Benchmark Pro, Comanche 4 Demo Benchmark Test. Тесты Unreal Tournament и Quake III Arena являются традиционными и достаточно хорошо известны. Остальные же тесты не столь распространены, а потому нуждаются в комментариях.

Тест DroneZ mark основан на OpenGL API и специально разработан с учетом особенностей процессора Intel Pentium 4, а также архитектуры nVIDIA nfiniteFX II.

ChameleonMark — это тест, демонстрирующий производительность карты при операциях с пиксельными шейдерами.

Codecreatures Benchmark Pro также использует особенности архитектуры nVIDIA nfiniteFX II, технологию программируемых пиксельных и вершинных шейдеров и реализует сложные сцены, содержащие до 300 тыс. полигонов.

Тест Comanche 4 Demo Benchmark Test тоже поддерживает технологию программируемых пиксельных и вершинных шейдеров, а также использует сложные сцены с применением эффектов отражения, освещения и теней в реальном времени.

Все игровые тесты выдают результаты в кадрах в секунду (frame per second, fps). Эти единицы измерения типичны для тестирования видеоподсистемы компьютера и определяют количество обрабатываемых кадров в секунду. При использовании игровых тестов следует иметь в виду, что их результаты сильно зависят от установленного разрешения экрана, глубины цвета и частоты строчной развертки, поэтому при использовании этих бенчмарков необходимо учитывать данное обстоятельство.

В начало В начало

Синтетические тесты

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

MIPS (Millions of Instructions Per Second) — это количество инструкций, выполняемых процессором в секунду. Впрочем, говоря о MIPS, необходимо сделать одно замечание: количество инструкций, выполняемых процессором за единицу времени не всегда отражает производительность процессора. Приведем простой пример: программа, откомпилированная под CISC-архитектуру, выполняется за 1000 инструкций, а та же программа, откомпилированная под RISC-процессор, — за 2000 инструкций. Если обе программы выполняются за одно и то же время, то при одинаковом объеме работы, сделанном процессорами, производительность RISC-процессора в единицах MIPS в два раза больше, чем CISC-процессора. Более того, единицы MIPS будут различаться не только для процессоров различной архитектуры, но и для разных программ, работающих на одном процессоре. Поэтому к MIPS следует относиться достаточно осторожно. Сравнивать процессоры в единицах MIPS корректно лишь в том случае, если они имеют одинаковую архитектуру, то есть различаются только тактовой частотой.

Аналогичным недостатком обладают и тесты, измеряющие производительность процессора в GFLOPS (Giga Floating Point Operations Per Second). Эти единицы показывают количество операций с плавающей точкой (в миллиардах), выполняемое процессором за одну секунду.

Как мы уже отмечали, тестов, оценивающих производительность процессора, существует достаточно. Среди них есть и качественные разработки, и объективно некорректные тесты. Описать их все довольно сложно, поэтому остановимся лишь на одном, который, на наш взгляд, можно считать одним из лучших тестов. Речь идет о бенчмарке CPU RightMark (http://cpu.rightmark.org), который использует вычислительные задачи, такие как решение системы дифференциальных уравнений, соответствующих моделируемым физическим процессам взаимодействия системы многих тел, и решение задач из области трехмерной графики. Отличительной особенностью теста CPU RightMark является то, что результаты зависят от самого процессора, памяти и шины «память-процессор», а влияние остальных компонентов системы сведено к минимуму. Кроме того, этот тест обладает очень высокой стабильностью — разброс результатов менее 1%.

CPU RightMark содержит два программных блока, один из которых предназначен для расчета физической модели, то есть для решения системы дифференциальных уравнений, а второй отвечает за визуализацию (рендеринг) полученного решения — за прорисовку сцены. У каждого блока имеются различные варианты, оптимизированные под разные системы процессорных команд. Расчет физической модели возможен с использованием набора команд SSE2 (процессор Intel Pentium 4) либо с использованием набора команд для FPU. Блок визуализации состоит из двух частей — блока предварительной обработки и блока отрисовки (рендеринга). Первый блок откомпилирован с использованием набора команд сопроцессора x87, а второй имеет несколько вариантов, оптимизированных под различные наборы инструкций: FPU+GeneralMMX, FPU+EnhancedMMX и SSE+EnhancedMMX. Скорость работы блока визуализации отражает производительность процессора и памяти при выполнении геометрических расчетов с использованием действительных чисел одинарной точности.

Тестирование видеоподсистемы компьютера проводится в основном игровыми тестами, о которых мы уже упоминали. Однако следует иметь в виду, что видеоподсистему компьютера невозможно протестировать изолированно, поэтому результаты теста будут зависеть не только от установленного видеоадаптера, но и от процессора и памяти. А вот дисковую подсистему компьютера можно тестировать синтетическими тестами. Наиболее подходящим для этого среди всех известных нам тестов является тест IOmeter 99.10.20 — разработка компании Intel, представляющая собой очень тонкий инструмент для измерения производительности жестких дисков.

Утилита IOmeter позволяет прецизионно настраивать тест на измерение производительности жестких дисков при выполнении ими специфических задач, причем дает возможность работать с неразбитыми на логические разделы жесткими дисками, что позволяет тестировать диски независимо от файловой структуры и свести к нулю влияние операционной системы.

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

  • размер запроса на передачу данных;
  • процент доступа по данному запросу;
  • случайное/последовательное распределение;
  • распределение операций чтения/записи;
  • количество отдельных операций ввода-вывода, работающих параллельно.

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

Конечно, в приведенном здесь списке тестовых пакетов указаны далеко не все бенчмарки. Сравнивать производительность отдельных комплектующих или компьютера в целом корректно только в том случае, если для измерения производительности используется не один тест, а несколько разных. Только в этом случае можно получить объективную оценку сравнения и сказать, с какими задачами компьютер справляется лучше, а с какими — хуже.

В заключение отметим, что самые популярные тесты, которые свободно распространяются через Интернет, вы сможете найти на нашем компакт-диске.

КомпьютерПресс 11'2002


Наш канал на Youtube

1999 1 2 3 4 5 6 7 8 9 10 11 12
2000 1 2 3 4 5 6 7 8 9 10 11 12
2001 1 2 3 4 5 6 7 8 9 10 11 12
2002 1 2 3 4 5 6 7 8 9 10 11 12
2003 1 2 3 4 5 6 7 8 9 10 11 12
2004 1 2 3 4 5 6 7 8 9 10 11 12
2005 1 2 3 4 5 6 7 8 9 10 11 12
2006 1 2 3 4 5 6 7 8 9 10 11 12
2007 1 2 3 4 5 6 7 8 9 10 11 12
2008 1 2 3 4 5 6 7 8 9 10 11 12
2009 1 2 3 4 5 6 7 8 9 10 11 12
2010 1 2 3 4 5 6 7 8 9 10 11 12
2011 1 2 3 4 5 6 7 8 9 10 11 12
2012 1 2 3 4 5 6 7 8 9 10 11 12
2013 1 2 3 4 5 6 7 8 9 10 11 12
Популярные статьи
КомпьютерПресс использует