summaryrefslogtreecommitdiffstats
path: root/release_docs
diff options
context:
space:
mode:
authorMuQun Yang <ymuqun@hdfgroup.org>2006-02-16 17:08:34 (GMT)
committerMuQun Yang <ymuqun@hdfgroup.org>2006-02-16 17:08:34 (GMT)
commit0fe91bb1a28ccfea8e67e3834155811d27446391 (patch)
tree766c1ccc8152f06eada9bd6fd875b697db40c38a /release_docs
parent2a4cd8949e9d7a3a12bacf2bed1e5143a7d03791 (diff)
downloadhdf5-0fe91bb1a28ccfea8e67e3834155811d27446391.zip
hdf5-0fe91bb1a28ccfea8e67e3834155811d27446391.tar.gz
hdf5-0fe91bb1a28ccfea8e67e3834155811d27446391.tar.bz2
[svn-r11950] Purpose:
Enhanced collective chunk IO supports Description: 1. When using collective IO with chunking storage without any tuning, performance may become worse under some circumstances. 2. Current HDF5 handles raw-data IO per chunk. So for many small chunks, many small IOs will be passed into MPI-IO. That may cause bad performance. 3. For one IO per chunk case, sometimes performance with collective is worse than performance with independent. An obvious case is when only one process is doing IO and all other process are not doing IO, the collective IO will only add overheads for communication. We want to avoid this case. Some management inside our library needs to be done. Solution: - Added managements of collective IO supports for chunking storage inside parallel HDF5 1) Implemented One IO with collective mode for all chunks in the application by building one MPI derived datatype accross all chunks. 2) Implemented the decision-making support to do collective IO inside MPI-IO per chunk. 3) Added the decision-making support to do one IO accross all chunks or to do multiple IOs with each IO per chunk. 4) Added the support to handle the case some processes won't do any IOs in collectively. 5) Some MPI-IO package(mpich 1.2.6 or lower, e.g.) cannot handle collective IO correctly for the case when some processes have no contributions to IOs, a special macro is added to change collective IO mode to independent IO mode inside HDF5 library. Platforms tested: Parallel: IBM AIX 5.2(copper) Linux (heping) mpich-1.2.6 SDSC Teragrid mpich-1.2.5 Linux(Tungsten) mpich-1.2.6 Altix(NCSA cobalt) Seq: Linux(heping) Misc. update:
Diffstat (limited to 'release_docs')
0 files changed, 0 insertions, 0 deletions