Меню

Тест видеокарты для linux



Тестирование производительности и стресс-тестирование графических ускорителей в Linux

Оригинал: GPU benchmarking and stress testing in Linux
Автор: Arnab Satapathi
Дата публикации: 29 марта 2017 г.
Перевод: А.Панин
Дата перевода: 26 апреля 2017 г.

Хотите измерить пиковую производительность своего графического ускорителя? Задумываетесь о корректности работы своего графического ускорителя под максимальной нагрузкой?

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

1. GLXGears из пакета mesa-utils

Утилита GLXGears с открытым исходным кодом является частью пакета утилит Mesa для тестирования поддержки технологии OpenGL и доступна в составе пакета программного обеспечения mesa-utils в дистрибутивах Debian/Ubuntu. Она может использоваться в качестве самодостаточного инструмента для тестирования производительности графического ускорителя и выводит число кадров в секунду (FPS) сразу же после запуска с помощью следующей команды:

Число кадров в секунду не будет превышать 60, но производительность любого приложения, работающего с трехмерной графикой, может быть значительно улучшена в случае его запуска с переменной окружения vblank_mode=0 ; в моем случае удалось получить значение, равное 6000 кадрам в секунду при использовании графического ускорителя Intel HD 3000.

2. GLMark2 от команды разработчиков проекта Linaro

Это еще одна популярная утилита с открытым исходным кодом, предназначенная для стресс-тестирования и тестирования производительности графических ускорителей, которая была создана на основе исходного кода утилиты GLMark . Она доступна на платформах Linux и Android.

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

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

Тестирование: теперь нужно просто выполнить команду glmark2 с помощью терминала, в результате чего откроется окно со стандартным разрешением 800×600 пикселей, в котором будут отображаться различные трехмерные объекты, такие, как фигурка лошади, кота, кролика и так далее. Процесс тестирования может растянуться на 8 минут, после чего будут выведены результаты тестирования. В моем случае графический ускоритель Intel HD 3000 набрал около 1000 баллов.

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

Тестирование производительности графического ускорителя производства NVIDIA с помощью GLMark2: я пользуюсь ноутбуком с дискретным графическим ускорителем NVIDIA Optimus (GeForce GT 540M), поэтому просто не мог не попытаться протестировать производительность этого ускорителя с помощью GLMark2. Я пытался проводить тесты со всеми известными параметрами, но результаты были неизменно-ужасными. Графический ускоритель ни разу не набирал больше 446 баллов, хотя я провел 4 теста; возможно, утилита GLMark2 просто не совместима с аппаратным обеспечением производства NVIDIA.

Команды, которые я использовал для тестирования производительности дискретного графического ускорителя производства NVIDIA с помощью утилиты GLMark2:

3. Тест Furmark утилиты GPUTest от команды ресурса geeks3d

Перейдем к рассмотрению инструмента для достоверного тестирования производительности графического ускорителя. Тест Furmark является одним из тестов утилиты с закрытым исходным кодом GPUTest от команды ресурса geek3d, которая может быть бесплатно загружена по ссылке www.geeks3d.com/gputest/download . Следует выибрать версию для Linux, которая распространяется в форме обычного ZIP-архива. В том случае, если вы загрузили этот архив в директорию Загрузки , вам придется выполнить следующую последовательность команд для его распаковки и запуска утилиты:

В результате откроется окно разрешением в 800×600 пикселей, с помощью которого будет выводиться сложный трехмерный объект, подобный представленному ниже.

При тестировании производительности графического ускорителя Intel 3000 HD я получил изменяющуюся рывками картинку с 9-10 кадрами в секунду.

И снова я попытался протестировать производительность дискретного графического ускорителя производства компании NVIDIA:

В этот раз были получены удовлетворительные результаты, выражающиеся в плавно изменяющейся картинке с 18-20 кадрами в секунду.

Читайте также:  Graphics core next видеокарты

Стресс-тестирование графического ускорителя с помощью теста Furmark: в результате использования теста Furmark генерируется значительная нагрузка на графический процессор, а с помощью приведенной ниже команды программа может быть запущена в режиме непрерывного тестирования с окном разрешением в 1024×640 пикселей.

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

Существуют и другие более функциональные и сложные инструменты для тестирования производительности графических ускорителей от Unigine corp., такие, как Unigine Heaven , Unigine Vally и другие. Я не затрагивал их в данной статье, но вы можете самостоятельно загрузить их по данной ссылке и протестировать производительность своего графического ускорителя.

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

Источник

Тестирование 3D ускорителей в Linux

«есть 3D игры в Linux…
нет 3D игр в Linux….
науке это неизвестно»

В последнее время со страниц новостных интернет сайтов и бумажных изданий часто звучит слово «Linux». Конечно большинство читателей знают, что это альтернативная продуктам Microsoft операционная система для современных ПК. При этом все чаще она упоминается в аспекте наступления на рынок настольных машин и применении не как сетевой ОС, а офисной и даже домашней. Ну а поскольку домашние ПК просто невозможно представить себе без игр, то и этот аспект вызывает интерес у потребителей. Следующим звеном в этой логической цепочке конечно будут трехмерные видеоускорители. Исследование их производительности под ОС семейства Windows занимает одно из ведущих мест на нашем сайте. Однако про их работу в Linux практически ничего не известно. Попробуем восполнить этот пробел.

