VPS benchmarking

logo

When you are looking for a VPS server it´s important to look for VPS servers providing the promised capabilities and not oversold. Using standard tools, we have prepared a tutorial to test your VPS performance and check if the server meets your requirements.

We wanted to test server performance but also test disk and network speeds so we will show you how to simply run this tests in your server.

There are many tools to test server performance but we wanted to use a standard, well-known tool with numeric results so you can measure it against other servers. Unixbench is a easy to use tool for server performance available for linux servers and with almost zero requirements. It was created in 1983 at Monash University as a standard way to check server performance and adopted and expanded by BYTE magazine.

The requirements for Unixbench are quite simple. Just a linux server with standard gcc to compile the tools and perl with perl-Time-HiRes core module. It´s capable of benchmarking single and multi-core servers showing results comparing performance against a baseline predefined server. Unixbench runs many scripts to test many aspects of system performance as described in the Unixbench´s GitHub´s site.

We have created a Centos 6.5, 64 bits, OpenVZ Premium VPS server with 6 cores and 4Gb of RAM in our platform to run the tests and show performance. This servers are running in high-end dedicated servers managed by us in our France datacenter.

 

Preparing the system

We will need gcc and perl to compile and run unixbench, unzip to download and decompress the file from GitHub and the perl module perl-Time-HiRes for the execution of the benchmark.

yum install unzip
yum install gcc
yum install perl-Time-HiRes

Then, download the master.zip file from the Unixbench´s GitHub´s site and decompress it with

unzip master.zip

Enter the created directories and compile unixbench with

make

 

RUNNING THE TESTS

Once compiled, we just run the tests with the command

./Run

and go for a coffee or two because it will take some time. Unixbench will test the preformance of the server for one core, for all the cores and then it will show a report with the final values. The test in our system took about 40 minutes and gave the following results (higher is better):

Single core benchmark index score: 1279.3
Six core benchmark index score: 3723.6

Multi core is about 3 times faster than single core test. This is due to how the tests are programmed and the usage of the server.

We also wanted to test disk speed in our SATA drives so we run a simple dd command to create a large file in disk:

dd if=/dev/zero of=test bs=64k count=16k conv=fdatasync

The command gave a 139 megabytes per second value. Not bad.

The final test was to check network speed by downloading some 100 Mb files from Internet. Files can be downloaded from any site with large test files like Linode. The command to test the speed is

wget URL

This will download the file and show the speed in megabytes per second. We downloaded from many sites and got up to 12.5 Mbytes per second as a top download speed as the virtual server is limited to 100 megabits per second = 12.5 megabytes per second.

Overall we are very happy with the performance and speed of our server. Now it´s time for you to measure your server. Remember that this is a very CPU expensive test so your provider may call your attention on this test.

Check this video to see all the process: