Full documentation for rocThrust is available at https://rocthrust.readthedocs.io/en/latest/
lower_bound
,upper_bound
, andbinary_search
failed to compile for certain types.
- Updated
docs
directory structure to match the standard of rocm-docs-core.
- Updated to match upstream Thrust 1.17.2
- set_difference and set_intersection no longer hang if the number of items is above
UINT_MAX
. Previously, the unit tests for set_difference and set_intersection failed theTestSetDifferenceWithBigIndexes
.
- Updated to match upstream Thrust 1.16.0
- rocThrust functionality dependent on device malloc works is functional as ROCm 5.2 reneabled device malloc. Device launched
thrust::sort
andthrust::sort_by_key
are available for use.
- Packages for tests and benchmark executable on all supported OSes using CPack.
- async_copy, partition, and stable_sort_by_key unit tests are failing on HIP on Windows.
- Updated to match upstream Thrust 1.15.0
- async_copy, partition, and stable_sort_by_key unit tests are failing on HIP on Windows.
- Updated to match upstream Thrust 1.13.0
- Updated to match upstream Thrust 1.14.0
- Added async scan
- Scan algorithms:
inclusive_scan
now uses the input-type as accumulator-type,exclusive_scan
uses initial-value-type.- This particularly changes behaviour of small-size input types with large-size output types (e.g.
short
input,int
output). - And low-res input with high-res output (e.g.
float
input,double
output)
- This particularly changes behaviour of small-size input types with large-size output types (e.g.
- Initial HIP on Windows support. See README for instructions on how to build and install.
- Packaging changed to a development package (called rocthrust-dev for
.deb
packages, and rocthrust-devel for.rpm
packages). As rocThrust is a header-only library, there is no runtime package. To aid in the transition, the development package sets the "provides" field to provide the package rocthrust, so that existing packages depending on rocthrust can continue to work. This provides feature is introduced as a deprecated feature and will be removed in a future ROCm release.
- async_copy, partition, and stable_sort_by_key unit tests are failing on HIP on Windows.
- Mixed type exclusive scan algorithm still not using the initial value type for results type.
- gfx1030 support
- Address Sanitizer build option
- async_transform unit test failure fixed.
- Updated to match upstream Thrust 1.11
- gfx90a support added
- gfx803 support re-enabled
- Updated to match upstream Thrust 1.10
- Minimum cmake version required for building rocThrust is now 3.10.2
- Size zero inputs are now properly handled with newer ROCm builds that no longer allow zero-size kernel grid/block dimensions
- Warning of unused results fixed.
- No new features
- Updated to upstream Thrust 1.10.0
- Implemented runtime error for unsupported algorithms and disabled respective tests.
- Updated CMake to use downloaded rocPRIM.
- Added copy_if on device test case
- ROCm support for device malloc has been disabled. As a result, rocThrust functionality dependent on device malloc does not work. Please avoid using device launched thrust::sort and thrust::sort_by_key. Host launched functionality is not impacted. A partial enablement of device malloc is possible by setting HIP_ENABLE_DEVICE_MALLOC to 1. Thrust::sort and thrust::sort_by_key may work on certain input sizes but is not recommended for production code.
- Updated to upstream Thrust 1.9.8
- New test cases for device-side algorithms
- Bugfix for binary search
- Implemented workarounds for hipStreamDefault hang
- ROCm support for device malloc has been disabled. As a result, rocThrust functionality dependent on device malloc does not work. Please avoid using device launched thrust::sort and thrust::sort_by_key. Host launched functionality is not impacted. A partial enablement of device malloc is possible by setting HIP_ENABLE_DEVICE_MALLOC to 1. Thrust::sort and thrust::sort_by_key may work on certain input sizes but is not recommended for production code.
- No new features
- ROCm support for device malloc has been disabled. As a result, rocThrust functionality dependent on device malloc does not work. Please avoid using device launched thrust::sort and thrust::sort_by_key. Host launched functionality is not impacted. A partial enablement of device malloc is possible by setting HIP_ENABLE_DEVICE_MALLOC to 1. Thrust::sort and thrust::sort_by_key may work on certain input sizes but is not recommended for production code.
- Updated to upstream Thrust 1.9.4
- Package dependecy change to rocprim only
- ROCm support for device malloc has been disabled. As a result, rocThrust functionality dependent on device malloc does not work. Please avoid using device launched thrust::sort and thrust::sort_by_key. Host launched functionality is not impacted. A partial enablement of device malloc is possible by setting HIP_ENABLE_DEVICE_MALLOC to 1. Thrust::sort and thrust::sort_by_key may work on certain input sizes but is not recommended for production code.
- No new features
- ROCm support for device malloc has been disabled. As a result, rocThrust functionality dependent on device malloc does not work. Please avoid using device launched thrust::sort and thrust::sort_by_key. Host launched functionality is not impacted. A partial enablement of device malloc is possible by setting HIP_ENABLE_DEVICE_MALLOC to 1. Thrust::sort and thrust::sort_by_key may work on certain input sizes but is not recommended for production code.
- Improved tests with fixed and random seeds for test data
- CMake searches for rocThrust locally first; downloads from github if local search fails
- HCC build deprecated