CGNS logo

CFD General Notation System


CGNS site pages
What is CGNS?
Getting Started
Latest News
Switch to HDF5
Steering Committee
Discussion Group
Contributed Utilities
Example CGNS Files
Proposed Extensions

Documentation pages
Documentation Home
Papers and Slides
Meeting Minutes
User's Guide
SIDS File Mapping
Mid-Level Library
CGIO User's Guide

If you have not done so already, please REGISTER by e-mailing to the CGNS REGISTRAR the following information:
  • Your name
  • Company, university, lab, or facility name (if applicable)
  • Email, if different from your current sending address
  • Intended use for CGNS
Although there is no registration requirement in order to obtain CGNS, by registering you will help the CGNS team to serve its users better.

We also strongly recommend that you join the Discussion Group. This forum is the primary method used to keep CGNS users current with release and other important information updates. It is also used for discussing important problems/issues and for obtaining help from other CGNS users.

What to Download

Note: CGNS has switched from SourceForge ( to GitHub ( Issue tracking is located at:

For the up-to-date development source, visit GitHub Development.

git clone

For the stable source, visit GitHub Stable.

git clone -b master

As a minimum, you will need to download and compile the CGNS library code. Compilation requires an ANSI compliant C compiler. The source code may downloaded as a gzipped, tar file:

  • Current Stable Release: CGNS Version 3.3.0
    This Version implements CPEX 0038 and 0039, adds new functionality to the parallel capability, and makes extensive changes related to the Fortran library.

    Important note for Fortran users: V3.3 removes the usage of "include cgnslib_f.h". Instead, from this release forward, one must now employ the module "use CGNS". Also, if making use of 64-bit integers, Fortran programs must declare the relevant 64-bit integers via, e.g.: integer(cgsize_t) integername.

  • Previous Stable Release: CGNS Version 3.2.1
    This Version 3.2 release provides partial integration of parallel I/O using HDF5 with MPI. It also implements the Hierarchy of families (CPEX 0033), Multiple families (CPEX 0034), and Cubic elements (CPEX 0036). Compression (rewriting) of modified CGNS files is no longer automatically done, since this may interfere with parallel I/O. This may be reenabled within an application with the cg_set_compress function, or done later through the CGNSview GUI or with the cgnscompress program in the tools subdirectory. Conversion programs to and from AFLR3, FAST, and TetGen have also been added to CGNStools.

    Release 3.2.1 implements the suggestions by Cambridge Flow Solutions to the CMake scripts and adds routines to set the MPI communicator for parallel I/O. There are also numerous updates and fixes to the test cases, tools and CGNStools utilities.

    Note: CGNStools is no longer built automatically, you need to set the configure flag, --enable-cgnstools if using configure.

  • Previous Stable Releases:
  • CGNS Version 3.1.4
    Includes 64-bit integer capability and updated Tools for viewing and editing CGNS files. HDF5 is now the default file type, when CGNS is built with HDF5 version 1.8 or later. (CGNS can always read or write both HDF5 and ADF file types.)

  • Older recent release versions are also available from

  • Even earlier releases can be found in the archives:

Also available:

(NOTE: if building CGNS with an HDF5 version earlier than 1.8, then links will not work when using HDF5 file type.)

Note about Compilers

Users should be aware that many new features in CGNS require the use of up-to-date compilers. For example, older FORTRAN compilers that are not FORTRAN 2003 compliant (such as g77) will not work for many CGNS features, and are not recommended or supported.

Note about Linking CGNS with HDF5

When using HDF5, It is currently recommended that CGNS be compiled against the HDF5 1.8.x library. The following figure shows the typical performance of CGNS "make check" for various versions of HDF5 for serial I/O.

timings when using HDF5, updated 9/9/2016

Note to Users of Version 2.5 CGNS

Current users of Version 2.5 should read the following short guide:

which describes some of the reasons for upgrading to the latest version 3 software as well as how to handle portability issues between versions.

Known Bugs/Issues in Latest Official (Stable) Release

  • Building CGNS with Fortran enabled is not working on Windows.
  • When building with PGI and gcc compilers it might be necessary to set the environment variables:
    • FLIBS="-Wl,--no-as-needed -ldl"
    • LIBS="-Wl,--no-as-needed -ldl"