Hardware Reference
In-Depth Information
19.6 Performance
19.6.1 Tuning Write Performance
Performance of parallel I/O depends on multiple software layers of the
parallel I/O stack. A contemporary parallel I/O software stack with HDF5 as
the high-level I/O library, MPI-I/O as the middleware layer, and Lustre as
the parallel file system is shown in Figure 19.2. Each layer offers tunable pa-
rameters for improving performance, and hopes to provide reasonable default
settings for the parameters.
Tuning HDF5, MPI-I/O, and Lustre parameters was an important part of
achieving the I/O performance goals. This study modified the implementation
of HDF5 version 1.8.8 to disable the file size verification process. For Lustre,
this study varied the stripe count and the stripe size. The stripe count is the
number of OSTs used in writing contiguous chunks of data and the stripe
size is the size of the contiguous chunk. As mentioned earlier, the Lustre-
aware implementation of Cray MPI-I/O sets the MPI-I/O collective buffering
parameters. In this implementation, the number of MPI-I/O aggregators is
equal to the stripe count, and the size of the collective buffer is equal to the
stripe size.
Tuning I/O for the VPIC simulation typically requires running the simula-
tion multiple times while varying the values of tunable parameters. However,
FIGURE 19.2: Parallel I/O stack and the parameters tuned and modifications
made in the study's eort.
 
Search WWH ::




Custom Search