Skip to content

Releases: GEOS-ESM/MAPL

MAPL 2.49.0

04 Oct 15:10
230d319
Compare
Choose a tag to compare

DOI

This is a minor release of MAPL 2.

The main new functionality is support for zstandard compression in MAPL History. Note that this requires zstandard support built into netCDF (and HDF5). At the moment ESMA-Baselibs cannot exercise this as ESMA-Baselibs builds HDF5 and netCDF as static libraries so the zstandard plugin is not available. But spack builds of MAPL can use the new functionality. MAPL does have a test to make sure zstandard support is available and if not, if someone tries to use it, the system will fail out.

We also have bug fixes for macOS and NVHPC in this release.


This version of MAPL was tested with:

  • Intel Fortran Classic 2021.6.0 and 2021.13 (Note: ifx does not yet work)
  • GCC 13.2.0 and 14.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below.

  • Baselibs 7.25.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 8.6.1
    • GFE 1.16.0
      • gFTL 1.14.0
      • gFTL-shared 1.9.0
      • pFUnit 4.10.0 (optional)
      • fArgParse 1.8.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.14.0 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)
    • UDUNITS2 2.28.8 -- NEW DEPENDENCY FOR MAPL 2.48

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use (at least):

  • ESMA_cmake v3.51.0

We recommend most external users set -DUSE_F2PY=OFF


From CHANGELOG.md

Added

  • Added zstandard compression support
    • Note this requires netCDF-C to have been compiled with zstandard support. We have a CMake test to check for this
      and enabling zstandard output in History will fail if the library does not support it

Changed

  • ExtDataDriver.x now uses ExtData2G by default
  • Update components.yaml
    • ecbuild geos/v1.4.0
      • Fixes bug between GCC, macOS, and the -pipe flag

Fixed

  • Workaround for NVHPC 24.9 involving use statement in block construct

What's Changed

Full Changelog: v2.48.0...v2.49.0

MAPL 2.48.0

24 Sep 15:07
38af635
Compare
Choose a tag to compare

DOI

This is a minor release of MAPL. It has various updates and fixes compared to MAPL 2.47. All testing shows it to be zero-diff to MAPL 2.47.

The complete list of changes is delineated below but some highlights are:

  • Support for GCC 14 and Intel 2021.13
  • Added Fortran interface to UDUNITS2
    • NOTE: This now means MAPL depends on UDUNITS2 (and transitively, expat)
  • Added 5 new ExtData tests to test compression, bit-shaving, and quantization
  • Add restart benchmark code restart_simulator.x in benchmark directory
  • Start implementing changes for vertical regridding in ExtData
  • Made the POSITIVE field attribute defaults to "down" in case it is not found
  • Added ability to read the attribute with explicit type "string" of a netcdf variable.
  • Add support for preliminary CF Conventions quantization properties

Note the with the last point, we added a new quantization keyword granular_bitround to History. This will be the preferred keyword for quantization in the future replacing GranularBR (which we formally deprecated and will remove in MAPL3).


This version of MAPL was tested with:

  • Intel Fortran Classic 2021.6.0 and 2021.13 (Note: ifx does not yet work)
  • GCC 13.2.0 and 14.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below.

  • Baselibs 7.25.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 8.6.1
    • GFE 1.16.0
      • gFTL 1.14.0
      • gFTL-shared 1.9.0
      • pFUnit 4.10.0 (optional)
      • fArgParse 1.8.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.14.0 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)
    • UDUNITS2 2.28.8 -- NEW DEPENDENCY FOR MAPL 2.48

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use (at least):

  • ESMA_cmake v3.51.0

We recommend most external users set -DUSE_F2PY=OFF


From CHANGELOG.md

Added

  • Added 5 new ExtData tests to test compression, bit-shaving, and quantization

