Effective I/O Bandwidth (beff_io) Benchmark


This page refers to the old release b_eff_io version 1.1


The effective I/O bandwidth benchmark (b_eff_io) covers two goals: (1) to achieve a characteristic average number for the I/O bandwidth achievable with parallel MPI-I/O applications, and (2) to get detailed information about several access patterns and buffer lengths. The benchmark examines "first write", "rewrite" and "read" access, strided (individual and shared pointers) and segmented collective patterns on one file per application and non-collective access to one file per process. The number of parallel accessing processes is also varied and wellformed I/O is compared with non-wellformed. On systems, meeting the rule that the total memory can be written to disk in 10 minutes, the benchmark should not need more than 15 minutes for a first pass of all patterns. The benchmark is designed analogously to the effective bandwidth benchmark for message passing (b_eff) that characterizes the message passing capabilities of a system in a few minutes.

Releases:

A detailed report with first results of b_eff_io release 0.5 can be obtained here. A summary of this report (.ps.gz) is contributed to the Euro-Par 2000.

Usage

Installation and the first test

CAUTION: Because this first test is scheduled with only 30 seconds, the results will never tell you anything about the I/O bandwidth of your system. The test only should tell you whether the benchmark is running on your system.

To get a first b_eff_io impression

Choosing optimal parameters

The definition of b_eff_io allows, that you choose an optimal test case, i.e. you are allowed to choose:

According to the rules defined above for the scheduled time, nomally you have to increase the value of the -T option, e.g., if your last test with -T 900 (seconds) tells you in my_system_08pe_0900sec.sum:

then you should increase your scheduled time at least to

Because normally caching behavior is reduced with larger scheduled time, you should expect worse I/O bandwidth and therefore, in this case, I would propose at least 3300 seconds, i.e.:

Publishing the results

If the content of my_system_08pe_3300sec.sum tells you, that this was a valid measurement, then you can publish this value together with all commands and parameters you have used to run this benchmark and together with the protocol file (my_system_08pe_3300sec.prot) and the summary file (my_system_08pe_3300sec.sum).

The Top Cluster initiative of the TFCC Open Forum has nominated this benchmark for evaluating the I/O performance of clusters (see discussion archive).

It is planned to include the b_eff_io results into the TOPClusters list.


References:

[1]
Karl Solchenbach: Benchmarking the Balance of Parallel Computers. SPEC Workshop on Benchmarking Parallel and High-Performance Computing Systems (copy of the slides), Wuppertal, Germany, Sept. 13, 1999.
[2]
Karl Solchenbach, Hans-Joachim Plum and Gero Ritzenhoefer: Pallas Effective Bandwidth Benchmark - source code and sample results ( EFF_BW.tar.gz, 43 KB)
[3]
Rolf Hempel: Basic message passing benchmarks, methodology and pitfalls. SPEC Workshop on Benchmarking Parallel and High-Performance Computing Systems (copy of the slides), Wuppertal, Germany, Sept. 13, 1999.
[4]
William Gropp and Ewing Lusk: Reproducible Measurement of MPI Performance Characteristics. In J. Dongarra et al. (eds.), Recent Advances in Parallel Virtual Machine and Message Passing Interface, proceedings of the 6th European PVM/MPI Users' Group Meeting, EuroPVM/MPI'99, Barcelona, Spain, Sept. 26-29, 1999, LNCS 1697, pp 11-18. (Summary on the web)

Links

Rolf Rabenseifner