Standard 2,5 inch server disk sequential benchmarks

Here are some measurements with one (1) and ten (10) standard Hitachi 2,5″ server disks (as included with a Sun X4240) - please compare them to one (1) resp. four (4) Intel X-25E flash SSD drives (here).


linux-rxg8:~ # df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 132G 801M 125G 1% /
udev 4.0G 156K 4.0G 1% /dev
/dev/sdg 137G 544K 137G 1% /sd1
/dev/sdh 137G 544K 137G 1% /sd2
/dev/sdi 137G 544K 137G 1% /sd3
/dev/sdj 137G 544K 137G 1% /sd4
/dev/sdk 137G 544K 137G 1% /sd5
/dev/sdl 137G 544K 137G 1% /sd6
/dev/sdm 137G 544K 137G 1% /sd7
/dev/sdn 137G 544K 137G 1% /sd8
/dev/sdo 137G 544K 137G 1% /sd9
/dev/sdp 137G 544K 137G 1% /sd10
/dev/sdb 30G 544K 30G 1% /mnt1
/dev/sdc 30G 544K 30G 1% /mnt2
/dev/sdd 30G 544K 30G 1% /mnt3
/dev/sde 30G 544K 30G 1% /mnt4
/dev/sdf 30G 544K 30G 1% /mnt5

 

 

linux-rxg8:~ # iozone -t1 -i0 -i1 -r128m -s10g -I -F /sd1/testfile
 Iozone: Performance Test of File I/O
  Version $Revision: 3.226 $
  Compiled for 32 bit mode.
  Build: linux

Contributors:William Norcott, Don Capps, Isom Crawford, Kirby Collins
  Al Slater, Scott Rhine, Mike Wisner, Ken Goss
  Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR,
  Randy Dunlap, Mark Montague, Dan Million,
  Jean-Marc Zucconi, Jeff Blomberg,
  Erik Habbinga, Kris Strecker.

Run began: Fri Dec 5 16:13:37 2008

Record Size 131072 KB
 File size set to 10485760 KB
 O_DIRECT feature enabled
 Command line used: iozone -t1 -i0 -i1 -r128m -s10g -I -F /sd1/testfile
 Output is in Kbytes/sec
 Time Resolution = 0.000001 seconds.
 Processor cache size set to 1024 Kbytes.
 Processor cache line size set to 32 bytes.
 File stride size set to 17 * record size.
 Throughput test with 1 process
 Each process writes a 10485760 Kbyte file in 131072 Kbyte records

Children see throughput for 1 initial writers = 86013.13 KB/sec
 Parent sees throughput for 1 initial writers = 85993.47 KB/sec
 Min throughput per process = 86013.13 KB/sec
 Max throughput per process = 86013.13 KB/sec
 Avg throughput per process = 86013.13 KB/sec
 Min xfer = 10485760.00 KB

Children see throughput for 1 rewriters = 86492.84 KB/sec
 Parent sees throughput for 1 rewriters = 86471.07 KB/sec
 Min throughput per process = 86492.84 KB/sec
 Max throughput per process = 86492.84 KB/sec
 Avg throughput per process = 86492.84 KB/sec
 Min xfer = 10485760.00 KB

Children see throughput for 1 readers = 87382.30 KB/sec
 Parent sees throughput for 1 readers = 87370.67 KB/sec
 Min throughput per process = 87382.30 KB/sec
 Max throughput per process = 87382.30 KB/sec
 Avg throughput per process = 87382.30 KB/sec
 Min xfer = 10485760.00 KB

Children see throughput for 1 re-readers = 87361.32 KB/sec
 Parent sees throughput for 1 re-readers = 87346.74 KB/sec
 Min throughput per process = 87361.32 KB/sec
 Max throughput per process = 87361.32 KB/sec
 Avg throughput per process = 87361.32 KB/sec
 Min xfer = 10485760.00 KB

iozone test complete.

 

 

 

linux-rxg8:~ # iozone -t10 -i0 -i1 -r128m -s10g -I -F /sd1/testfile /sd2/testfile /sd3/testfile /sd4/testfile /sd5/testfile /sd6/testfile /sd7/testfile /sd8/testfile /sd9/testfile /sd10/testfile
 Iozone: Performance Test of File I/O
  Version $Revision: 3.226 $
  Compiled for 32 bit mode.
  Build: linux

