The following improvements have been made to YAXT:
- The C part is now available as a separate library so that the differences in linking between Fortran and C can properly be accounted for.
- As a consequence of the above, friendlier generic interfaces are available for Fortran and mpif.h is no longer needed for building YAXT.
- Intercommunicators are supported for constructing Xmaps (destination indices can only be satisified from sources in the remote group) for both,
xt_xmap_all2all_new
and xt_xmap_dist_dir_new
.
- Correctness and performance have been improved for index stripe lists (
xt_idxstripes_new
) and the distributed-directory based Xmap construction.
- Various internal and test-suite improvements.
In summary the changes are:
- Better support for BlueGene/Q and cross-compilation.
- Copy constructors for xmaps and redists.
- Support for overlapping redist repeat constituents.
- Stricter declaration of some API functions (added const).
- 2 edge cases in stripe overlap got fixed.
- The tests got improved in numerous little places.
- Internal memory allocations have slightly less overhead.
This release fixes the prevention of unnecessary duplication of MPI communicators from 0.4.2 to finally work in all cases.
This release contains a fix to prevent unnecessary duplication of MPI communicators.
Also, another example is added. It shows how to use yaxt for halo exchange of unstructured grid models.
This release contains minor fixes plus a switch to run configure tests with libtool so that users are no longer bothered with details of rpath and library dependencies.
This release adds
- a minor optimization to prevent unneeded duplication MPI communicators,
- convenience functions to reduce user input at configure time
- further documentation on how to build on Cray XC systems
- various bug-fixes for compiler/MPI fail
The API is unchanged and this version, while a major step in regard to reliability, should be a drop-in replacement for everyone using 0.3.0 at this time.
This release significantly enhances the library:
- Fortran support is finalized, all public functions from the C API have a corresponding routine in the Fortran API.
- Performance has been improved for computations on large distributed objects while decreasing memory requirements at the same time.
This version provides:
- Improved computation of intersections for large index lists.
- Exposes more of the API to Fortran.
- Some performance/memory improvements.
- The Fortran interface and Fortran language tests have been greatly improved.
- Two calls added to determine if the library has been initialized (xt_initialize*d*/xt_finalize*d*).
- XT_INT_MIN and XT_INT_MAX limits added.
- Lots of bug fixes and code cleanup.
A new release has been made available.
Following are the most important changes: