rocBLAS
rocBLAS copied to clipboard
[HIPIFY][#1281][ROC][CUDA 12.0][feature] Support of "pure int64_t" APIs in ROC, since they are introduced in cuBLAS 12.0
[IMP]
int64_t rocBLAS APIs should be available in the same compilation unit. That means, int-based APIs can live in the same code simultaneously with int64_t ones. For instance:
cublasStatus_t CUBLASWINAPI cublasGetVector(int n, int elemSize, const void* x, int incx, void* y, int incy);
cublasStatus_t CUBLASWINAPI cublasGetVector_64(int64_t n, int64_t elemSize, const void* x, int64_t incx, void* y, int64_t incy);
Current rocBLAS analogue:
ROCBLAS_EXPORT rocblas_status rocblas_get_vector(rocblas_int n, rocblas_int elem_size, const void* x, rocblas_int incx, void* y, rocblas_int incy);
A possible obstacle to reaching the above aim in rocBLAS is the following preprocessing conditional defines for rocblas_int:
#if defined(rocblas_ILP64)
typedef int64_t rocblas_int;
#else
typedef int32_t rocblas_int;
#endif