Contributors:William Norcott, Don Capps, Isom Crawford, Kirby Collins
  Al Slater, Scott Rhine, Mike Wisner, Ken Goss
  Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR,
  Randy Dunlap, Mark Montague, Dan Million,
  Jean-Marc Zucconi, Jeff Blomberg,
  Erik Habbinga, Kris Strecker.

Run began: Fri Dec 5 16:22:39 2008

Record Size 131072 KB
 File size set to 10485760 KB
 O_DIRECT feature enabled
 Command line used: iozone -t10 -i0 -i1 -r128m -s10g -I -F /sd1/testfile /sd2/testfile /sd3/testfile /sd4/testfile /sd5/testfile /sd6/testfile /sd7/testfile /sd8/testfile /sd9/testfile /sd10/testfile
 Output is in Kbytes/sec
 Time Resolution = 0.000001 seconds.
 Processor cache size set to 1024 Kbytes.
 Processor cache line size set to 32 bytes.
 File stride size set to 17 * record size.
 Throughput test with 10 processes
 Each process writes a 10485760 Kbyte file in 131072 Kbyte records

Children see throughput for 10 initial writers = 857660.77 KB/sec
 Parent sees throughput for 10 initial writers = 805082.34 KB/sec
 Min throughput per process = 83305.27 KB/sec
 Max throughput per process = 90518.18 KB/sec
 Avg throughput per process = 85766.08 KB/sec
 Min xfer = 9699328.00 KB

Children see throughput for 10 rewriters = 858106.52 KB/sec
 Parent sees throughput for 10 rewriters = 852590.91 KB/sec
 Min throughput per process = 83325.30 KB/sec
 Max throughput per process = 91047.17 KB/sec
 Avg throughput per process = 85810.65 KB/sec
 Min xfer = 9699328.00 KB

Children see throughput for 10 readers = 822320.46 KB/sec
 Parent sees throughput for 10 readers = 815800.17 KB/sec
 Min throughput per process = 79950.91 KB/sec
 Max throughput per process = 86293.77 KB/sec
 Avg throughput per process = 82232.05 KB/sec
 Min xfer = 9830400.00 KB

Children see throughput for 10 re-readers = 821733.08 KB/sec
 Parent sees throughput for 10 re-readers = 816734.99 KB/sec
 Min throughput per process = 80013.52 KB/sec
 Max throughput per process = 86380.83 KB/sec
 Avg throughput per process = 82173.31 KB/sec
 Min xfer = 9830400.00 KB

iozone test complete.

 

 

 

 

 

 

 

 

Intel X-25 E sequential IOZone benchmarks

Here are some iozone results from the new Intel X-25E Solid State Flash disk. The test server is a Sun X4240 with one quad-core Opteron processor and 8 GB RAM. I exchanged some of the standard 2,5″ Hitachi drives (144 GB, 10k) against the Intel SSD. The internal SAS controller of the Sun can also easily handle the SATA interface of the flash drive. The server is running OpenSuSE 10.3 and the Intel drive was formatted with XFS. Please note the O_DIRECT option which forced I/O to bypass the linux buffer cache.


linux-rxg8:~ # df -h /dev/sdb
Filesystem            Size  Used Avail Use% Mounted on
/dev/sdb               30G  544K   30G   1% /mnt1  

linux-rxg8:~ # iozone -t1 -i0 -i1 -r128m -s10g -I -F /mnt1/testfile
 Iozone: Performance Test of File I/O
  Version $Revision: 3.226 $
  Compiled for 32 bit mode.
  Build: linux

Contributors:William Norcott, Don Capps, Isom Crawford, Kirby Collins
  Al Slater, Scott Rhine, Mike Wisner, Ken Goss
  Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR,
  Randy Dunlap, Mark Montague, Dan Million,
  Jean-Marc Zucconi, Jeff Blomberg,
  Erik Habbinga, Kris Strecker.

Run began: Fri Dec 5 15:57:25 2008

Record Size 131072 KB
 File size set to 10485760 KB
 O_DIRECT feature enabled
 Command line used: iozone -t1 -i0 -i1 -r128m -s10g -I -F /mnt1/testfile
 Output is in Kbytes/sec
 Time Resolution = 0.000001 seconds.
 Processor cache size set to 1024 Kbytes.
 Processor cache line size set to 32 bytes.
 File stride size set to 17 * record size.
 Throughput test with 1 process
 Each process writes a 10485760 Kbyte file in 131072 Kbyte records

