[petsc-users] output DMDA to hdf5 file?

Matthew Knepley knepley at gmail.com
Thu Jul 15 07:26:34 CDT 2021


On Thu, Jul 15, 2021 at 8:20 AM Matteo Semplice <
matteo.semplice at uninsubria.it> wrote:

>
> Il 15/07/21 14:15, Matthew Knepley ha scritto:
>
> On Thu, Jul 15, 2021 at 6:39 AM Matteo Semplice <
> matteo.semplice at uninsubria.it> wrote:
>
>>
>> Il 12/07/21 17:51, Matthew Knepley ha scritto:
>>
>> On Mon, Jul 12, 2021 at 11:40 AM Matteo Semplice <
>> matteo.semplice at uninsubria.it> wrote:
>>
>>> Dear all,
>>>
>>>     I am experimenting with hdf5+xdmf output. At
>>> https://www.xdmf.org/index.php/XDMF_Model_and_Format
>>> <https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.xdmf.org%2Findex.php%2FXDMF_Model_and_Format&data=04%7C01%7Cmatteo.semplice%40uninsubria.it%7Cfb0d540c87a64e4ea51d08d9478a4e9b%7C9252ed8bdffc401c86ca6237da9991fa%7C0%7C0%7C637619481622608977%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=sOQskFoMTHdOwjOec0d9npdw%2BiAVbar1SXBuU%2BH8xKc%3D&reserved=0>
>>> I read that "XDMF uses XML to store Light data and to describe the data
>>> Model. Either HDF5[3]
>>> <https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.hdfgroup.org%2FHDF5&data=04%7C01%7Cmatteo.semplice%40uninsubria.it%7Cfb0d540c87a64e4ea51d08d9478a4e9b%7C9252ed8bdffc401c86ca6237da9991fa%7C0%7C0%7C637619481622618934%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=akFyfHE4BULSscevnO0MxjMhEByT3USoJFQKsikJSzg%3D&reserved=0>
>>> or binary files can be used to store Heavy data. The data Format is stored
>>> redundantly in both XML and HDF5."
>>>
>>> However, if I call DMView(dmda,hdf5viewer) and then I run h5ls or h5stat
>>> on the resulting h5 file, I see no "geometry" section in the file. How
>>> should I write the geometry to the HDF5 file?
>>>
>>> Here below is what I have tried.
>>>
>> The HDF5 stuff is only implemented for DMPlex since unstructured grids
>> need to be explicitly stored. You can usually just define the structured
>> grid in the XML
>> without putting anything in the HDF5. We could write metadata so that the
>> XML could be autogenerated, but we have not done that.
>>
>> Thanks for the clarification. It shouldn't be hard to produce the XML
>> from my code.
>>
>> Just another related question: if I call VecView in parallel with the
>> HDF5 viewer, I get a single output file. Does this mean that data are
>> gathered by one process and written or it handles it smartly by
>> coordinating the output of all processes to a single file?
>>
> This is slightly more complicated than you would expect. We have two
> implementations, one which uses MPI-IO, and one which sends
> data from each process to 0, which writes it out. It turns out that MPI-IO
> is sometimes poorly supported or badly implemented, so you need
> the fallback.
>
> Thanks!
>
> On my machine I am compiling from the git repo with --download-hdf5, so I
> have some control, but on clusters I prefer to use the available petsc.
> Is there a simple way to check which implementation is begin used in a run?
>

You have to check the configure output. We never gather everything to one
process, so you should not have to worry about it.

   Thanks,

      Matt

Matteo
>
-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener

https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20210715/06702f6e/attachment-0001.html>


More information about the petsc-users mailing list