hipCUB
|
hipCUB is a thin wrapper library on top of rocPRIM or CUB. It enables developers to port project using CUB library to the HIP layer and to run them on AMD hardware. In ROCm environment hipCUB uses rocPRIM library as the backend, however, on CUDA platforms it uses CUB instead.
<hipcub/hipcub.hpp>
header.HIPCUB_ROCPRIM_API
is defined.HIPCUB_CUB_API
is defined.__HIP_PLATFORM_AMD__
, __HIP_PLATFORM_NVIDIA__
).hipCUB with rocPRIM backend may not support all function and features CUB has because of the differences between ROCm (HIP) platform and CUDA platform.
Not-supported features and differences:
Debug
, PtxVersion
, SmVersion
functions and CubDebug
, CubDebugExit
, _CubLog
macros are not supported.ThreadExit
, ThreadTrap
- not supported.member_mask
input argument is ignored in WARP_*
functions.first_thread
, last_thread
, and member_mask
are ignored in Shuffle*
functions.