Hello All, I have a generic question regarding the comparison of seq. binary and parallel HDF5 for I/O of large files.
I am using the franklin supercomputer at NERSC for my experiments. The datasets/file size are between 55GB and 111GB which are being written by a single processor in case of seq. binary. In this case, several(~200) processors send the data to a single root processor, which does the I/O disk. So, basically only 1 processor is doing the I/O to disk. In case of parallel HDF5, all the ~200 processors do the I/O to disk independently without communication to the root processor. However, on the LUSTRE file system, there are file locks leading to all the ~200 write operations to be serialized in actuality. Now when I compare the performance of seq. binary vs parallel HDF5, the only difference is that in case of seq. binary, there is communication overhead which according to my measurements are not a big overhead. In that case since both the writes(seq. binary & parallel HDF5) are sequential/serialized, I expected the performance to be similar. However, in my experiments, parallel HDF5 outperforms seq. binary significantly. I do not understand why this so since even parallel HDF5 write operations are serialized. The plot attached explains my doubt. Please can someone explain to me why parallel HDF5 outperforms seq. binary writes even though parallel HDF5 writes are also serialized. Your inputs are greatly appreciated. Thank You. Nikhil
writeanalysis1.pdf
Description: Adobe PDF document
_______________________________________________ Hdf-forum is for HDF software users discussion. [email protected] http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org
