[petsc-users] output DMDA to hdf5 file?

Matteo Semplice matteo.semplice at uninsubria.it
Thu Jul 15 07:20:18 CDT 2021


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 <mailto: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
>>     <mailto: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?

Matteo


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20210715/1eac47c6/attachment.html>


More information about the petsc-users mailing list