I finally found a discussion of this issue in the HDF5 documentation in
the Questions section under "How do you write data when one process
doesn't have or need to write data ?". The example shows how to use
H5Sselect_none() with a memspace and filespace for the case when
processors do not write data.
It would be helpful if the documentation for H5Screate_simple() had a
note on this usage and its relationship with H5Sselect_none() along with
a link or reference to the coll_test.c example.
Thanks,
Brad Aagaard
On 01/28/2011 10:21 AM, Brad Aagaard wrote:
I am trying to write data in parallel to an HDF5 file using collective
I/O. The data is a contiguous chunk and each processor has its own local
memspace, but the field does not span the entire domain so some
processors contribute 0 bytes of information. It is straightforward to
create the filespace and select the hyperslab, but when I try to create
the memspace on processors that have a size of zero I get the error:
H5Screate_simple(): zero sized dimension for non-unlimited dimension
The implementation works fine when all processors contribute more than 0
bytes.
I assume it is possible to do a collective write on a chunk of data in
which some processors contribute 0 bytes of information. How do I create
the filespace and memspace to do this?
Thanks,
Brad Aagaard
_______________________________________________
Hdf-forum is for HDF software users discussion.
[email protected]
http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org
_______________________________________________
Hdf-forum is for HDF software users discussion.
[email protected]
http://mail.hdfgroup.org/mailman/listinfo/hdf-forum_hdfgroup.org