[petsc-dev] MPI Vec and HDF5 output

Brad Aagaard baagaard at usgs.gov
Fri Jan 28 12:24:52 CST 2011


Barry-

I sent a message to the HDF5 mailing list. It looks to me like the 
H5Screate_simple() function rejects the zero size for a dimension on 
purpose. I am hoping someone has a workaround.

Thanks,
Brad


On 01/28/2011 10:00 AM, Barry Smith wrote:
>
>    Sounds like a bug report/inquiry to HDF5 folks.
>
>     Barry
>
>
> On Jan 28, 2011, at 10:23 AM, Brad Aagaard wrote:
>
>> We are trying to get HDF5 output working in PyLith using the PETSc HDF5 viewer. I get an HDF5 error
>>
>> H5Screate_simple(): zero sized dimension for non-unlimited dimension,
>> VecView_MPI_HDF5() line 771 in petsc-dev/src/vec/vec/impls/mpi/pdvec.c
>>
>> when I have a Vec that has a zero local size on a processor (the global size is nonzero). The Vec layout is correct in that we expect some processors to have a local size of zero (the field is over only a portion of the domain).
>>
>> The collective write of the Vec creates the filespace using the global size and the memspace using the local size. It is in trying to create the memspace that the error occurs. I tried adjusting pdvec.c so that it creates a null memspace when the local size is zero but then I get an error during the write about differences in dimensions (the number of dimensions in the filespace and memspace don't agree). I was unable to find any info on this type of use case in the HDF5 documentation.
>>
>> I have attached a toy example that illustrates the problem.
>> mpiexec -n 1 test_view [creates the expected test.h5 file]
>> mpiexec -n 2 test_view [generates the above error]
>>
>> Thanks,
>> Brad
>> <test_view.tgz>
>
>




More information about the petsc-dev mailing list