Releases: ROCm/rocThrust
Releases · ROCm/rocThrust
rocThrust 3.2.0 for ROCm 6.3.1
rocThrust code for ROCm 6.3.1 did not change. The library was rebuilt for the updated ROCm 6.3.1 stack.
rocThrust 3.2.0 for ROCm 6.3.0
Added
- Merged changes from upstream CCCL/thrust 2.3.2
- Only the NVIDIA backend uses
tuple
andpair
types from libcu++, other backends continue to
use the original Thrust implementations and hence do not require libcu++ (CCCL) as a dependency.
- Only the NVIDIA backend uses
- Added the
thrust::hip::par_det
execution policy to enable bitwise reproducibility on algorithms that are not bitwise reproducible by default.
Changed
- Updated the default value for the
-a
argument fromrmake.py
togfx906:xnack-,gfx1030,gfx1100,gfx1101,gfx1102,gfx1151,gfx1200,gfx1201
. - Enabled the upstream (thrust) test suite for execution by default. It can still be disabled by CMake option
-DENABLE_UPSTREAM_TESTS=OFF
.
Resolved issues
- Fixed an issue in
rmake.py
where the list storing cmake options would contain individual characters instead of a full string of options. - Fixed the HIP backend not passing
TestCopyIfNonTrivial
from the upstream (thrust) test suite. - Fixed tests failing when compiled with
-D_GLIBCXX_ASSERTIONS=ON
.
rocThrust 3.1.1 for ROCm 6.2.4
Added
- gfx1151 Support
rocThrust 3.1.0 for ROCm 6.2.2
rocThrust code for ROCm 6.2.2 did not change. The library was rebuilt for the updated ROCm 6.2.2 stack.
rocThrust 3.1.0 for ROCm 6.2.1
rocThrust code for ROCm 6.2.1 did not change. The library was rebuilt for the updated ROCm 6.2.1 stack.
rocThrust 3.1.0 for ROCm 6.2.0
Additions
- Merged changes from upstream CCCL/thrust 2.2.0
- Updated the contents of
system/hip
andtest
with the upstream changes tosystem/cuda
andtesting
- Updated the contents of
Changes
- Updated internal calls to
rocprim::detail::invoke_result
to use the public APIrocprim::invoke_result
. - Use
rocprim::device_adjacent_difference
foradjacent_difference
API call. - Updated internal use of custom iterator in
thrust::detail::unique_by_key
to use rocPRIM'srocprim::unique_by_key
. - Updated
adjecent_difference
to make use ofrocprim:adjecent_difference
when iterators are comparable and not equal otherwise userocprim:adjacent_difference_inplace
.
Known issues
thrust::reduce_by_key
outputs are not bit-wise reproducible, as run-to-run results for pseudo-associative reduction operators (e.g. floating-point arithmetic operators) are not deterministic on the same device.- Note that currently, rocThrust memory allocation is performed in such a way that most algorithmic API functions cannot be called from within hipGraphs.
rocThrust 3.0.1 for ROCm 6.1.2
rocThrust code for ROCm 6.1.2 did not change. The library was rebuilt for the updated ROCm 6.1.2 stack.
rocThrust 3.0.1 for ROCm 6.1.1
rocThrust code for ROCm 6.1.1 did not change. The library was rebuilt for the updated ROCm 6.1.1 stack.
rocThrust 3.0.1 for ROCm 6.1.0
Fixes
- Ported a fix from thrust 2.2 that ensures
thrust::optional
is trivially copyable.
rocThrust 3.0.0 for ROCm 6.0.2
rocThrust code for ROCm 6.0.2 did not change. The library was rebuilt for the updated ROCm 6.0.2 stack.