How to test your (budget) VPS I/O speed
Harddisk (I/O) performance is becoming a bigger problem with VPS cloud hosting. Low IO performance can cause high loads and delays on you server especially with websites with a lot of database queries and without caching.
Most of the time a server needs to read your harddisk to serve data to a visitor, so read performance is the most important to be stable. To be sure your IO speed is stable you should test a serveral times on different times of the day. Let's say you benchmark on monday morning at 9 AM, tuesday afternoon at 2 PM and wednesday evening around 8 PM. Everytime you test, do around 5 benchmarks.
Read performance test on linux
To test your IO performance download and install the utility: HDparm. In most Linux OS you have a installer tool u can use. Some examples:
apt-get install hdparm
yum install hdparm
deb install hdparm
After installing hdparm you should lookup your device name of the harddisk. An easy way to do this is using the command: "df -h" you will get a list like this:
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00 54G 3.4G 48G 7% /
/dev/sdb1 99M 33M 61M 35% /boot
tmpfs 2.0G 0 2.0G 0% /dev/shm
/dev/xvda1 54G 3.4G 48G 7% /
/dev/sdb1 99M 33M 61M 35% /boot
tmpfs 2.0G 0 2.0G 0% /dev/shm
Look for the device name of the root (/) filesystem. Now use this command to test the performance.
The result will look something like this:
/dev/xvda1:
Timing buffered disk reads: 324 MB in 3.01 seconds = 187.76 MB/sec
Like I mentioned before, do several tests, 5 or more, to be sure what your IO speed is.
Write performance on Linux
To test the write perfomance of your VPS we recommend the user of the "DD" tool. This tool is use for a lot of other things, but it's very easy to use it to test IO performance.
WARNING: be sure what you do, if not used correctly, u can overwrite your data, we are NOT responsable!
To test the write performance of the harddisk we create a large empty file on your server. In this example we create a file of 1GB.
dd if=/dev/zero of=/root/file_1GB bs=1M count=1k
When the file is finished, you will see something like this:
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 3.92228 seconds, 274 MB/s
Read/Write performance on Windows
There are a lot of benchmark tool available for Windows, for example: http://crystalmark.info/software/CrystalDiskMark/index-e.html
What is good performance for a VPS?
This depends what you pay for it, but if you want a good performing server you should look for a server with an average of 100MB+ per second. The higher the better. When your server has less then 100MB/s and you pay good money for it, think of moving to another VPS provider.
binadit offers Fully managed, High performance cloud hosting with guaranteed IO perfomance. If you detect low performance, we will move you to another node the same day. Contact us at [email protected] for more information