Singapore Dedicated Server Bandwidth (Uplink) | Network latency | Environment monitoring
Xssist™ Group Pte Ltd Singapore Dedicated Servers Client Testimonials Blog Community Frequently Asked Questions Contact Page
Singapore Dedicated Servers
Control Panel System
Control Panel System
Xssist Blog

Benchmark using iometer on linux

There are plenty of software for testing harddisk performance. However, the focus is mainly on read and write performance, and are usually targeted at desktop users. For web, mail and database servers, the requirement is for high random read write IOPs rather than sequential read or sequential write.

On that basis, iometer is one of the few tools suitable for benchmarking a harddisk for use on a server. Using iometer on windows is straight forward, but on linux, there are a few obstacles to go through.

Following are my observations, and steps to follow in using iometer on linux; on a fresh CentOS installation. I am particularly interested in testing the Intel X25-E and X25-M SSDs on iometer. Intel quotes 4KB results based on "8 GB span", and "up to"; which does not gives a picture of what the sustained IOPs are. I am exploring using those SSDs in servers, particularly for VPS servers, so finding out the performance of the Intel SSDs vs SCSI is important for Xssist.

In various versions, eg. 2006 version, iometer uses O_DIRECT. Yet, on others, the O_DIRECT option is missing. It appears use of O_DIRECT will not allow queue depth more than 1 per dynamo process. It is possible to set queue depth in the iometer GUI, but the actual run will be limited to queue depth 1; your mileage may vary, confirm the queue depth with iostat.

The latest available iometer on sourceforge, iometer-2008-06-22-rc2.src.tgz, does not use O_DIRECT, grep of the source code does not show usage of O_DIRECT.

However, without O_DIRECT, I could not get dynamo to produce write IOPS while doing random 4KB RW tests, there is read IOPS but very minimal write IOPS, when monitored using iostat.

What I do to work around the problem is to use the source with O_DIRECT, and open multiple dynamo processes to generate higher queue depth.

Steps for using iometer,
  1. to download source from
  2. rename the Makefile with suitable extension to makefile
    eg. mv Makefile-Linux.x86_64 makefile
  3. make dynamo
  4. disable iptables
  5. download windows version to a pc. run iometer on the pc
  6. run dynamo on the linux server

    [root@bench src]# ./dynamo -i -m

    where is the IP of the pc running iometer. is IP of the server running dynamo
If all goes well, you will see the following,

example of output from dynamo of a correct startup

[root@bench src]# ./dynamo -i -m
Fail to open kstat device file. You can ignore this warning unless you are running dynamo on XSCALE CPU.

Command line parameter(s):
Looking for Iometer on ""

Sending login request... (port 33839)
Successful PortTCP::Connect
- port name:

*** If dynamo and iometer hangs here, please make sure
*** you use a correct -m <manager_computer_name> that
*** can ping from iometer machine. use IP if need.
Login accepted.
Reporting drive information...
Set_Sizes: Open on "/sys/iobw.tst" failed (error Permission denied).
Set_Sizes: Open on "/dev/shm/iobw.tst" failed (error Invalid argument).
Set_Sizes: Open on "/proc/sys/fs/binfmt_misc/iobw.tst" failed (error Permission denied).
Set_Sizes: Open on "/var/lib/nfs/rpc_pipefs/iobw.tst" failed (error Permission denied).
Physical drives (raw devices)...
Reporting TCP network information...

Mar 2010

[Sysadmin] Access to servers via mobile device and ssh
[Sysadmin] RAID 0 scaling on SCSI U320, Bonnie++ 1.93c benchmark results
[Sysadmin] TODO (Apr 2007)
[Sysadmin] Recover from mistakes in /etc/fstab or e2label usage
[Sysadmin] Server overloaded?
[Sysadmin] Server load high: CPU bound
[Sysadmin] Smokeping: deluxe latency measurement tool
[Sysadmin] Smokeping
[Sysadmin] Jul 08 to Oct 08 updates
[Sysadmin] Weak link - downtimes caused by the organic being
[Sysadmin] BIOS upgrades - uniflash - hotflash
[Sysadmin] Sizing for Virtual Private Server (VPS) & SSDs
[Sysadmin] iphone, ipod - bluetooth keyboard - Nokia e51
[Sysadmin] e2label, fdisk, /etc/fstab, mount, linux rescue, rescue disk, CentOS
[Sysadmin] opensuse, fix waiting for mandatory device, eth0, eth1, eth2, eth3
[Sysadmin] mount: could not find filesystem '/dev/root'
[Sysadmin] Parallels Virtuozzo Physical server to Container migration (vzp2v)
[Web hosting] DDOS (Distributed Denial of Service)
[Web hosting] Uptime for dedicated server, VPS and shared server
[Web hosting] Shared, Guaranteed and Dedicated Bandwidth
[Web hosting] Unmetered bandwidth
[Web hosting] Free domains?
[Web hosting] Joomla Scalability
[SPAM handling] Tracking applications which are exploited for mass spam mailing
[Buzzwords] Clusters, Clustering
[Security] Destruction of faulty hard disks
[Storage] Benchmark using iometer on linux
[SSD] Benchmark Intel X25-E and Intel X25-M flash SSDs
[SSD] Intel X25-E 64GB G1, 4KB Random IOPS, iometer benchmark
[SSD] Intel X25-M 160GB G2, 4KB Random IOPS, iometer benchmark
[SSD] Comparison of Intel X25-E G1 vs Intel X25-M G2
[cPanel] ClamAV version has reached End of Life! Please upgrade to version 0.95
[cPanel] How to install Java, ImageMagick and ffmpeg
[Perl] Opening text files for reading, and simple regexp (regular expressions)