UPC++ 2023.9.0 Release Announcement

7 views
Skip to first unread message

Paul H. Hargrove

unread,
Dec 15, 2023, 11:15:36 PM12/15/23
to UPC++, upcxx-a...@lbl.gov

The Pagoda project at Lawrence Berkeley National Laboratory is proud to announce the release of UPC++ 2023.9.0, now available from upcxx.lbl.gov.  This release introduces several enhancements and usability improvements, as detailed in the ChangeLog and copied below.  Notably, this release adds experimental support for acceleration of RMA involving the ze_device memory kind with Intel GPUs such as those used on ALCF's Aurora.


Please use the issue tracker to report any problems or make feature requests.  Alternatively, if you have private feedback or questions not suited to a public venue, you can email: pag...@lbl.gov. We welcome all feedback.


We would like users of NERSC, ALCF and OLCF systems to be aware that we maintain public installs of UPC++ at all three centers, with usage instructions here. The 2023.9.0 release will be installed on the listed systems some time next week. 


-Paul H. Hargrove, on behalf of the Pagoda project at LBNL



ChangeLog excerpts for this release:

General features/enhancements: (see specification and programmer's guide for full details)

  • NEW: Experimental accelerated memory kinds support for Intel GPUs with HPE Slingshot-11

  • 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.

Breaking changes:

  • 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.


Download filenames and their md5 checksums:


    upcxx-2023.9.0.tar.gz        427eb46f2f892e1cd1f7cd8ccc22f832

    upcxx-spec-2023.9.0.pdf      ac203c910ad6d133d44863bcd43a9e74

    upcxx-guide-2023.9.0.pdf     1735d2a5df888f6348ac55c68a07f5b3





Reply all
Reply to author
Forward
0 new messages