General features/enhancements: (see specification and programmer's guide for full details)
Updated upcxx-run supports launch of smp-conduit jobs via ssh, MPI and PMI on
supported systems, matching the capabilites of (for instance) ibv and ofi.
Infrastructure changes:
Support for the Cray XC platform and its aries network, deprecated since 2023.9.0,
have been removed.
Correction to install script enables use of LLVM/clang++ version 20 and higher
Newer embedded GASNet-EX resolves various issues seen when using:
GNU Compiler Collection (GCC) version 15.1.0, and newer
AMD ROCm version 6.0, and newer
HPE's Slingshot Host Software (SHS) version 12.0.1, and newer
Reduce CPU overheads along the round-trip LPC return path in persona::lpc()
Reduce CPU overheads for some small copy() operations involving CUDA/HIP GPUs
New *_device::uuid() query for GPU hardware UUID
Add human-readable memory sizes to shared heap exception messages
New sycl_vecadd target in examples/gpu_vecadd performs vector addition on Level Zero devices
Infrastructure changes:
The value of UPCXX_CCS_MAX_SEGMENTS must fall between the number of segments
loaded at init time (plus some unspecified padding) and 32767. Values outside this
range are silently raised or lowered to meet this requirement.
Support for an additional compiler family on HPE Cray EX systems:
Intel oneAPI compilers via PrgEnv-intel
See INSTALL.md for details such as minimum versions.
Support for the Cray XC platform is now deprecated and will be removed in a
future release.
Invoking discharge() from inside the restricted context is now forbidden,
where previously it could lead to deadlock.
discharge() and progress_required() now default to selecting all personas
active with the calling thread. The optional argument can override this behavior.
Member function future::ready() has been renamed to future::is_ready(), for
consistency with similar function names elsewhere in the library.
The old function name is now deprecated and may be removed in a future release.