Project

General

Profile

News

YAXT Version 0.12.0 available

Added by Thomas Jahns 7 days ago

This release
  • adds count and offset to each exchanger message, simplifying the MPI datatypes in turn,
  • adds an interface to iterate over the extended messages
  • improves multi-threaded operations for exchangers
  • improve code-sharing between exchangers by inserting an actual base class
  • experimental: exposes the xt_exchanger family of classes (Fortran: USE xt_exchanger_abstract, C: #include <xt/xt_exchanger.h>)
  • adds a configurable mode to put exchangers into synchronous operation mode for improved fault isolation
  • adds documentation for the now public exchanger hierarchy
  • make the alternate datatype generator previously only available with compile-time macro definition COMPACT_DT a run-time customizable part
  • add a limit for the size of the MPI datatype cache, needed large, sparse indexed access into huge local arrays
  • various improvements to the test suite for new bugs in new compilers (nvfortran mostly) and old bugs in old compilers (ifort mostly)
  • improve the build tools for robustness
  • refines and extends the configurable bucket generator interface
  • permits suppressing the use of pthreads locking (user then needs to ensure creation of index lists or redists is non-concurrent via other means)
  • various minor optimizations in handling of MPI datatypes

YAXT Version 0.11.5.1 available

Added by Thomas Jahns 7 months ago

This release fixes a minor bug in the build system affecting build certain configurations. In these, a pre-processor macro that influences the conditional expansion of Fortran or C header module dependencies is defined by a command-line flag (usually using a -D switch) with a non-empty value. Such builds will fail with an error message.

If building with 0.11.5 succeeds, no upgrade to this patch release is necessary since only build tooling is different comparing 0.11.5.1 to 0.11.5.

YAXT Version 0.11.5 available

Added by Thomas Jahns 7 months ago

This release
  • contains two fixes relevant for intersections using the optimized paths introduced in 0.11,
  • fixes potentially problematic use of realloc now exhibit canonical behaviour: whenever an allocation of size 0 is created, NULL is returned and realloc with size 0 uses free instead,
  • brings some improvements of the documentation,
  • introduces multiple changes that affect the build system (mostly in terms of ergonomics),
  • properly detects two failures in the nvfortran compiler and uses work-arounds regardless of compiler macro definitions,
  • changes handling of failure cases to print a backtrace before terminating the program,
  • improves compatibility with macOS.

It's recommended for all users of older 0.11 releases to upgrade to this version.

YAXT Version 0.11.4 available

Added by Thomas Jahns about 1 year ago

This release updates fixes for the build system for newer compilers but remains functionally identical to the 0.11.3 release.

It became necessary to publish an intermediate release for ICON, since the next proper release with improvements for exchangers, derived data type creation and general improvements is not ready yet.

YAXT Version 0.11.1 available

Added by Thomas Jahns about 2 years ago

This release addresses minor bugs in the internal derived data type packing/unpacking where

  • MPI_FLOAT_INT might lead to a SIGBUS on some architectures.
  • Reference tests for 0-size datatypes incorrectly use a buffer of size 0, but the MPI spec requires a buffer of the size provided by MPI_Pack_size.

Also, it includes some improvements for xt_idxsection and xt_idxstripes and a few refactorings that were release ready.

The internal derived data type packing/unpacking can now be disabled with the configure switch --disable-xt-ddt-exchanger.

YAXT Version 0.10.2 available

Added by Thomas Jahns about 2 years ago

This release addresses minor bugs in the internal derived data type packing/unpacking where

  • MPI_FLOAT_INT might lead to a SIGBUS on some architectures.
  • Reference tests for 0-size datatypes incorrectly use a buffer of size 0, but the MPI spec requires a buffer of the size provided by MPI_Pack_size.

If you already have a build of 0.10.1 that passes all tests, there is no need to upgrade. But it is strongly recommended for RISC platforms (NEC SX, ARM64, PPC64 and others).

YAXT Version 0.11.0 available

Added by Thomas Jahns about 2 years ago

This version presents an overhaul of multiple data paths in the intersection computation that is the basis of Xmap construction.

This release should work as a drop-in replacement for previous versions and only make Xmap creation faster.
In case an unexpected bug got through and you experience performance degradation of any kind, we'd like to hear of that.

New functionality is a choice of sorting algorithm and customizable bucket generation in the distributed directory employed in xt_xmap_dist_dir_new.

YAXT Version 0.10.1 available

Added by Thomas Jahns about 2 years ago

This release mostly fixes problems with experimental features and builds on particular platforms.

  • A memory leak with the GPU memory exchanger introduced in 0.10.0 was fixed.
  • Adjustments for newer nvhpc Fortran compilers have been added.
  • Warning suppressions for gcc 13 were updated.

The corresponding archives are in the Downloads section, the branch release-0.10.1 matches the archive contents.

(1-10/34)

Also available in: Atom