Phoronix Test Suite Download
The Phoronix Test Suite is available under the GNU GPLv3 free software license. The Phoronix Test Suite can be used for any personal or professional usage free of charge. Patches to the Phoronix Test Suite are welcome via GitHub.
Software Requirements
The only mandatory requirement for the Phoronix Test Suite on Linux, Solaris, *BSD, Hurd, and macOS operating systems is PHP CLI (packages for it are generally called php7-cli or php-cli or just php). Only PHP is needed and not a web server or other packages commonly associated with PHP.
Dependency Management
Many of the benchmarking profiles do require the standard development tools/libraries (GCC compiler, etc) and other common programs. However, on many Linux distributions and operating systems the Phoronix Test Suite is able to use the software’s package management system for installing these additional dependencies.
Phoronix Test Suite 10.8 (Stable)
10.8.4 (Released: 3 July 2022)
Below are the official release packages for the current stable release of the Phoronix Test Suite. The Phoronix Test Suite as a Docker image is also available on Docker Hub as phoronix/pts for a Linux-based container image with a number of the most popular tests pre-seeded to make for a convenient download.
Phoronix Test Suite Git
The open-source Phoronix Test Suite and Phoromatic benchmarking software is developed in the open on GitHub where you can track the latest development code. The Phoronix Test Suite Git code is normally fine to use and aims to always be in a release-able state for use.
Phoronix Media 2023
All trademarks used are properties of their respective owners. All rights reserved.
Оцениваем производительность инфраструктуры с Phoronix Test Suite
Aloha всем хабравчанам! Я Влад, системный администратор Cloud4Y. Хочу рассказать, как и зачем мы используем продукт Phoronix Test Suite, а также каким образом можно точно и легко определить реальную (не заявленную) производительность оборудования, предоставленного провайдером облачных услуг.
Во время выбора площадки для размещения инфраструктуры клиенты часто спрашивают, где у Cloud4Y находятся ЦОДы, какая сетевая инфраструктура, виртуализация, SLA и т. д. Это правильно, но важно обращать внимание и на аппаратный комплекс дата-центра. Как можно оценить его эффективность? Хороший вариант — с помощью Phoronix Test Suite.
Что такое Phoronix Test Suite
Phoronix Test Suite (PTS) — это свободно распространяемое (GNU GPLv3) кроссплаформенное ПО для проведения тестов – бенчмаркинга. PTS умеет проводить тесты в автоматическом режиме и доступен на Windows, Linux, macOS, Solaris и BSD. Phoronix Test Suite комплексно оценивает производительность компонентов системы, так как включает в себя более 600 различных тестов, начиная от производительности процессора и заканчивая тестами приложений (например, Apache или NGINX).
У PTS плотная интеграция с сайтом OpenBenchmarking.org, туда можно выгружать результаты, сохранять их в личной базе данных, делиться конфигурациями тестов. Согласно базе тестов OpenBenchmarking.org, различают 6 типов тестов:
- Disk – тестирование дисковой подсистемы. Например, Flexible IO Tester – известный как fio, популярный тестер I/O.
- Graphics – тестирование графического адаптера. Например, Unigine Heaven — тест вычисляет среднюю частоту кадров в Heaven для движка Unigine. Этот движок чрезвычайно требователен к видеокарте системы.
- Memory – тестирование оперативной памяти. Например, Stream – является самым популярным тестом для проверки производительности оперативной памяти.
- Network – тестирование сетевой производительности системы. Например, Loopback TCP Network Performance – тест проверяет, насколько эффективно работает сетевой стек TCP/IP.
- Processor – тестирование эффективности процессора. Например, x264 — тест производительности при кодировании образца файла с помощью x264 кодека, запущенного на ЦП (OpenCL отключен).
- System – тестирование общей производительности системы. Например, Apache HTTP Server — тест веб-сервера Apache HTTPD с помощью программы на Golang’e «Bombardier».
Важно: хотя phoronix можно использовать на различных ОС, тесты не всегда поддерживают все платформы. Поэтому перед тестированием рекомендую внимательно ознакомиться с выбранным тестом. Проверить совместимость можно двумя способами:
Первый: открыть на сайте OpenBenchmarking.org вкладку Tests и, найдя нужный тест, увидеть список поддерживаемых ОС.
Второй: открыв тест, посмотреть список поддерживаемых ОС.
Теперь, когда мы познакомились с продуктом, можно перейти к работе с ним. Погнали!
Установка Phoronix Test Suite
Рассмотрим установку PTS на операционные системы Linux и Windows. В качестве OC Linux используется Ubuntu 20.04 LTS, OC Windows – Windows Server 2019.
Для установки на Ubuntu 20.04
sudo apt-get update && sudo apt-get upgrade
устанавливаем необходимые пакеты
sudo apt install php7.4-gd curl git sqlite3 bzip2 php-cli php-xml
скачиваем дистрибутив PTS с официального github phoronix
git clone https://github.com/phoronix-test-suite/phoronix-test-suite
переходим в каталог с phoronix-test-suite и устанавливаем PTS путём запуска скрипта
cd phoronix-test-suite && sudo ./install-sh
Если у вас Windows Server 2019, делаем так:
- Обновляем систему с помощью Центра обновления Windows.
- Скачиваем дистрибутив PTS с официального github.
- Деархивируем скачанный файл в корень диска С. Открываем консоль с правами администратора, переходим в папку с PTS .
Запускаем скрипт phoronix-test-suite.bat, немного подождём, но за напитками пока рано – иногда нужно прожатие next-next-next. Для начала работы программы наберём phoronix-test-suite в командной строке (командная строка должна изменить свой внешний вид).
Тестирование
Установили? Отлично, теперь тестирование. Все команды PTS аналогичны для Windows и Linux дистрибутивов. Мы будем рассматривать работу в командной строке Linux. Тест можно запустить двумя способами, простым и сложным. Сложный путь – сначала необходимо установить тест (установится сам тест + зависимости)
после чего запустить тест
но я предлагаю более простой вариант. Используем для запуска теста команду
после чего Phoronix установит тест, зависимости и запустит тестирование.
Давайте попробуем запустить тест hmmer. Наберём в консоли
phoronix-test-suite benchmark hmmer
Произойдёт загрузка необходимых компонентов, после чего мы увидим характеристики машины, на которой запускается тест. Нам будут задано несколько вопросов.
Phoronix Test Suite предлагает сохранить результаты. Давайте выберем Y. Следующий вопрос о имени файла результатов тестирования, вводим hmmer-test-result. Ещё один вопрос — про имя конфигурации теста. Оно должно быть уникальным, но можно оставить по умолчанию, просто нажав Enter (Phoronix автоматически сформирует имя). Далее вопрос о описании конфигурации – давайте оставим по умолчанию, нажав Enter.
Далее запустится тест. Терпеливо ждём результаты, а пока их нет, давайте познакомимся с полезными командами Phoronix Test Suite:
- phoronix-test-suite help – покажет все доступные команды.
- phoronix-test-suite list-all-tests – поможет увидеть все доступные тесты для текущей машины.
- phoronix-test-suite list-all-tests | grep Processor для Linux, или .\phoronix-test-suite list-all-tests | Select-String -Pattern Processor для Windows — видим все тесты для процессора.
- phoronix-test-suite list-installed-tests – тесты, которые установлены на машине.
- phoronix-test-suite list-recommended-tests – список рекомендованных тестов для вашей ОС.
- phoronix-test-suite info — позволит посмотреть техническую информацию о тесте.
- phoronix-test-suite benchmark — позволит установить (если необходимо) и запустить подряд тесты test1, test2, test3.
А вот и тест завершился, вернёмся к результатам hmmer.
Ещё пара вопросов от Phoronix Test Suite после завершения теста. Хотим увидеть результат теста в консоль? /Y. Хотим загрузить результат на OpenBenchmarking.org? /Y. Хотим добавить к результату техническую информацию о машине? /Y. А с помощью полученной ссылки можно ознакомиться с результатами в браузере.
Слишком много вопросов? От них можно избавиться, добавив в параметры выполнение всех опций теста. Введем в командной строке:
Внимание! Чтобы настройки batch применялись, необходимо производить запуск тестов командой batch-benchmark вместо benchmark, в остальном синтаксис сохраняется. Например, phoronix-test-suite batch-benchmark hmmer .
Еще одной удобной особенностью Phoronix Test Suite является возможность записывать данные с различных датчиков системы. Например, частоту ядер процессора, утилизацию процессора и др. Чтобы воспользоваться этим функционалом, набираем в консоли:
MONITOR=all phoronix-test-suite batch-benchmark hmmer
Как вы видите, получился увесистый набор дополнительно записываемых данных:
А теперь самое важное — поговорим о результатах.
После выполнения тестов PTS выводит информацию о проведенном измерении в консоль и/или в файл. Результаты тестирования сохраняются в каталоги по умолчанию
для linux: ~/.phoronix-test-suite/test-results
для Windows: C :\Users\< User >\.phoronix-test-suite\test-results
Чтобы увидеть сохраненные тесты:
Чтобы подробно ознакомится с результатами теста
phoronix-test-suite show-result < имя теста >, например
phoronix-test-suite show-result hmmer-test-result
Можно конвертировать файл результатов в один из удобных для форматов: csv, json, pdf и др.
Разберёмся, как интерпретировать полученные данные. Наиболее простым вариантом является Excel – им и воспользуемся. Я использовал много разных тестов, так что покажу как выглядит часть моей таблички (зелёный цвет – лучший результат, красный – худший):
Каждый тест при выводе результата указывает, как должно трактоваться числовое значение:
- Higher Is Better – чем больше значение, тем лучше.
- Lower Is Better – чем меньше значение, тем лучше.
Результат каждого теста заносился в табличку и впоследствии был проведён анализ. Каждая тестируемая площадка получала в типовом тесте +1 за лучший результат, и -1 за худший, все стартовали с 0. После подсчёта получаем относительное число по типам нагрузки на площадке, на основании которого можно получить представление о производительности тестируемых площадок.
Удобство получаемых данных в том, что мы можем однозначно сказать, какая система лучше. Числовой вывод позволяет однозначно интерпретировать полученные значения. Результаты, полученные с помощью Phoronix Test Suite могут использоваться в качестве метрик, на основании которых производится сравнительные тестирования. Если вам нужно получать важные и актуальные данные о состоянии или изменении текущей инфраструктуры, а также быстрее реагировать на «узкие» места в используемых системах, решать проблемы вовремя, то методика тестирования с помощью Phoronix Test Suite — это простой и удобный путь.
В этой статье я показал, как мы проводим один из видов тестирования различных площадок в дата-центрах. Вы тоже можете сравнить вашу текущую инфраструктуру с облачными решениями с помощью программного продукта Phoronix Test Suite. Пусть ваш выбор будет лёгким и выгодным!
P.S. А ещё 28 декабря в 15-00 у нас будет вебинар по безопасности в соцсетях. Приглашаем зарегистрироваться.
Что ещё интересного есть в блоге Cloud4Y
Подписывайтесь на наш Telegram-канал, чтобы не пропустить очередную статью. Пишем не чаще двух раз в неделю и только по делу.