The Parallel CGNS library, or PCGNS, is built on top of the collective I/O support in HDF5 using MPI-IO. PCGNS provides specialized routines to open and close a file for parallel I/O and read and write grid coordinates, element data, solution data, and general arrays in a collective fashion. The PCGNS functions are prefixed with cgp_, and documented in The PCGNS Software Library.
All additional accesses to the data use the standard Mid-Level Library (MLL) functions. A typical use of the PCGNS routines in a parallel I/O program would be:
cgp_open --- open file for parallel I/O cg_base_write --- create base and zone using MLL cg_zone_write cgp_coord_write --- create coordinate dataset for parallel I/O cgp_coord_write_data --- write the coordinates collectively cgp_close --- close the file
An example Fortran and C program are given in Example Programs.
A detailed discussion on the implementation may be found in the PDF paper "An Efficient and Flexible Parallel I/O implementation for the CFD General Notation System" by Horne, Bensen, and Hauser.