Releases: LLNL/Umpire
v4.1.2 Release
- Added workaround for incorrect nvcc compiler warning:
"warning: missing return statement at end of non-void function"
occuring in one Umpire's header files.
v4.1.1 Release
v4.1.1
-
Fixed DynamicPoolMap deallocate to make coalesce check O(1) again.
-
Initialize m_default_allocator to HOST if not set explicitly.
v4.1.0
v4.1.0
-
QuickPool available via the C & Fortran APIs.
-
Resources are now created on-demand when accessed for the first time.
-
Peer access is no longer automatically enabled for CUDA and HIP.
-
Added cmake check to deterime if build subsystem capable of ASAN.
-
Fixed ASAN poisoning to limit it to what user originally requested and not
rounded amount. -
Improved resilliance of primary pool destructors so that giving back
previously allocated blocks to a device that has already been cleaned up
will no longer throw an error, but instead will now be logged and ignored.
Release v4.0.1
-
Fixed Umpire builds with MPI enabled
-
Added missing wrapUmpire.hpp to installation directory
v4.0.0
This release is not ABI compatible with 3.x releases, hence the major version number bump. It includes a number of new features and bug fixes, including:
- Added a FILE memory resource that allocates memory using mmap'd files. This
can be used to allocate memory from the burst buffers on machines like Sierra
and Lassen. - All pools now have an "alignment" parameter that can be provided to the
constructor. - MemoryResourceTraits now includes a
resource
member that can be used to
identify the underlying resource for any Allocator. - Bundled tpl cxxopts has been replaced by CLI11 (only used when ENABLE_TOOLS=On)
- Fixed memory leaks in DynamicPoolList, QuickPool.
- Fixed reallocate operation when called on an allocation from a pool.
Please download the umpire-4.0.0.tar.gz file below, rather than the files generated automatically by Github, as these do not include all the necessary submodule code.
v3.0.0
This release is not ABI compatible with 2.x releases, hence the major version number bump. It includes a number of new features and bug fixes, including:
- Added support for multiple GPU devices, detected and registered as "DEVICE_N"
where N is the device number. - Added support for capturing function backtraces with allocations.
- Added
AlignedAllocator
to provide aligned allocations for host memory. - Fixed builds using
-stdlib=c++
- Switched to camp::Platform: Platform::cpu is now Platform::host
Please download the umpire-3.0.0.tar.gz file below, rather than the files generated automatically by Github, as these do not include all the necessary submodule code.
v2.1.0
This minor release fixes a bug when calling reallocate
with size 0. Additionally, the replay
tool now supports replaying reallocate
operations.
Please download the umpire-2.1.0.tar.gz
file below, rather than the files generated automatically by Github, as these do not include all the necessary submodule code.
v2.0.0
This release contains a number of changes and bugfixes, as well as some API changes that have resulted in the major version number bump:
ENABLE_DEVICE_CONST
CMake option to control whether device constant memory
is enabled. It is now disabled by default.DeviceAllocator
that provides a pool for allocations inside GPU kernels.- Added "unset" operations for removing CUDA memory advice.
- Extended C/Fortran API with more allocation strategies.
- NamedAllocator that allows creating a new allocator that passes allocations
through to underlying strategy UMPIRE_VERSION_X
are now defined as macros, rather than constexpr variables- Fixed reallocate to properly handle case where size == 0
- AllocationStrategy constructor parameters re-ordered for consistency
Please download the umpire-2.0.0.tar.gz
file below, rather than the files generated automatically by Github, as these do not include all the necessary submodule code.
v1.1.0
This release contains the following major changes:
-
Added symbol
umpire_ver_1_detected
to help detect version mismatches when
linking multiple libraries that all use Umpire. -
Re-introduced pool algorithm used in pre-1.0.0 releases as
DynamicPoolList
,
and renamed current strategy toDynamicPoolMap
.DynamicPool
is now an
alias toDynamicPoolMap
. -
Fix signature of C function
umpire_resourcemanager_make_allocator_pool
to
takesize_t
notint
.
Please download the umpire-1.1.0.tar.gz
file, rather than the files generated automatically by Github, as these do not include all the necessary submodule code.
v1.0.1
This release fixes a bug in the DynamicPool where blocks would be leaked if a minimum size block was allocated for a smaller allocation in certain circumstances.