benchmarking


It is always good to know how powerful a new cloud server is, when you take delivery.

There are a range of benchmarks available, however for pure cpu, I like to use some Mathematics.

Programs that tax a processor for several hours, often will be compiled from source.

( Makes sense as if the thing is cpu intensive,
then it really is important for it to be tailored more closely,
to the features available on the underlying host )

Benchmarking with fabric example – hosted on Bitbucket:

The fabric file at the link above, will download the code to your server and run the benchmark.

The image below (click to resize fullscreen) shows the preparatory steps in action as witnessed through the fabric call on the local machine.

benchmarking server from fabric

fabric to benchmark

The Mathematics will run for anywhere between 1 and 15 hours, depending on the raw (single core) processing power on the server being benchmarked.

Fabric availability as standard package

Because Fabric relies on Python 2.5 or newer, you will have to do your own thinking, for CentOS 5 and RedHat 5 (which have python 2.4 by default)

Here is a useful link for Python 2.5 and fabric on rpm based ‘5’ series systems.

Here is a fabric rpm in fedora that assumes a Python version 2.7 or newer.

Advertisements

In a couple of years there will be whole teams who have never run a benchmark on bare metal.

With that in mind, I thought it worth doing some personal and standard benchmarks, so that future cloud provision can be judged against.

Here is my table for vps, dedicated, desktop, laptop which gives me somewhere to slot future cloud instances.

benchmark table

If you have access to bare metal today, then it might be worth spending an hour now doing a table.

Some of my benchmarks are very particular to Python and/or Mathematics using Gmp library, however unixbench score (highlighted) is a standard score, that you can use in your own table as a general guide.