Defining measures

What is an IOPS Really?

Measuring IOPS

Several tools are commonly used for measuring read/write IOPS on systems. The first one I want to mention is Iometer [9], which you commonly see used on Windows systems. The one I most commonly use is Iozone [10], an open source, easy to build and use tool that has a number of test options and even allows you to vary the data "compressibility" for I/O function payloads.

Another common tool for testing read/write IOPS is fio [11], which lets you run a wide variety of tests, including mixing read and write IOPS.

The last tool I want mention is IOR [12], which is commonly used in testing parallel storage solutions often found in HPC. It is also used as part of the IO500 [13] list. You can use it to test really large amounts of I/O and vary the I/O function payload size, as well as either read or write operations.

Summary

IOPS is an important and often used I/O performance test. It can be very useful because many applications use very small I/O payloads and executing them quickly improves application performance. However, although the storage world has sort of created a definition that is vague and ripe for abuse, there is no standard definition of an IOPS.

In this article, I hope I have explained what an IOPS is and what goes into its definition. Parameters such as the type, function payload size, and pattern of I/O operations, as well as the operating system I/O scheduler and queue depth, are critical when reporting and understanding IOPS results.

The Author

Jeff Layton has been in the HPC business for almost 25 years (starting when he was 4 years old). He can be found lounging around at a nearby Frys enjoying the coffee and waiting for sales.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy ADMIN Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • What is an IOPS Really?

    IOPS is mentioned quite often when benchmarking and testing storage systems, but what does it really mean? We discuss and explain what an IOPS is, and how to measure it.

  • Tuning SSD RAID for optimal performance
    Hardware RAID controllers are optimized for the I/O characteristics of hard disks; however, the different characteristics of SSDs require optimized RAID controllers and RAID settings.
  • Monitor and optimize Fibre Channel SAN performance
    We discuss the possible bottlenecks in Fibre Channel storage area networks and how to resolve them.
  • Fundamentals of I/O benchmarking
    Admins often want to know how to measure the performance of a specific solution. Care is needed, however: Where there are benchmarks, there are pitfalls.
  • Monitoring Storage with iostat

    One tool you can use to monitor the performance of storage devices is iostat . In this article, we talk a bit about iostat, introduce a Python script that takes iostat data and creates an HTML report with charts, and look at a simple example of using iostat to examine storage device behavior while running IOzone.

comments powered by Disqus