7. IOR
7.1. Purpose
IOR is used for testing performance of parallel file systems using various interfaces and access patterns at the POSIX and MPI-IO level.
7.2. Characteristics
IOR is available:
Github: IOR Public
LANL Crossroads Site: IOR
The github repo also contains mdtest.
7.2.1. Problem
IOR measures parallel I/O performance at the POSIX and MPI-IO levels. It writes and reads files, one per rank or shared between all ranks, on a parallel file system. It should be run in lustre space.
7.2.2. Run Rules
Modifications to the benchmark application code are only permissible to enable correct compilation and execution on the target platform. Any modifications must be fully documented (e.g., as a diff or patch file) and reported with the benchmark results.
7.3. Building
MPI, MPI-IO, and OpenMP are required in order to build and run the code. The source code used for this benchmark is derived from IOR 3.0.1 and it is included here.
Ensure that the MPI compiler wrappers (e.g., mpicc) are in $PATH. Then create a build directory and an (optional) install directory.
${BENCHMARK_PATH}/microbenchmarks/ior/configure --prefix=<INSTALL_DIR>
make
#make install
This will build both IOR with the POSIX and MPI-IO interfaces and create the IOR executable at src/ior.
7.4. Running
The file Xrds_acceptance_script.sh
in the IOR source directory, microbenchmarks/ior
, will run the read and write IOR benchmarks for a particular compiler, mpi, and number of nodes set beforehand.
7.4.1. Input
Sample production input files in microbenchmarks/ior/inputs.xroads
Running IOR does not require using the input files. All arguments can be given on the command line.
7.5. Example Results
Results for IOR are provided on the following systems:
Crossroads (see ATS-3/Crossroads)
7.5.1. Crossroads
Full system tests were run with 5000 nodes and 10 tasks per node. Single node tests were run with 112 tasks per node. This test was compiled with cce/16.0.0 and cray-mpich/8.1.26.
Node_Config |
MPIIO_task |
POSIX_task |
MPIIO_shared |
POSIX_shared |
---|---|---|---|---|
Single Write |
38615.88 |
38508.96 |
35964.32 |
37724.38 |
Single Read |
41830.12 |
42963.57 |
41933.79 |
42000.99 |
Full System Write |
1.66e6 |
1.698e6 |
7.21e5 |
6.95e5 |
Full System Read |
2.133e6 |
2.62e6 |
1.142e6 |
9.95e5 |