Пользователи редко задумываются о конфигурации и производительности используемого ими персонального компьютера. Обычно интерес к этой теме возникает в том случае, если пользователь увлечён сферой информационных технологий или если его не устраивает текущая производительность системы.
Однако, этот вопрос весьма важен, особенно если рабочая станция — ваше устройство, используемое для развлечений, отдыха и работы. В этой статье мы разберемся как выполнить тест производительности Linux и рассмотрим один из инструментов тестирования производительности — Phoronix Test Suite.
Что такое Phoronix Test Suite?
Данный пакет — открытое программное обеспечение, используемое для автоматического тестирования комплектующих системы с помощью огромного набора бенчмарков. С данным ПО тесно связан сайт openbenchmarking.org, позволяющий сохранять и вести свою базу результатов тестов, а также делиться своими достижениями с другими.
С помощью Phoronix Test Suite вы можете найти узкое место в своей конфигурации компьютера, сравнить вашу систему с аналогичными системами других пользователей, оценить общую производительность или производительность конкретных узлов ПК. Для всех этих целей пакет предлагает широкий выбор тестов, разделённый на несколько категорий:
- System — тесты общей производительности системы.
- Processor — тесты производительности процессора.
- Memory — тесты производительности оперативной памяти.
- Graphics — тестирование производительности видеокарты.
- Disk — тесты производительности дисковой подсистемы.
Рассмотрим каждую категорию отдельно, составив список интересных бенчмарков.
Доступные тесты производительности
Тесты общей производительности системы (System):
- PyBench — тест, вызывающий различные функции, реализованные с использованием Python. Позволяет оценить общую производительность системы Linux.
- Blender — тест на основе программного обеспечения с открытым исходным кодом для создания 3D-сцен и 3D-моделей.
- BRL-CAD — бенчмарк на базе кросс-платформенного программного обеспечения для твердотельного моделирования.
- IndigoBench — тест на основе Indigo Renderer (фотореалистичного рендера для GPU и CPU, применяющего методики точного моделирования физики света).
- LuxMark — мультиплатформенный тест OpenGL, основанный на LuxRender. Использует библиотеку OpenCL, содержит несколько различных сцен для рендеринга. LuxRender — система рендеринга для Blender и 3DS Max.
- Ethminer — бенчмарк на основе Ethereum Ethminer (Майнер GPU для различных монет, основанных на алгоритме Ethash).
- V-Ray — бенчмарк на основе рендера V-Ray от Chaos Group.
Тесты производительности процессора (Processor):
- Build-GCC — тест процессора linux, показывающий сколько времени занимает сборка коллекции GNU Compiler Collection. Содержит библиотеки, написанные на следующих языках: C, C++, Objective-C, Fortran, Ada, Go и D.
- Build-PHP — тест даёт оценку быстроте компиляции PHP7.
- Go-benchmark — бенчмарк, вычисляющий производительность процессора в Go для HTTP, JSON и сборки мусора.
- Dacapobench — тесты DaCapo, написанные на Java и тестирующие производительность процессора.
- SciMark2 — бенчмарк SciMark 2.0, оценивающий производительность научных и целочисленных вычислений и разработанный программистами National Institute of Standards and Technology. Содержит несколько подтестов, основанных на различных алгоритмах.
- FFmpeg — тест на основе набора библиотек FFmpeg, позволяющих кодировать/декодировать аудиозаписи и видеозаписи в различные форматы. Тестирует производительность кодирования аудио/видео системой.
- LuxCoreRender — рендер с открытым исходным кодом. Данный бенчмарк оценивает производительность процессора.
- X264 — тест производительности процессора Linux при кодировании x264-видео.
- Povray — бенчмарк на основе программы The Persistence of Vision Raytracer, строящий 3D-сцены на основе трассировки лучей.
- OpenSSL — тест процессора, измеряющий производительность процессора при использовании алгоритма шифрования RSA, 4096-бит, OpenSSL.
Тесты производительности памяти (Memory):
- RAMspeed — тест памяти Linux, измеряющий производительность оперативной памяти.
- SQLite — тест оперативной памяти, измеряющий время, необходимое для выполнения вставки данных в индексированную базу данных.
Тесты производительности дисковой подсистемы (Disk):
- Iozone — тестирует производительность жёсткого диска linux, а также файловой системы.
Тесты производительности видеокарты (Graphics):
- UNIGINE-Heaven — бенчмарк, вычисляющий среднюю частоту кадров в демо UNIGINE Heaven. Данное демо было выпущено в 2009 году.
- UNIGINE-Valley — тест видеокарты linux, вычисляющий среднюю частоту кадров в демо UNIGINE Valley. Исходное ПО было выпущено в 2013 году и использует OpenGL 3.
- UNIGINE-Superposition — тест видеокарты на основе демо UNIGINE Superposition, вышедшего в 2017 году. Исходный тест содержит режим для виртуальной реальности.
- UE4-Atlantis — тест на основе демо на движке Unreal Engine 4. Тест вышел в 2015 году.
Тест производительности Linux
1. Установка Phoronix Test Suite
В репозиториях операционных систем семейства Linux обычно содержится устаревшая версия пакета. Поэтому, в первую очередь скачиваем свежую версию дистрибутива по адресу: https://www.phoronix-test-suite.com/?k=downloads.
Далее предлагаем последовательность установки для операционной системы Ubuntu.
Открываем командный интерпретатор bash и выполняем следующие команды:
sudo apt install gdebi-core
Пакет, позволяющий устанавливать программное обеспечение из пакетов *.deb, установлен. Затем устанавливаем скачанную нами версию тестового программного обеспечения:
sudo gdebi phoronix-test-suite_9.4.0_all.deb
Данную команду надо выполнять из папки, в которой находится скачанный дистрибутив Phoronix Test Suite.
2. Подключение учётной записи
Далее рекомендуем вам на сайте openbenchmarking.org, сохраняющем результаты тестов с использованием Phoronix Test Suite, создать свою учётную запись. После этого подключаем вашу учётную запись с помощью команды:
phoronix-test-suite openbenchmarking-login
Вводим свой логин и пароль.
На этом установка Phoronix Test Suite завершена.
3. Просмотр доступных бенчмарков
Посмотреть доступные бенчмарки можно с помощью команды:
sudo phoronix-test-suite list-all-tests
Просмотреть установленные тесты можно с помощью команды:
sudo phoronix-test-suite list-installed-tests
Просмотреть неустановленные тесты можно с помощью команды:
sudo phoronix-test-suite list-not-installed-tests
4. Установка тестов
Устанавливаются нужные вам тесты с помощью команды:
sudo phoronix-test-suite install [имя теста]
Пример:
sudo phoronix-test-suite install build-gcc
В случае некорректной установки выбранного бенчмарка можно использовать для удаления теста команду:
sudo phoronix-test-suite remove-installed-test [имя теста]
Пример:
sudo phoronix-test-suite remove-installed-test build-gcc
Для того, чтобы выявить ошибки в процессе установки, необходимо воспользоваться командой:
sudo phoronix-test-suite debug-install [имя теста]
Пример:
sudo phoronix-test-suite debug-install build-gcc
5. Запуск тестов
Запуск чтобы запустить конкретный тест производительности linux из состава пакета выполните:
sudo phoronix-test-suite run [имя теста]
Пример:
sudo phoronix-test-suite run pybench
После запуска Phoronix Test Suite спрашивает, сохранить результаты или нет. Выбираем Y. В следующем запросе нужно ввести имя файла результатов теста, например, test-28-02-2020-01. Затем тест запрашивает уникальное имя теста (конфигурации теста). Последним запрашивается описание тестовой конфигурации (можно оставить по умолчанию).
После выполнения теста выводится предложение просмотреть результат в браузере и загрузить результат на сайт openbenchmarking.org.
Результат в браузере выглядит следующим образом
Запуск нескольких тестов одновременно производится командой:
sudo phoronix-test-suite run [имя теста] [имя теста] [имя теста] … [имя теста]
Пример:
sudo phoronix-test-suite run scimark2 pybench
Запуск теста с отслеживанием ошибок производится командой:
sudo phoronix-test-suite debug-run [имя теста]
Пример:
sudo phoronix-test-suite debug-run scimark2
6. Просмотр результатов тестов
Отобразить на экране список сохранённых результатов тестов Linux можно с помощью команды:
sudo phoronix-test-suite list-saved-results
Просмотреть конкретный результат можно с помощью команды:
sudo phoronix-test-suite show-result [saved name]
Пример:
sudo phoronix-test-suite show-result 2002279-FIRE-TEST26009
Удалить результат можно с помощью команды:
sudo phoronix-test-suite remove-result [saved name]
Пример:
sudo phoronix-test-suite remove-result 2002279-FIRE-TEST26009
Переименовать файл, содержащий результаты, можно следующей командой:
sudo phoronix-test-suite rename-result-file [saved name]
Пример:
sudo phoronix-test-suite rename-result-file test-26-02-2020-02
Команда запрашивает новое имя файла:
Сохранить результаты в формате pdf можно с помощью команды:
sudo phoronix-test-suite result-file-to-pdf [saved name]
Пример:
sudo phoronix-test-suite result-file-to-pdf test-28-02-2020-01
Объединить результаты из разных файлов в один можно с помощью команды:
sudo phoronix-test-suite merge-results [saved name] [saved name] … [saved name]
Пример:
sudo phoronix-test-suite merge-results test-26-02-2020-02 test-28-02-2020-01
При этом имя для объединённого результата программа выбирает сама, отдельные старые результаты тоже сохраняются.
Внимание! При выполнении этой команды ссылка для просмотра результата в браузере у меня получалась нерабочей, но в дальнейшем результат было можно просмотреть с помощью команды
sudo phoronix-test-suite show-result [saved name].
7. Работа с сайтом openbenchmarking.org
Вставка результата в базу сайта производится следующим образом:
sudo phoronix-test-suite upload-result [saved name]
Пример:
sudo phoronix-test-suite upload-result test-28-02-2020-01
Загрузить конкретный результат текущего пользователя с сайта на ПК можно с помощью команды:
sudo phoronix-test-suite clone-result [OpenBenchmarking ID test]
Пример:
sudo phoronix-test-suite clone-result 2002279-FIRE-TEST26009
Посмотреть загруженные с данного IP на сайт результаты тестов можно с помощью команды:
sudo phoronix-test-suite openbenchmarking-uploads
Также посмотреть результаты тестов можно непосредственно в браузере на сайте openbenchmarking.org.
Для того, чтобы сформировать выборку тестов, необходимо установить флажки с названием файлов результатов и нажать на ссылку Compare Selected Results.
Результат сформированной выборки будет выглядеть так:
8. Настройка сетевого доступа для тестов
Следующая команда показывает параметры сетевых настроек для пакета:
sudo phoronix-test-suite network-info
Настроить параметры прокси-сервера для доступа к базам тестов в Интернет можно с помощью команды:
sudo phoronix-test-suite network-setup
9. Сервер тестирования компьютеров в локальной сети
Кроме того, пакет Phoronix Test Suite содержит сервер удалённого тестирования Phoromatic, с помощью которого можно организовать централизованное тестирование и хранение результатов тестов в локальной сети. Подробное рассмотрение данного сервера выходит за рамки нашей статьи.
Выводы
В статье мы рассмотрели как оценить производительность Linux и как пользоваться Phoronix Test Suite. Этот пакет содержит огромный выбор тестов на любой вкус. Нами порекомендованы некоторые из них для всестороннего тестирования персонального компьютера. Также были рассмотрены особенности работы с программой в командной оболочке. Было уделено внимание выгрузке результатов на сайт, комбинированию и просмотру результатов.
Теперь вы тоже можете присоединиться к сообществу тестеров Phoronix Test Suite. Делитесь своими результатами тестов в комментариях!