Changed

  • Rename all single-digit ExtData tests to have a leading zero (i.e., case1 -> case01)
  • Add restart benchmark code restart_simulator.x in benchmark directory
  • Start implementing changes for vertical regridding in ExtData
  • Made the POSITIVE field attribute defaults to "down" in case it is not found
  • VLOCATION is not querried in MAPL_VerticalMethods.F90 for rank 2 fields
  • Fixed time print in Cap GC (from slashes to colons)
  • Added ability to read the attribute with explicit type "string" of a netcdf variable.
  • Add ability to connect export of the MAPL hierachy to ExtData via CAP.rc file
  • Added new driver, CapDriver.x, to excerise the MAPL_Cap with the configuratable component also used by ExtDataDriver.x
  • Added Fortran interface to UDUNITS2
    • NOTE: This now means MAPL depends on UDUNITS2 (and transitively, expat)
  • Improve mask sampler by adding an MPI step and a LS_chunk (intermediate step)
  • CI Updates
    • Update Baselibs in CI to 7.25.0
    • Update to circleci-tools orb v4
      • This adds the ability to do an ifx test along with the ifort test (though ifx is not yet enabled)
  • Update components.yaml
    • ESMA_env v4.30.1
      • Update to Baselibs 7.25.0
        • ESMF 8.6.1
        • GFE v1.16.0
          • gFTL v1.14.0
          • gFTL-shared v1.9.0
          • fArgParse v1.8.0
          • pFUnit v4.10.0
          • yaFyaml v1.4.0
        • curl 8.8.0
        • NCO 5.2.6
        • Other various fixes from the v8 branch
      • Move to use Intel ifort 2021.13 at NCCS SLES15, NAS, and GMAO Desktops
      • Move to use Intel MPI at NCCS SLES15 and GMAO Desktops
      • Move to GEOSpyD Min24.4.4 Python 3.11
      • Fix for csh at NAS
    • ESMA_cmake v3.51.0
      • Update esma_add_fortran_submodules function
      • Move MPI detection out of FindBaselibs
      • Add SMOD to submodule generator
      • NAG OpenMP Workaround
      • Support for Jemalloc and LLVM Flang
  • Add support for preliminary CF Conventions quantization properties
    • Add new quantization keyword granular_bitround to History. This will be the preferred keyword for quantization in the future
      replacing GranularBR

Fixed

  • Fix profiler PercentageColumn test for GCC 14
  • Fix bug in ExtData Tests. CMake was overwriting the EXTDATA2G_SMALL_TESTS LABEL with ESSENTIAL

Deprecated

  • Deprecate GranularBR as a quantization method keyword in History. We will prefer granular_bitround in the future to match
    draft CF conventions. This will be removed in MAPL 3.

What's Changed

Full Changelog: v2.47.2...v2.48.0

MAPL 2.47.2

16 Aug 15:31
d4b541e
Compare
Choose a tag to compare

DOI

This is a patch release of MAPL 2.47. It fixes a bug when using externally initialized MPI.

Notice to users: External code should initialize MPI with MPI_THREAD_MULTIPLE as that is what MAPL expects. Also, code might need to call:

call ESMF_InitializePreMPI()

for all features of MAPL to be supported, namely if ESMF Single System Image (SSI) code is enabled. If users do not use this (or know what it is), it most likely is not needed.


This version of MAPL was tested with:

  • Intel Fortran Classic 2021.6.0 (Classic 2021.13 seems to work, ifx does not yet work)
  • GCC 13.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below. NOTE: Changes here from MAPL 2.44 and earlier, namely GFE

  • Baselibs 7.24.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 8.6.1b04 (8.6.0 is enough for Baselibs builds, but 8.6.1 is required for Spack)
    • GFE 1.15.0
      • gFTL 1.13.0
      • gFTL-shared 1.8.0
      • pFUnit 4.9.0 (optional)
      • fArgParse 1.7.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.14.0 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use (at least):

  • ESMA_cmake v3.46.0

We recommend most external users set -DUSE_F2PY=OFF


From CHANGELOG.md

Fixed

  • Fix bug in supporting externally initialized MPI

What's Changed

Full Changelog: v2.47.1...v2.47.2

MAPL 2.46.3

16 Aug 15:03
e8b8e5e
Compare
Choose a tag to compare

DOI

This is a patch release of MAPL 2.46. It fixes a bug when using externally initialized MPI.

Notice to users: External code should initialize MPI with MPI_THREAD_MULTIPLE as that is what MAPL expects. Also, code might need to call:

call ESMF_InitializePreMPI()

for all features of MAPL to be supported, namely if ESMF Single System Image (SSI) code is enabled. If users do not use this (or know what it is), it most likely is not needed.


