IOPS

From Wikipedia, the free encyclopedia
Jump to: navigation, search

IOPS (Input/Output Operations Per Second, pronounced eye-ops) is a common performance measurement used to benchmark computer storage devices like hard disk drives (HDD), solid state drives (SSD), and storage area networks (SAN). As with any benchmark, IOPS numbers published by storage device manufacturers do not guarantee real-world application performance.[1][2]

IOPS can be measured with applications, such as Iometer (originally developed by Intel), as well as IOzone and FIO[3] and is primarily used with servers to find the best storage configuration.

The specific number of IOPS possible in any system configuration will vary greatly, depending upon the variables the tester enters into the program, including the balance of read and write operations, the mix of sequential and random access patterns, the number of worker threads and queue depth, as well as the data block sizes.[1] There are other factors which can also affect the IOPS results including the system setup, storage drivers, OS background operations, etc. Also, when testing SSDs in particular, there are preconditioning considerations that must be taken into account.[4]

Contents

[edit] Performance characteristics

Random access compared to sequential access.

The most common performance characteristics measured are sequential and random operations. Sequential operations access locations on the storage device in a contiguous manner and are generally associated with large data transfer sizes, e.g., 128 KB. Random operations access locations on the storage device in a non-contiguous manner and are generally associated with small data transfer sizes, e.g., 4 KB.

The most common performance characteristics are as follows:

Measurement Description
Total IOPS Total number of I/O operations per second (when performing a mix of read and write tests)
Random Read IOPS Average number of random read I/O operations per second
Random Write IOPS Average number of random write I/O operations per second
Sequential Read IOPS Average number of sequential read I/O operations per second
Sequential Write IOPS Average number of sequential write I/O operations per second

For HDDs and similar electromechanical storage devices, the random IOPS numbers are primarily dependent upon the storage device's random seek time, whereas for SSDs and similar solid state storage devices, the random IOPS numbers are primarily dependent upon the storage device's internal controller and memory interface speeds. On both types of storage devices the sequential IOPS numbers (especially when using a large block size) typically indicate the maximum sustained bandwidth that the storage device can handle.[1] Often sequential IOPS are reported as a simple MB/s number as follows:

IOPS * TransferSizeInBytes = BytesPerSec (with the answer typically converted to MegabytesPerSec)

Some HDDs will improve in performance as the number of outstanding IO's (i.e. queue depth) increases. This is usually the result of more advanced controller logic on the drive performing command queuing and reordering commonly called either Tagged Command Queuing (TCQ) or Native Command Queuing (NCQ). Most commodity SATA drives either cannot do this, or their implementation is so poor that no performance benefit can be seen.[citation needed] Enterprise class SATA drives, such as the Western Digital Raptor and Seagate Barracuda NL will improve by nearly 100% with deep queues.[5] High-end SCSI drives more commonly found in servers, generally show much greater improvement, with the Seagate Savvio exceeding 400 IOPS—more than doubling its performance.[citation needed]

While traditional HDDs have about the same IOPS for read and write operations, most NAND flash-based SSDs are much slower writing than reading due to the inability to rewrite directly into a previously written location forcing a procedure called garbage collection.[6][7][8] This has caused hardware test sites to start to do IOPS testing, providing independently measured results.

Newer flash SSD drives such as the Intel X25-E have much higher IOPS than traditional hard disk drives. In a test done by Xssist, using IOmeter, 4 KB random transfers, 70/30 read/write ratio, queue depth 4, the IOPS delivered by the Intel X25-E 64 GB G1 started around 10000 IOPs, and dropped sharply after 8 minutes to 4000 IOPS, and continued to decrease gradually for the next 42 minutes. IOPS vary between 3000 to 4000 from around the 50th minutes onwards for the rest of the 8+ hours test run.[9] Even with the drop in random IOPS after the 50th minute, the X25-E still has much higher IOPS compared to traditional hard disk drives. Some SSDs, including the OCZ RevoDrive 3 x2 PCIe using the SandForce controller, have shown much higher sustained write performance that more closely matches the read speed.[10]

[edit] Examples

Some ballpark numbers:

Device Type IOPS Interface Notes
7,200 rpm SATA drives HDD ~75-100 IOPS[2] SATA 3 Gb/s
10,000 rpm SATA drives HDD ~125-150 IOPS[2] SATA 3 Gb/s
10,000 rpm SAS drives HDD ~140 IOPS [2] SAS
15,000 rpm SAS drives HDD ~175-210 IOPS [2] SAS