Children see throughput for 1 initial writers = 198804.62 KB/sec
 Parent sees throughput for 1 initial writers = 198729.48 KB/sec
 Min throughput per process = 198804.62 KB/sec
 Max throughput per process = 198804.62 KB/sec
 Avg throughput per process = 198804.62 KB/sec
 Min xfer = 10485760.00 KB

Children see throughput for 1 rewriters = 199519.84 KB/sec
 Parent sees throughput for 1 rewriters = 199440.98 KB/sec
 Min throughput per process = 199519.84 KB/sec
 Max throughput per process = 199519.84 KB/sec
 Avg throughput per process = 199519.84 KB/sec
 Min xfer = 10485760.00 KB

Children see throughput for 1 readers = 262813.72 KB/sec
 Parent sees throughput for 1 readers = 262704.61 KB/sec
 Min throughput per process = 262813.72 KB/sec
 Max throughput per process = 262813.72 KB/sec
 Avg throughput per process = 262813.72 KB/sec
 Min xfer = 10485760.00 KB

Children see throughput for 1 re-readers = 262916.41 KB/sec
 Parent sees throughput for 1 re-readers = 262807.45 KB/sec
 Min throughput per process = 262916.41 KB/sec
 Max throughput per process = 262916.41 KB/sec
 Avg throughput per process = 262916.41 KB/sec
 Min xfer = 10485760.00 KB

 

 

iozone test complete.

Here is the same server writing to 4 Intel SSD drives (/mnt1 to /mnt4):


linux-rxg8:~ # iozone -t4 -i0 -i1 -r128m -s10g -I -F /mnt1/testfile /mnt2/testfile /mnt3/testfile /mnt4/testfile
 Iozone: Performance Test of File I/O
  Version $Revision: 3.226 $
  Compiled for 32 bit mode.
  Build: linux

Contributors:William Norcott, Don Capps, Isom Crawford, Kirby Collins
  Al Slater, Scott Rhine, Mike Wisner, Ken Goss
  Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR,
  Randy Dunlap, Mark Montague, Dan Million,
  Jean-Marc Zucconi, Jeff Blomberg,
  Erik Habbinga, Kris Strecker.

Run began: Fri Dec 5 16:06:55 2008

Record Size 131072 KB
 File size set to 10485760 KB
 O_DIRECT feature enabled
 Command line used: iozone -t4 -i0 -i1 -r128m -s10g -I -F /mnt1/testfile /mnt2/testfile /mnt3/testfile /mnt4/testfile
 Output is in Kbytes/sec
 Time Resolution = 0.000001 seconds.
 Processor cache size set to 1024 Kbytes.
 Processor cache line size set to 32 bytes.
 File stride size set to 17 * record size.
 Throughput test with 4 processes
 Each process writes a 10485760 Kbyte file in 131072 Kbyte records

Children see throughput for 4 initial writers = 784346.00 KB/sec
 Parent sees throughput for 4 initial writers = 774795.80 KB/sec
 Min throughput per process = 193689.83 KB/sec
 Max throughput per process = 199207.66 KB/sec
 Avg throughput per process = 196086.50 KB/sec
 Min xfer = 10223616.00 KB

Children see throughput for 4 rewriters = 783888.58 KB/sec
 Parent sees throughput for 4 rewriters = 780220.57 KB/sec
 Min throughput per process = 192666.42 KB/sec
 Max throughput per process = 198970.31 KB/sec
 Avg throughput per process = 195972.14 KB/sec
 Min xfer = 10223616.00 KB

Children see throughput for 4 readers = 1039917.48 KB/sec
 Parent sees throughput for 4 readers = 1036608.76 KB/sec
 Min throughput per process = 258478.77 KB/sec
 Max throughput per process = 263248.38 KB/sec
 Avg throughput per process = 259979.37 KB/sec
 Min xfer = 10354688.00 KB

Children see throughput for 4 re-readers = 1040995.34 KB/sec
 Parent sees throughput for 4 re-readers = 1038088.39 KB/sec
 Min throughput per process = 258846.36 KB/sec
 Max throughput per process = 263534.19 KB/sec
 Avg throughput per process = 260248.84 KB/sec
 Min xfer = 10354688.00 KB


iozone test complete.

My impression: this is definitely some great technology! It is very difficult to get this kind of performance from disk drives and this is purely sequential I/O wich does not leverage the SSD’s random access capabilities, I was quite satisfied to see that the single LSI SAS controller in the Sun x4240 allows this kind of throughput out of the box.