Phoronix Test Suite

From wiki.mikejung.biz
Jump to: navigation, search

Phoronix Test Suite Overview

The latest version of Phoronix test suite can be found here. Please make sure you download the latest stable version, as it gets updated every few months. Phoronix test suite is one of the most common Linux benchmarking utilities out there and it offers a large amount of benchmarking tests that can be uploaded to openbenchmarking.org so you can compare performance between similar hardware.

You can find information on other benchmarking utilities such as FIO or Sysbench by visiting the main Benchmarking wiki page.

Phoronix Test Suite Installation

How to install Phoronix test suite on Ubuntu 15.10

To install Phoronix test suite version 6 on Ubuntu 15.10, grab the latest .deb, and be sure to install php5-gd, php-json and php-cli otherwise the install will fail

wget http://phoronix-test-suite.com/releases/repo/pts.debian/files/phoronix-test-suite_6.2.1_all.deb
apt-get install php5-cli php5-gd php5-json
dpkg -i phoronix-test-suite_6.2.1_all.deb

How to install Phoronix test suite on Ubuntu 14.10

To install the latest version of Phoronix test suite on Ubuntu 14.10, grab the latest .deb, install php5 and then just install the package

wget http://phoronix-test-suite.com/releases/repo/pts.debian/files/phoronix-test-suite_6.0.1_all.deb
apt-get install php5-cli php5-gd php5-json
dpkg -i phoronix-test-suite_6.0.1_all.deb

If you don't want to upload results or be asked silly questions by phoronix before it runs a test.

echo nn | /usr/bin/phoronix-test-suite batch-setup

If you get this error when trying to run the Apache or Nginx test The following tests failed to properly run:- pts/nginx-1.1.0: Static Web Page Serving you might need to run the command below to disable IPV6 networking which appears to be what causes this to fail, every time I run into this error disabling IPV6 using sysctl resolves the issue

## Resolves the Nginx phoronix issue with Ubuntu

echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf
sysctl -p

How to install Phoronix test suite on CentOS 6 and CentOS 7

To install the latest version of Phoronix test suite on CentOS 6 or CentOS 7 you can download the latest generic package, if you use wget you should rename the file after you download it, simply append .tar.gz then extract the package.

yum install wget php-cli php-xml bzip2 -y
wget http://www.phoronix-test-suite.com/download.php?file=phoronix-test-suite-6.2.2 -O phoronix-test-suite_6.2.2.tar.gz
tar xvf phoronix-test-suite_6.2.2.tar.gz
cd phoronix-test-suite/
./install-sh

http://www.phoronix-test-suite.com/download.php?file=phoronix-test-suite-6.2.2


If you get this error when trying to run the Apache or Nginx test The following tests failed to properly run:- pts/nginx-1.1.0: Static Web Page Serving you might need to run the command below to disable IPV6 networking which appears to be what causes this to fail, every time I run into this error disabling IPV6 using sysctl resolves the issue

## Resolves the Nginx phoronix issue with CentOS 6 or CentOS 7

echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf
sysctl -p

Phoronix Test Suite: Basic Commands

List all available test suites

To list all of the available test suites that Phoronix provides, run the command below. This will show all available suites. Not all of the test suites will be installed, but if you want to know what your options are with Phoronix, the command below should get you started.

/usr/bin/phoronix-test-suite list-available-suites

List all available tests

Similar to the command above, however this command will show individual tests. A suite is made up of multiple tests, so if you just want to run a specific benchmark and want to see what Phoronix offers, the command below should show you what benchmarking options there are.

/usr/bin/phoronix-test-suite list-available-tests

Phoronix Test Suite Benchmarking Overview

Phoronix Test Suite Apache and Nginx Tests

Phoronix test suite includes Apache Benchmark 2.4.7, also called: pts/apache-1.6.1 This test is just a basic AB test that hammers Apache with lots of requests. I'm not sure what test file is being used, but I would assume Apache is just serving up a basic html file and AB tries to request the file as many times as possible in a given amount of time.

/usr/bin/phoronix-test-suite benchmark pts/apache

If the Phoronix apache test fails to install / download you may need to install bzip2 to get around the error.

There is also an NGINX performance test, called pts/nginx-1.1.0. This test also uses Apache benchmark, but this time NGINX is serving the requests, not apache. If you run into errors while running the test, and it fails to complete on Ubuntu. You might need to disable IPV6 in /etc/sysctl.conf.

/usr/bin/phoronix-test-suite benchmark pts/nginx

###If pts/nginx-1.1.0 fails to run on Ubuntu, run these commands to resolve the issue

echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf
sysctl -p
/usr/bin/phoronix-test-suite benchmark pts/phpbench

Phoronix Compression and Decompression Tests

If you want to use Phoronix Test Suite to test out compression performance, you can use the 5 compress-* tests below. These tests are very CPU intensive, so make sure you have decent CPU cooling before you run a ton of compression tests.

/usr/bin/phoronix-test-suite benchmark pts/compress-7zip
/usr/bin/phoronix-test-suite benchmark pts/compress-gzip 
/usr/bin/phoronix-test-suite benchmark pts/compress-lzma
/usr/bin/phoronix-test-suite benchmark pts/compress-pbzip2

