Releases: NCAR/ParallelIO
Version 2.3.0
The PIO team is pleased to release version 2.3.0 of the PIO library. This release includes a autotools-based build system (C library only), full support for multiple computation components with async, bug fixes, and more tests.
What is PIO?
The Parallel IO library (PIO) is a high-level parallel I/O C/Fortran library for structured grid applications. PIO provides a netCDF-like API, and allows users to designate some subset of processors to perform IO. Computational code calls netCDF-like functions to read and write data, and PIO uses the IO processors to perform all necessary IO.
PIO also supports the creation of multiple computation components, each containing many processors, and one shared set of IO processors. The computational components can perform write operation asynchronously, and the IO processors will take care of all storage interaction.
See the PIO web site for more information: http://ncar.github.io/ParallelIO/
New This Release
Autotools Build System
In addition to the existing CMake build system, we now have an autocont/automake/libtool based build system, for the C library only.
Fortran users must continue to use the CMake build system to build PIO.
The autotools build system will be maintained in parallel with the CMake build system.
Multiple Computation Components with Async
Async mode now supports more than one computational component.
Bug fixes
Fixes to fill value bugs with write_darray()/write_darray_multi().
Required Libraries
This release requires:
- netcdf-4.4.1 or newer.
- pnetcdf-1.8.1 or newer (unless PIO is built without pnetcdf support).
Version 2.2.2
Introduction
The PIO team is pleased to release version 2.2.2 of the PIO library. This release includes additional support for the async writes of distributed arrays.
This release requires:
- netcdf-4.4.1 or newer.
- pnetcdf-1.8.1 or newer (unless PIO is built without pnetcdf support).
Asynchronous Writes of Distributed Arrays
With this release we have support for asynchronous writes of distributed arrays.
To use this feature, call PIOc_init_async() instead of PIOc_InitIntracomm(). This allows you to designate a subset of nodes as dedicated IO nodes. All other PIO API calls can remain unchanged.
Bug Fixes
A bug has been fixed with respect to the calculation of the number of pnetcdf requests. (See issue #1045).
More Tests
Test for darray writes with async with/without record vars.
Version 2.2.1
This release contains some important bug fixes, more tests, and improved documentation.
Async capability is not fully supported in this release.
Version 2.2.0
This release contains many improvements and changes.
Async capability is not yet fully supported in this release.