Skip to content

Releases: acts-project/vecmem

VecMem Beta 0.12.0

08 Mar 08:44
9ca8f5b
Compare
Choose a tag to compare
VecMem Beta 0.12.0 Pre-release
Pre-release

Release including the following update(s) since v0.11.0:

  • Explicitly switched the CI to using Visual Studio 2022 on the windows-latest runners;
  • Updated vecmem::atomic to use sycl::atomic_ref with a SYCL compiler, if that type is available;
    • This is necessary as sycl::atomic became deprecated in the latest Intel compiler nightlies;
  • Introduced vecmem::device_atomic_ref as a slightly updated version of vecmem::atomic, which all clients should migrate to;
    • Updated vecmem::device_vector to use this new type itself.

VecMem Beta 0.11.0

11 Feb 09:17
e0542df
Compare
Choose a tag to compare
VecMem Beta 0.11.0 Pre-release
Pre-release

Release including the following update(s) since v0.10.0:

  • Made the CUDA build compatible with non-NVCC compilers;
  • Made sure to use the dynamic CUDA runtime library during the build of .cu files, to be compatible with how .cxx files are linked against the CUDA runtime library.

VecMem Beta 0.10.0

02 Feb 13:48
b13eac7
Compare
Choose a tag to compare
VecMem Beta 0.10.0 Pre-release
Pre-release

Release including the following update(s) since v0.9.0:

  • Introduced a generic / robust way of aligning multiple pointers in typeless memory allocations at once;
    • The previous hacky code in jagged vectors was replaced with this much more elegant one for ensuring that any payload type in jagged vectors would be handled correctly;
  • Added multiple fixes / improvements for handling SYCL source files;
    • The -Werror flag is now only turned on if the compiler doesn't print any "inherent" warnings (which can be the case with some compilers under some situations);
    • Switched to building vecmem::sycl_polyfill with -fPIC;
    • Taught CMake which include directories and libraries are handled by the SYCL compiler implicitly, to avoid it adding /usr/include into compilation commands.

VecMem Beta 0.9.0

25 Jan 17:11
caa4b58
Compare
Choose a tag to compare
VecMem Beta 0.9.0 Pre-release
Pre-release

Release including the following update(s) since v0.8.0:

  • Added various types of smart pointers that would use memory resources explicitly, and upgraded the classes that need to own memory, to use these smart pointers consistently;
  • Reduced the number of allocations performed by vecmem::arena_memory_resource under certain situations;
  • Introduced explicit support for ComputeCpp in the project, and made sure that it could also be compiled using hipSYCL;
    • The test success rate with both compilers is fairly low at the moment;
  • Fixed the alignment of the elements in (jagged) vector buffers that are larger than 32-bit, fixing issues with using such buffers on NVIDIA cards.

VecMem Beta 0.8.0

13 Dec 09:51
f39a881
Compare
Choose a tag to compare
VecMem Beta 0.8.0 Pre-release
Pre-release

Release including the following update(s) since v0.7.0:

  • Fixes for the SYCL tests to make them (more) compatible with oneAPI's AMD backend support;
  • Made vecmem::core require MSVC to set the __cplusplus macro correctly, as a public compiler option;
  • Introduced vecmem::cuda::async_copy to allow experimentation with asynchronous memory copies;
  • Made GCC/Clang check for missing symbols in the shared libraries built in the project;
  • Introduced some benchmarks for "simple" memory allocations;
  • Made vecmem::static_array behave even more like std::array, by removing its custom constructors, allowing it to hold non-copyable/non-movable elements as well;
  • Made vecmem::cuda::stream_wrapper usable in .cu files on Windows;
  • Made it possible to check for memory leaks on NVidia devices in the CUDA tests.

VecMem Beta 0.7.0

08 Nov 15:14
933622f
Compare
Choose a tag to compare
VecMem Beta 0.7.0 Pre-release
Pre-release

Release including the following update(s) since v0.6.0:

  • Made the project export/install the CMake code that it uses internally for building SYCL and HIP code. So that clients of the project could make use of the same code for building their own SYCL and HIP sources.

VecMem Beta 0.6.0

04 Nov 18:37
d6d4f8e
Compare
Choose a tag to compare
VecMem Beta 0.6.0 Pre-release
Pre-release

Release including the following updates since v0.5.0:

  • Added 5 "high level" memory resources for implementing conditional memory allocation schemes;
  • Added a memory resource meant to help with debugging memory allocation issues;
  • Made the project's build system compatible with the latest updates in intel/llvm;
  • Added multiple updates to the test system used by the project;
  • Introduced vecmem::static_array::get and vecmem::get functions for accessing elements of vecmem::static_array objects.

VecMem Beta 0.5.0

13 Oct 13:27
ce78b1d
Compare
Choose a tag to compare
VecMem Beta 0.5.0 Pre-release
Pre-release

Release containing many fixes and new features since v0.4.0:

  • Support for CMake 3.21 and HIP 4.2 has been added;
  • Explicit symbol visibility has been added to improve LTO and Windows support;
    • The project can now be built as a Windows DLL;
  • A new downstream arena memory resource has been added;
  • An instrumenting memory resource and memory monitor have been added to monitor allocation patterns;
  • The test suite has been improved to catch even more bugs;
  • Support for SYCL has been improved.

VecMem Beta 0.4.0

29 Sep 09:46
f119d40
Compare
Choose a tag to compare
VecMem Beta 0.4.0 Pre-release
Pre-release

Release including the following updates since v0.3.0:

  • Added support for building the project on Windows (10) with MSVC;
    • Made it possible to use the oneAPI Windows installation as well;
  • Added more support for macOS builds;
    • Disabled a warning from the internal GoogleTest build, only showing up on macOS;
    • Provided some std::pmr functions that libc++ does not provide at the moment;
  • Made it possible to use vecmem::static_array objects as constexpr objects;
  • Fixed a bug in how vecmem::binary_page_memory_resource would de-allocate memory;
  • Extended the (CI) tests to more platforms and more use cases.

VecMem Beta 0.3.0

08 Sep 13:01
1b093d2
Compare
Choose a tag to compare
VecMem Beta 0.3.0 Pre-release
Pre-release

Release including a few quality of live improvements after v0.2.0.

  • Made the usage of HIP and SYCL a bit more robust, both of them using the HIPCXX and SYCLCXX environment variables, respectively;
  • Updated the code formatting slightly in some places;
  • Introduced additional compilation warnings for the build;
  • Improved the performance of jagged vector buffers a bit;
  • Made vecmem/memory/memory_resource.hpp and vecmem/memory/polymorphic_allocator.hpp choose the source of the classes that they use, during the CMake configuration step.