Solid State Devices

Device Type IOPS Interface Notes
Simple SLC SSD SSD ~400 IOPS[citation needed] SATA 3 Gb/s
Intel X25-M G2 (MLC) SSD ~8,600 IOPS[11] SATA 3 Gb/s Intel's data sheet[12] claims 6,600/8,600 IOPS (80 GB/160 GB version) and 35,000 IOPS for random 4 KB writes and reads, respectively.
Intel X25-E (SLC) SSD ~5,000 IOPS[13] SATA 3 Gb/s Intel's data sheet[14] claims 3,300 IOPS and 35,000 IOPS for writes and reads, respectively. 5,000 IOPS are measured for a mix. Intel X25-E G1 has around 3 times higher IOPS compared to the Intel X25-M G2.[15]
G.Skill Phoenix Pro SSD ~20,000 IOPS[citation needed] SATA 3 Gb/s SandForce-1200 based SSD drives with enhanced firmware, states up to 50,000 IOPS, but benchmarking shows for this particular drive ~25,000 IOPS for random read and ~15,000 IOPS for random write.[16]
OCZ Vertex 3 SSD Up to 60,000 IOPS [17] SATA 6 Gb/s Random Write 4 KB (Aligned)
Texas Memory Systems RamSan-20 SSD 120,000+ Random Read/Write IOPS[18] PCIe Includes RAM cache
Fusion-io ioDrive SSD 140,000 Read IOPS, 135,000 Write IOPS [19] PCIe
Virident Systems tachIOn SSD 320,000 sustained READ IOPS using 4KB blocks and 200,000 sustained WRITE IOPS using 4KB blocks [20] PCIe
OCZ RevoDrive 3 X2 SSD 200,000 Random Write 4K IOPS [21] PCIe
Fusion-io ioDrive Duo SSD 250,000+ IOPS [22] PCIe
Violin Memory Violin 3200 SSD 250,000+ Random Read/Write IOPS[23] PCIe /FC/Infiniband/iSCSI Flash Memory Array
WhipTail, XLR8r 6TB SSD 250,000+ Write/Read IOPS[24] FC, iscsi, Infiniband, NAS Flash Based Storage Array
DDRdrive X1, SSD 300,000+ (512B Random Read IOPS) and 200,000+ (512B Random Write IOPS)[25][26][27][28] PCIe
Texas Memory Systems RamSan-720 Appliance SSD 400,000 4KB Random Read/Write IOPS[29] FC / InfiniBand
OCZ Single SuperScale Z-Drive R4 PCI-Express SSD SSD Up to 500,000 IOPS [30] PCIe
Violin Memory Violin 6000 3RU Flash Memory Array 1,000,000+ Random Read/Write IOPS[31] /FC/Infiniband/10Gb(iSCSI)/ PCIe
Texas Memory Systems RamSan-630 Appliance SSD 1,000,000+ 4KB Random Read/Write IOPS[32] FC / InfiniBand
Fusion-io ioDrive Octal (single PCI Express card) SSD 1,180,000+ Random Read/Write IOPS[33] PCIe
OCZ 2x SuperScale Z-Drive R4 PCI-Express SSD SSD Up to 1,200,000 IOPS[30] PCIe
Texas Memory Systems RamSan-70 SSD 1,200,000 Random Read/Write IOPS[34] PCIe Includes RAM cache

[edit] See also

