Releases: ROCm/rocRAND
Releases · ROCm/rocRAND
rocRAND 4.2.0 for ROCm 7.2.0
Removed
- For performance reasons in the
mrg31k3p_state,mrg32k3a_state,xorwow_stateandphilox4x32_10_statestates are theboxmuller_float_stateandboxmuller_double_stateremoved now and theboxmuller_floatandboxmuller_doubleare set with NaN when the value is not set.
Added
- Added a new CMake option
-DUSE_SYSTEM_LIBto allow tests to be built fromROCmlibraries provided by the system. - Experimental SPIR-V support.
Changed
- Changed the
launchmethod inhost_systemanddevice_system, so that kernels with all supported arches can be compiled with correct configuration during host pass. All generators are updated accordingly for support of SPIR-V. To invoke SIPR-V, it should be built with-DAMDGPU_TARGETS=amdgcnspirv.
rocrand 4.1.0 for ROCm 7.1.1
rocRAND code for ROCm 7.1.1 did not change. The library was rebuilt for the updated ROCm 7.1.1 stack.
rocRAND 4.1.0 for ROCm 7.1.0
Resolved issues
- Updated error handling for several rocRAND unit tests to accomodate the new hipGetLastError behaviour that was introduced in ROCm 7.0.
As of ROCm 7.0, the internal error state is cleared on each call tohipGetLastErrorrather than on every HIP API call.
Changed
- Changed the
USE_DEVICE_DISPATCHflag so it can turn device dispatch off by setting it to zero. Device dispatch should be turned off when building for SPIRV.
rocrand 4.0.0 for ROCm 7.0.2
rocRAND code for ROCm 7.0.2 did not change. The library was rebuilt for the updated ROCm 7.0.2 stack.
rocrand 4.0.0 for ROCm 7.0.1
rocRAND code for ROCm 7.0.1 did not change. The library was rebuilt for the updated ROCm 7.0.1 stack.
rocRAND 4.0.0 for ROCm 7.0.0
Added
- gfx950 support
- Additional unit tests for
test_log_normal_distribution.cpp - Additional unit tests for
test_normal_distribution.cpp - Additional unit tests for
test_rocrand_mtgp32_prng.cpp - Additional unit tests for
test_rocrand_scrambled_sobol32_qrng.cpp - Additional unit tests for
test_rocrand_scrambled_sobol64_qrng.cpp - Additional unit tests for
test_rocrand_sobol32_qrng.cpp - Additional unit tests for
test_rocrand_sobol64_qrng.cpp - Additional unit tests for
test_rocrand_threefry2x32_20_prng.cpp - Additional unit tests for
test_rocrand_threefry2x64_20_prng.cpp - Additional unit tests for
test_rocrand_threefry4x32_20_prng.cpp - Additional unit tests for
test_rocrand_threefry4x64_20_prng.cpp - Additional unit tests for
test_uniform_distribution.cpp - New unit tests for
include/rocrand/rocrand_discrete.hintest_rocrand_discrete.cpp - New unit tests for
include/rocrand/rocrand_mrg31k3p.hintest_rocrand_mrg31k3p_prng.cpp - New unit tests for
include/rocrand/rocrand_mrg32k3a.hintest_rocrand_mrg32k3a_prng.cpp - New unit tests for
include/rocrand/rocrand_poisson.hintest_rocrand_poisson.cpp
Changed
- Changed the return type for
rocrand_generate_poissonfor theSOBOL64andSCRAMBLED_SOBOL64engines. - Changed the unnecessarily large 64-bit data type for constants used for skipping in
MRG32K3Ato the 32-bit data type. - Updated several
gfx942auto tuning parameters. - Modified error handling and expanded the error information for the case of double-deallocation of the (scrambled) sobol32 and sobol64 constants and direction vectors.
Removed
- Removed inline assembly and the
ENABLE_INLINE_ASMCMake option. Inline assembly was used to optimizate of multiplications in the Mrg32k3a and Philox 4x32-10 generators. It is no longer needed because the current HIP compiler is able to produce code with the same or better performance. - Removed instances of the deprecated clang definition
__AMDGCN_WAVEFRONT_SIZE. - Removed C++14 support. Beginning with this release, only C++17 is supported.
- Directly accessing the (scrambled) sobol32 and sobol64 constants and direction vectors is no longer supported. For:
h_scrambled_sobol32_constants, userocrand_get_scramble_constants32instead.h_scrambled_sobol64_constants, userocrand_get_scramble_constants64instead.rocrand_h_sobol32_direction_vectors, userocrand_get_direction_vectors32instead.rocrand_h_sobol64_direction_vectors, userocrand_get_direction_vectors64instead.rocrand_h_scrambled_sobol32_direction_vectors, userocrand_get_direction_vectors32instead.rocrand_h_scrambled_sobol64_direction_vectors, userocrand_get_direction_vectors64instead.
Resolved issues
- Fixed an issue where
mt19937.hppwould cause kernel errors during auto tuning.
Upcoming changes
- Deprecated the rocRAND Fortran API in favor of hipfort.
rocRAND 3.3.0 for ROCm 6.4.4
rocRAND code for ROCm 6.4.4 did not change. The library was rebuilt for the updated ROCm 6.4.4 stack.
rocRAND 3.3.0 for ROCm 6.4.3
rocRAND code for ROCm 6.4.3 did not change. The library was rebuilt for the updated ROCm 6.4.3 stack.
rocRAND 3.3.0 for ROCm 6.4.2
rocRAND code for ROCm 6.4.2 did not change. The library was rebuilt for the updated ROCm 6.4.2 stack.
rocRAND 3.3.0 for ROCm 6.4.1
rocRAND code for ROCm 6.4.1 did not change. The library was rebuilt for the updated ROCm 6.4.1 stack.