This version of MAPL was tested with:

  • Intel Fortran Classic 2021.6.0 (Classic 2021.12 seems to work, ifx does not yet work)
  • GCC 13.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below. NOTE: Changes here from MAPL 2.44 and earlier, namely GFE

  • Baselibs 7.24.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 8.6.1b04 (8.6.0 is enough for Baselibs builds, but 8.6.1 is required for Spack)
    • GFE 1.15.0
      • gFTL 1.13.0
      • gFTL-shared 1.8.0
      • pFUnit 4.9.0 (optional)
      • fArgParse 1.7.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.14.0 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use:

  • ESMA_cmake v3.45.1

We recommend most external users set -DUSE_F2PY=OFF


From CHANGELOG.md

Fixed

  • Fix bug in supporting externally initialized MPI

What's Changed

Full Changelog: v2.46.2...v2.46.3

MAPL 2.47.1

17 Jul 18:51
98273b3
Compare
Choose a tag to compare

DOI

This is a patch release of MAPL 2.47. It fixes a bug in FieldSet routines when passing R8 ESMF fields

This is zero-diff to MAPL 2.47.0


This version of MAPL was tested with:

  • Intel Fortran Classic 2021.6.0 (Classic 2021.13 seems to work, ifx does not yet work)
  • GCC 13.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below. NOTE: Changes here from MAPL 2.44 and earlier, namely GFE

  • Baselibs 7.24.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 8.6.1b04 (8.6.0 is enough for Baselibs builds, but 8.6.1 is required for Spack)
    • GFE 1.15.0
      • gFTL 1.13.0
      • gFTL-shared 1.8.0
      • pFUnit 4.9.0 (optional)
      • fArgParse 1.7.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.14.0 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use (at least):

  • ESMA_cmake v3.46.0

We recommend most external users set -DUSE_F2PY=OFF


From CHANGELOG.md

Fixed

  • Fixed bug in FieldSet routines when passing R8 ESMF fields

What's Changed

Full Changelog: v2.47.0...v2.47.1

MAPL 2.47.0

24 Jun 17:55
2b97398
Compare
Choose a tag to compare

DOI

This is a minor release of MAPL. It has various fixes and updates compared to MAPL 2.46 including:

  • Add new option to Regrid_Util.x to write and re-use ESMF pregenerated weights
  • Add capability to mangle LONG_NAME in ACG with a different prefix
  • Updated checkpoint_simulator to not create and close file if not writing
  • Improved timing for station sampler with GHCNd input: used LocStream with CS background, LS with uniform distributed points, and MPI_GatherV
  • Update ExtData tests to add new category of SLOW tests that take 10-30 seconds and remove them from the ESSENTIAL label
  • Bug fixes for NVHPC

All testing shows this is zero-diff to MAPL 2.46


This version of MAPL was tested with:

  • Intel Fortran Classic 2021.6.0 (Classic 2021.12 seems to work, ifx does not yet work)
  • GCC 13.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below. NOTE: Changes here from MAPL 2.44 and earlier, namely GFE

  • Baselibs 7.24.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 8.6.1b04 (8.6.0 is enough for Baselibs builds, but 8.6.1 is required for Spack)
    • GFE 1.15.0
      • gFTL 1.13.0
      • gFTL-shared 1.8.0
      • pFUnit 4.9.0 (optional)
      • fArgParse 1.7.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.14.0 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use (at least):

  • ESMA_cmake v3.46.0

We recommend most external users set -DUSE_F2PY=OFF


From CHANGELOG.md

Added

  • Add new option to Regrid_Util.x to write and re-use ESMF pregenerated weights
  • If file path length exceeds ESMF_MAXSTR, add _FAIL in subroutine fglob
  • Add GNU UFS-like CI test
  • Add capability to mangle LONG_NAME in ACG with a different prefix

Changed

  • pFIO Clients don't send "Done" message when there is no request
  • Update components.yaml
    • ESMA_cmake v3.46.0
      • Fix bugs in meson detection
      • Fix for building on older macOS
      • Add esma_add_fortran_submodules function
  • Updated checkpoint_simulator to not create and close file if not writing
  • Update ExtData tests
    • Add new category of SLOW tests that take 10-30 seconds and remove them from the ESSENTIAL
      label run in CI
    • Remove ExtData1G tests from ESSENTIAL label, but run them in the UFS-like CI test
  • Improved timing for station sampler with GHCNd input: used LocStream with CS background, LS with uniform distributed points, and MPI_GatherV

Fixed

  • Fixed a bug in generate_newnxy in MAPL_SwathGridFactory.F90 (NX*NY=Ncore)
  • Fixes for NVHPC 24.5
    • Convert MAPL_GeosatMaskMod to "interface-in-both-files" submodule style