[edit] References

  1. ^ a b c Lowe, Scott (2010-02-12). "Calculate IOPS in a storage array". techrepublic.com. http://www.techrepublic.com/blog/datacenter/calculate-iops-in-a-storage-array/2182. Retrieved 2011-07-03. 
  2. ^ a b c d e "Getting the hang of IOPS". 2011-04-25. http://www.symantec.com/connect/articles/getting-hang-iops. Retrieved 2011-07-03. 
  3. ^ Axboe, Jens. "Flexible IO Tester". http://freshmeat.net/projects/fio/. Retrieved 2010-06-04. (source available at http://git.kernel.dk/)
  4. ^ Smith, Kent (2009-08-11). "Benchmarking SSDs: The Devil is in the Preconditioning Details". SandForce. http://www.flashmemorysummit.com/English/Collaterals/Proceedings/2009/20090811_F2A_Smith.pdf. Retrieved 2010-06-04. 
  5. ^ http://www.storagereview.com/articles/200607/500_6.html
  6. ^ Hu, X.-Y. and E. Eleftheriou, R. Haas, I. Iliadis, R. Pletka (2009). "Write Amplification Analysis in Flash-Based Solid State Drives". IBM. http://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=A6537303FCA21309F284E64DB9FCA392?doi=10.1.1.154.8668&rep=rep1&type=pdf. Retrieved 2010-06-02. 
  7. ^ "SSDs - Write Amplification, TRIM and GC". OCZ Technology. http://www.oczenterprise.com/whitepapers/ssds-write-amplification-trim-and-gc.pdf. Retrieved 2010-05-31. 
  8. ^ "Intel Solid State Drives". Intel. http://www.intel.com/cd/channel/reseller/asmo-na/eng/products/nand/feature/index.htm. Retrieved 2010-05-31. 
  9. ^ "Intel X25-E 64GB G1, 4KB Random IOPS, iometer benchmark". 2010-03-27. http://www.xssist.com/blog/Intel%20X25-E%2064GB%20G1,%204KB%2070%2030%20RW%20Random%20IOPS,%20iometer%20benchmark.htm. Retrieved 2010-04-01. 
  10. ^ "OCZ RevoDrive 3 x2 PCIe SSD Review – 1.5GB Read/1.25GB Write/200,000 IOPS As Little As $699". 2011-06-28. http://thessdreview.com/our-reviews/ocz-revodrive-3-x2-480-gb-pcie-ssd-review-1-5gb-read1-25gb-write200000-iops-for-699/. Retrieved 2011-06-30. 
  11. ^ Schmid, Patrick; Roos, Achim (2008-09-08). "Intel's X25-M Solid State Drive Reviewed". http://www.tomshardware.com/reviews/Intel-x25-m-SSD,2012.html. Retrieved 2011-08-02. 
  12. ^ http://download.intel.com/design/flash/nand/mainstream/322296.pdf
  13. ^ http://www.tomshardware.com/reviews/intel-x25-e-ssd,2158.html
  14. ^ http://download.intel.com/design/flash/nand/extreme/extreme-sata-ssd-datasheet.pdf
  15. ^ "Intel X25-E G1 vs Intel X25-M G2 Random 4 KB IOPS, iometer". May 2010. http://www.xssist.com/blog/%5BSSD%5D_Comparison_of_Intel_X25-E_G1_vs_Intel_X25-M_G2.htm. Retrieved 2010-05-19. 
  16. ^ http://www.tweakpc.de/hardware/tests/ssd/gskill_phoenix_pro/s05.php
  17. ^ http://www.ocztechnology.com/res/manuals/OCZ_Vertex3_Product_Sheet.pdf
  18. ^ http://www.ramsan.com/products/pcie-storage/ramsan-10-20
  19. ^ http://community.fusionio.com/media/p/459.aspx
  20. ^ http://www.theregister.co.uk/2010/06/16/virident_tachion/
  21. ^ http://www.storagereview.com/ocz_revodrive_3_x2_480gb_review
  22. ^ http://community.fusionio.com/media/p/461.aspx
  23. ^ http://www.violin-memory.com/products/3200-memory-array/
  24. ^ http://www.whiptailtech.com/products
  25. ^ http://www.ddrdrive.com/ddrdrive_press.pdf
  26. ^ http://www.ddrdrive.com/ddrdrive_brief.pdf
  27. ^ http://www.ddrdrive.com/ddrdrive_bench.pdf
  28. ^ http://www.pcper.com/article.php?aid=704
  29. ^ http://www.ramsan.com/products/rackmount-flash-storage/ramsan-720
  30. ^ a b "OCZ Technology Launches Next Generation Z-Drive R4 PCI Express Solid State Storage Systems". OCZ. 2011-08-02. http://www.ocztechnology.com/aboutocz/press/2011/445. Retrieved 2011-08-02. 
  31. ^ http://www.violin-memory.com/products/6000-flash-memory-array/
  32. ^ http://www.ramsan.com/products/rackmount-flash-storage/ramsan-630
  33. ^ http://www.fusionio.com/products/iodriveoctal/
  34. ^ http://www.ramsan.com/products/pcie-storage/ramsan-70


Personal tools
Namespaces
Variants
Actions
Navigation
Interaction
Toolbox
Print/export
Languages