IO500 — Parallel Filesystem Performance
IO500 provides a comprehensive ranking of HPC storage systems using a composite score combining bandwidth and metadata performance. As data volumes in HPC grow to petabytes, storage performance is increasingly the bottleneck — IO500 provides the objective comparison metric needed for storage procurement and acceptance testing.
IOR Bandwidth
IOR (Interleaved Or Random) measures sequential read/write throughput for large files using MPI-IO, HDF5, or POSIX interfaces. Run from all compute nodes simultaneously to stress the full storage fabric. Measures aggregate bandwidth in GB/s — the primary metric for large-file scientific workloads.
mdtest Metadata
mdtest measures filesystem metadata operations per second: file creation, stat (lookup), and deletion. Critical for workloads creating millions of small files — ML training datasets, checkpoint files, or genome sequencing outputs. Metadata performance is often the overlooked bottleneck.
Composite Scoring
The IO500 score is the geometric mean of IOR bandwidth and mdtest metadata rate. This penalizes systems that excel at one but fail the other — a system with 10 TB/s bandwidth but poor metadata performance scores badly, reflecting real-world usability.
Find Operation
IO500 also includes a parallel directory traversal (find) test measuring how quickly the filesystem can list all files across the namespace. Important for backup systems, data management tools, and HSM policies that must scan the entire filesystem regularly.
The IO500 List
Published biannually alongside TOP500 and Green500. Systems are ranked by composite IO500 score. Unlike TOP500, the IO500 list includes both full-system submissions and 10-node challenge submissions — making it accessible for smaller HPC centers to participate and compare.
Lustre Tuning for IO500
To maximize IO500 scores: set stripe count to span all OSTs for IOR tests, use DNE (Distributed Namespace Extension) for mdtest to spread directories across multiple MDTs, and enable client-side caching where appropriate. These tunings also improve real-world workload performance.
Acceptance Testing
IO500 provides a standardized acceptance test for new storage systems. Specify minimum IO500 scores in procurement contracts: IOR bandwidth (e.g. ≥500 GB/s), mdtest rate (e.g. ≥500k ops/s). Verify at full node count — storage performance often degrades significantly under concurrent access from all compute nodes.
Running IO500
IO500 is freely available at io500.org. The benchmark includes all required tools (IOR, mdtest, find) and a standardized configuration generator. A valid IO500 run requires a minimum of 10 client nodes and takes approximately 30 minutes — fast enough for regular regression testing.