Данная статья не претендует на полное, окончательное, безоговорочное и т.п. освещение вопроса, однако, я надеюсь, позволит начать конструктивную дискуссию о тестировании видеокарт (и не только) в ОС отличных от Microsoft Windows.

Конфигурация ПК

Тесты проводились на ПК следующей конфигурации:

  • Процессор: Intel Pentium 4 2,53 ГГц (FSB 533 МГц, L2 512 КБ)
  • Материнская плата: Gigabyte 8PE667 Ultra (чипсет i845PE)
  • Память: 256 МБ PC2700 DDR SDRAM
  • Видеокарты: NVIDIA GeForce4 Ti 4200 64 МБ и ATI RADEON 9500 128 МБ
  • Жесткий диск: Quantum Fireball Plus AS 30 ГБ

В целом такая конфигурация не является «топовой» на сегодня, однако отнести ее к среднему классу пожалуй можно.

Конечно видеокарты принадлежат разным классам, однако поскольку мы первый раз тестируем ускорители под отличной от семейства Windows операционной системой, то прямого сравнения в стиле ATI vs NVIDIA проводить не будем, а больше обратим внимание на сравнение работы карт в разных ОС.

Программное обеспечение

Что касается ПО, то с Windows все достаточно просто:

  • Windows XP Pro SP1
  • Intel Inf 5.00.1012
  • IAA 2.3

С Linux немного сложнее 🙂 Хотя по сути он один, но есть огромное количество так называемых дистрибутивов. Реально они отличаются между собой в основном версиями ПО, инсталляторами, набором поставляемых программ, локализацией.

Кроме того, выбор определенного дистрибутива (и его версии) также может повлиять на результаты, однако если с Windows все легко — его версию однозначно можно описать словами «Windows XP Pro Eng SP1», то для такой динамично развивающейся ОС как Linux, любой опубликованный на дисках дистрибутив к моменту выхода уже устаревает 🙂

Поскольку у меня ранее был опыт общения с RedHat 7.3, и я нашел эту ОС достаточно удобной, то в этот раз я остановился на недавно вышедшем RedHat 9. Никаких дополнительных пакетов и апгрейдов ОС не использовалось. Отмечу, что при инсталляции был выбран полный вариант установки.

Драйвера видеокарт

Как и с ОС в случае Windows, никаких сложностей в выборе, установке и настройке драйверов не было. Использовались NVIDIA Detonator 40.72 и ATI 7-84-030228a1-008040c.

Единственная использованная настройка — отключение вертикальной синхронизации в драйверах (установка в положение «всегда выключено»). При этом для ATI пришлось поставить дополнительно панель управления драйвером.

Читайте также:  Ноутбук с неинтегрированной видеокартой

В отличие от Windows, драйвера для Linux чуть более сложны в установке (хотя это скорее дело опыта). Для видеоадаптера NVIDIA использовался драйвер версии 1.0-4363, скачанный непосредственно с сайта компании. Его инсталляция совершенно прозрачна — нужно просто запустить полученный файл. Единственное что немного напрягает — объем файла README.txt — более 120 КБ (это почти 3000 строк)! Однако проглядеть его перед установкой драйвера настоятельно рекомендуется.

С ATI вышло немного сложнее. Дело в том, что на сайте предлагаются драйвера для версий XFree86 (ядро графической оболочки в Linux) 4.1 и 4.2, в то время как с используемым RH9 поставляется версия 4.3. Поэтому мы обратились в вездесущему интернету и после некоторых поисков в сети нашли драйвер версии 2.9.12 и именно для XFree86 4.3. Для корректной установки этого драйвера пришлось удалить входящий в состав RH9 пакет libGL, так что драйвер смог установить свою версию этой библиотеки.

Хочется сказать и пару слов о настройке драйверов в Linux. Драйвера NVIDIA используют переменные среды для своих настроек. Можно выбрать режим FSAA, режим анизотропии и включить вертикальную синхронизацию (по умолчанию она выключена).

У ATI, несмотря на наличие графической программы-конфигуратора, с настройками хуже — можно только настроить гамму и двухголовость. А параметр вертикальная синхронизации устанавливается во время инсталляции драйвера. Кроме того, поскольку использованный драйвер первоначально предназначался для профессиональных карт, то есть возможность выбора профилей под разные приложения (но какие точно настройки там используются — неизвестно).

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

Тесты

Постепенно приближаемся к самому интересному 🙂 Итак, у нас есть ПК, ОС и даже драйвера. Дело осталось за малым — найти приложения, которые работают под выбранными ОС и с данными драйверами.

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

  • Quake III Arena, версия 1.32
  • Unreal Tournament 2003 DEMO 2206
  • SPECViewperf 7.1