If you want to use Phoronix Test Suite to test out decompression performance, you can use the 5 decompress-* tests below.

/usr/bin/phoronix-test-suite benchmark pts/system-decompress-bzip2
/usr/bin/phoronix-test-suite benchmark pts/system-decompress-gzip
/usr/bin/phoronix-test-suite benchmark pts/system-decompress-tiff
/usr/bin/phoronix-test-suite benchmark pts/system-decompress-xz
/usr/bin/phoronix-test-suite benchmark pts/system-decompress-zlib

Phoronix Media Encoding Tests

The tests below should give you a good idea about how well your server or CPU handles encoding.

/usr/bin/phoronix-test-suite benchmark pts/encode-ape
/usr/bin/phoronix-test-suite benchmark pts/encode-flac
/usr/bin/phoronix-test-suite benchmark pts/encode-mp3
/usr/bin/phoronix-test-suite benchmark pts/encode-ogg
/usr/bin/phoronix-test-suite benchmark pts/encode-opus
/usr/bin/phoronix-test-suite benchmark pts/encode-wavpack

Phoronix Test Suite also has an FFmpeg test which should help to give you a general idea of FFmpeg performance.

/usr/bin/phoronix-test-suite benchmark pts/ffmpeg

General Test Suites

You can find the full list of all the test run under the "CPU" test suite -- http://openbenchmarking.org/suite/pts/cpu

The test suites below contain multiple benchmarks which make up the suite. If you want to run a specific test, or only want to run one or two different tests then you should skip to the sections below.

phoronix-test-suite benchmark pts/cpu
phoronix-test-suite benchmark pts/cryptography
phoronix-test-suite benchmark pts/database
phoronix-test-suite benchmark pts/java

Suite tests (A lot of tests wrapped up into one)

## See what tests are available
phoronix-test-suite list-tests
## Basic CPU test
phoronix-test-suite benchmark pts/cpu
## Basic Disk test
phoronix-test-suite benchmark pts/disk
## Basic RAM test
phoronix-test-suite benchmark pts/memory
## Overall system test
phoronix-test-suite benchmark pts/linux-system
## Overall mobo test
phoronix-test-suite benchmark pts/server

Disk and File System Tests

##fio is an advanced disk benchmark that depends upon the kernel's AIO access library.
phoronix-test-suite benchmark pts/fio

##AIO-Stress is an a-synchronous I/O benchmark created by SuSE. Current this profile uses a 2048MB test file and a 64KB record size.
phoronix-test-suite benchmark pts/aio-stress

##Dbench is a benchmark designed by the Samba project as a free alternative to netbench, but dbench contains only file-system calls for testing the disk performance.
phoronix-test-suite benchmark pts/dbench

##The IOzone benchmark tests the hard disk drive / file-system performance.
phoronix-test-suite benchmark pts/iozone

##Compilebench tries to age a filesystem by simulating some of the disk IO common in creating, compiling, patching, stating and reading kernel trees. It indirectly measures how well filesystems can maintain directory locality as the disk fills up and directories age. This current test is setup to use the makej mode with 10 initial directories
phoronix-test-suite benchmark pts/compilebench

CPU Tests

##Smallpt is a C++ global illumination renderer written in less than 100 lines of code. Global illumination is done via unbiased Monte Carlo path tracing and there is multi-threading support via the OpenMP library.
phoronix-test-suite benchmark pts/smallpt

##This test measures the time needed to compress a file using Gzip compression.
phoronix-test-suite benchmark pts/compress-gzip
 
##Time how long it takes to calculate pi to varying lengths.
phoronix-test-suite benchmark pts/systester

##This is a benchmark of John The Ripper, which is a password cracker.
phoronix-test-suite benchmark pts/john-the-ripper

##This is a test of C-Ray, a simple raytracer designed to test the floating-point CPU performance. This test is multi-threaded (16 threads per core), will shoot 8 rays per pixel for anti-aliasing, and will generate a 1600 x 1200 image.
phoronix-test-suite benchmark pts/c-ray

##NPB, NAS Parallel Benchmarks, is a benchmark developed by NASA for high-end computer systems. This test profile currently uses the MPI version of NPB.
phoronix-test-suite benchmark pts/npb

##This is a test of ab, which is the Apache benchmark program. This test profile measures how many requests per second a given system can sustain when carrying out 700,000 requests with 100 requests being carried out concurrently.
phoronix-test-suite benchmark pts/apache

RAM and Cache Tests

##This benchmark tests the system memory (RAM) performance.
phoronix-test-suite benchmark pts/ramspeed

##This benchmark tests the system memory (RAM) performance.
phoronix-test-suite benchmark pts/stream

##CacheBench is designed to test the memory and cache bandwidth performance
phoronix-test-suite benchmark pts/cachebench 

##PHPBench is a benchmark suite for PHP. It performs a large number of simple tests in order to bench various aspects of the PHP interpreter. PHPBench can be used to compare hardware, operating systems, PHP versions, PHP accelerators and caches, compiler options, etc.
phoronix-test-suite benchmark pts/phpbench