What's Changed

Full Changelog: v2.46.2...v2.47.0

MAPL 2.46.2

31 May 14:56
b76ba1a
Compare
Choose a tag to compare

DOI

This is a patch release of MAPL 2.46. This release removes excessive print statements in generic/OpenMP_Support.F90 (see #2853).

As all that is different is removal of print statements, this is trivially zero-diff to MAPL 2.46.1


This version of MAPL was tested with:

  • Intel Fortran Classic 2021.6.0 (Classic 2021.12 seems to work, ifx does not yet work)
  • GCC 13.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below. NOTE: Changes here from MAPL 2.44 and earlier, namely GFE

  • Baselibs 7.24.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 8.6.1b04 (8.6.0 is enough for Baselibs builds, but 8.6.1 is required for Spack)
    • GFE 1.15.0
      • gFTL 1.13.0
      • gFTL-shared 1.8.0
      • pFUnit 4.9.0 (optional)
      • fArgParse 1.7.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.14.0 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use:

  • ESMA_cmake v3.45.1

We recommend most external users set -DUSE_F2PY=OFF


From CHANGELOG.md

Removed

  • Remove excessive print statements in generic/OpenMP_Support.F90

What's Changed

Full Changelog: v2.46.1...v2.46.2

MAPL 2.40.5

31 May 13:40
b005366
Compare
Choose a tag to compare

DOI

This is a patch release on MAPL 2.40 which removes some print statements when using the MAPL OpenMP support (see #2853).

As all this does is remove prints, this is trivially zero-diff to MAPL v2.40.4


The libraries this version of MAPL is currently tested with are below. (This is a change since MAPL 2.39)

  • Baselibs 7.14.0
    • netcdf-c 4.9.2 (Needed for quantize support, but not required for all of MAPL)
    • netcdf-fortran 4.6.1 (Needed for quantize support, but not required for all of MAPL)
    • ESMF 8.5.0 (required)
    • GFE 1.11.0
      • gFTL 1.10.0
      • gFTL-shared 1.6.1
      • pFUnit 4.7.3 (optional)
      • fArgParse 1.5.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.9.5 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)
      • FLAP geos/v1.10.0 (if -DBUILD_WITH_FLAP=YES, default=NO)

Also, if you build with -DUSE_F2PY=ON, you will need:

  • ESMA_cmake v3.31.1

We recommend most external users set -DUSE_F2PY=OFF


From CHANGELOG.md

Removed

  • Remove extra print statement in generic/OpenMP_Support.F90

Full Changelog: v2.40.4...v2.40.5

MAPL 2.8.0.10

14 May 17:43
2c0401c
Compare
Choose a tag to compare

DOI

This is a tweak release on MAPL 2.8.0.9 which adds support for Python3 for use in older tags.


From CHANGELOG.md

Changed

  • Backport Python3 changes for Python/ code to 2.8
  • Change shebang in Apps/MAPL_GridCompSpecs_ACG.py to use python3

What's Changed

Full Changelog: v2.8.0.9...v2.8.0.10

MAPL 2.46.1

10 May 13:40
df6786c
Compare
Choose a tag to compare

DOI

This patch release of MAPL 2.46 updates the ESMA_cmake version in components.yaml to v3.45.1. This release fixes a bug in f2py3 handling for detecting when to use meson vs distutils for f2py use.

It is zero-diff to MAPL 2.46.0


This version of MAPL was tested with:

  • Intel Fortran Classic 2021.6.0 (Classic 2021.12 seems to work, ifx does not yet work)
  • GCC 13.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below. NOTE: Changes here from MAPL 2.44 and earlier, namely GFE

  • Baselibs 7.24.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 8.6.1b04 (8.6.0 is enough for Baselibs builds, but 8.6.1 is required for Spack)
    • GFE 1.15.0
      • gFTL 1.13.0
      • gFTL-shared 1.8.0
      • pFUnit 4.9.0 (optional)
      • fArgParse 1.7.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.14.0 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use:

  • ESMA_cmake v3.45.1

We recommend most external users set -DUSE_F2PY=OFF


From CHANGELOG.md

Fixed

  • Update components.yaml to avoid f2py error with python 3.11
    • ESMA_cmake v3.45.1
      • Fix bug in meson detection

What's Changed

Full Changelog: v2.46.0...v2.46.1