Эти программы существуют как в версии для Windows, так и для Linux, что как раз отвечает нашей идее сравнить именно работу видеокарты в двух разных ОС. Отметим, что в также существуют и другие трехмерные игры для Linux (например RtCW, Serious Sam), но сегодня мы ограничимся только тремя.

Игры Quake III Arena и Unreal Tournament 2003 были портированы под Linux самими издателями, так что сомневаться в качестве программ пожалуй не стоит. Что касается SPECViewperf, то он поставляется с исходными текстами, которые можно скомпилировать под необходимую ОС. Конечно этот процесс вносит некоторую неоднозначность (например зависимость от компилятора). Однако будем надеяться (и проверим при случае), что эта программа, по сути только передающая вызовы в OpenGL драйвер, не сильно зависит от оптимизации компилятором.

Стоит заметить, что никакого Direct3D под Linux нет. Основной используемых здесь API это OpenGL. Упомянем здесь и проект WineX, который позволяет запускать под Linux игры из Windows, работающие с DirectX. Его мы постараемся рассмотреть его в следующий раз.

Тестирование

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

Начнем с Quake III. К сожалению от версии к версии меняется формат записанных demo файлов, так что тестирование пришлось проводить на относительно простом демо «four.dm_68» входящем в поставку этого билда программы. Игра достаточно старая, и поэтому я использовал два варианта настройки сложности видео: стандартную «High Quality» и «тяжелые» конфигурационные файлы (на графиках с индексом «H»), широко используемые в разделе «Видеосистема» нашего сайта.

Первые результаты — и первая интрига: система под управлением Linux обходит Windows XP во всех разрешениях и с обоими вариантами настроек! Причем преимущество не в паре fps, а достигает 25% со стандартными настройками и 80%(!) в тяжелом режиме (при разрешении 800×600).

Читайте также:  Прошивка биос видеокарты r7 370

Интересно отметить, что наклон кривых в Windows XP и Linux отличается. Кроме того вызывает вопрос неожиданное увеличение скорости при переходе от разрешения 1280×1024 к 1600×1200 в Linux с тяжелыми конфигами. Но поскольку все измерения для надежности проводились по 5 раз, сомневаться в полученных цифрах странно. Так что запишем эту ситуацию в область чудес 🙂

Отмечу, что внешних отличий в самой игре под Windows XP и Linux нет никаких. Так что если ваша цель — как можно больше fps и используется видеокарта от NVIDIA, то апгрейд ОС 🙂 может принести приличные дивиденды в этой игре.

Посмотрим теперь как обстоят дела у ATI.

Забавно, но мы видим совершенно противоположную картину — Linux отстает на 10-30% в зависимости от разрешения. Обратите внимание, что в этот раз наклон кривых практически совпадает.

Здесь напомним, что не стоит забывать и о драйверах! От них зависит очень многое. Так что ситуация может легко измениться с выходом новый драйверов как для Linux, так и для Windows.

Переходим к Unreal Tournament 2003 DEMO. Эта игра может использовать при работе под Windows как Direct3D, так и OpenGL. Ну а под Linux остается только второй API. Все настройки оставались по умолчанию. Изменялось только разрешение. Поскольку в поставку игры входит собственные бенчмарки, то, конечно, мы использовали один из них — flyby-antalus. Отметим, что на сайте в тестах видеокарт используется тот-же бенчмарк, но версия самой программы другая, так что результаты стоит сравнивать осторожно.

Начнем снова с NVIDIA.

Как видно по из графика, в этом приложении Linux отстает (от OpenGL версии под Windows XP) в разрешении 800×600 почти в два раза. И несмотря на снижение отрыва до 21% в 1600×1200, придется признать его побежденным.

А вот у ATI дела идут лучше — от 38% в 800×600 разрыв сокращается до двух fps в 1280×1024 и 1600×1200.

В целом по игре немного странно выглядит ограничение на fps в районе 70-75 для двух младших разрешений при работе в Linux. Однако, даже после проведения дополнительных тестов, объяснить это я не могу. В дальнейшем мы попробуем изучить этот момент, а сейчас примем как есть.

И последнее приложение — SPECViewperf. Конечно используемые карты относятся к классу игровых, и применение этого профессионального теста может выглядеть странно, но все равно попробуем.

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

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

И снова ATI показывает противоположный результат 🙂 — лидеры в dx-08 и drv-09 поменялись местами. Кроме того настораживает двукратное превосходство Linux в ugs-03. А в остальных подтестах Windows XP впереди на 17-32%.

Выводы

Мы рассмотрели работу двух популярных моделей видеокарт от двух ведущих производителей под операционными системами Windows XP и Linux. В целом никаких сложных проблем в проведении тестирования встречено не было. Таким образом можно признать, что 3D игры есть не только в Windows, но и Linux (при поддержке издателей софта) не сильно отстает. Конечно ориентация на API Direct3D может затруднить портирование на платформу Linux, где используется OpenGL, однако пример id Software и Digital Extreme/Epic Games надеемся станет заразительным.

Что касается сравнения скорости работы под разными ОС, абсолютного победителя здесь нет. В целом ведет Windows, но на некоторых конфигурациях впереди Linux.

Источник