Merge pull request #1024 from emankov/master
[HIPIFY][BLAS] cuBLAS 10.1 support
[ROCm/hip commit: 85de95386e]
This commit is contained in:
@@ -20,9 +20,12 @@
|
||||
| 0 |*`CUBLAS_OP_N`* |*`HIPBLAS_OP_N`* | 111 |
|
||||
| 1 |*`CUBLAS_OP_T`* |*`HIPBLAS_OP_T`* | 112 |
|
||||
| 2 |*`CUBLAS_OP_C`* |*`HIPBLAS_OP_C`* | 113 |
|
||||
| 2 |*`CUBLAS_OP_HERMITAN`* |*`HIPBLAS_OP_C`* | 113 |
|
||||
| 3 |*`CUBLAS_OP_CONJG`* | |
|
||||
| enum |***`cublasFillMode_t`*** |***`hipblasFillMode_t`*** |
|
||||
| 0 |*`CUBLAS_FILL_MODE_LOWER`* |*`HIPBLAS_FILL_MODE_LOWER`* | 121 |
|
||||
| 1 |*`CUBLAS_FILL_MODE_UPPER`* |*`HIPBLAS_FILL_MODE_UPPER`* | 122 |
|
||||
| 1 |*`CUBLAS_FILL_MODE_FULL`* |*`HIPBLAS_FILL_MODE_FULL`* | 123 |
|
||||
| enum |***`cublasDiagType_t`*** |***`hipblasDiagType_t`*** |
|
||||
| 0 |*`CUBLAS_DIAG_NON_UNIT`* |*`HIPBLAS_DIAG_NON_UNIT`* | 131 |
|
||||
| 1 |*`CUBLAS_DIAG_UNIT`* |*`HIPBLAS_DIAG_UNIT`* | 132 |
|
||||
@@ -98,6 +101,7 @@
|
||||
|`cublasGetVersion` | |
|
||||
|`cublasGetVersion_v2` | |
|
||||
|`cublasGetProperty` | |
|
||||
|`cublasGetCudartVersion` | |
|
||||
|`cublasGetStream` |`hipblasGetStream` |
|
||||
|`cublasGetStream_v2` |`hipblasGetStream` |
|
||||
|`cublasSetStream` |`hipblasSetStream` |
|
||||
@@ -173,6 +177,7 @@
|
||||
|`cublasDcopy` |`hipblasDcopy` |
|
||||
|`cublasDcopy_v2` |`hipblasDcopy` |
|
||||
|`cublasCcopy` | |
|
||||
|`cublasCopyEx` | |
|
||||
|`cublasCcopy_v2` | |
|
||||
|`cublasZcopy` | |
|
||||
|`cublasZcopy_v2` | |
|
||||
@@ -184,6 +189,7 @@
|
||||
|`cublasCswap_v2` | |
|
||||
|`cublasZswap` | |
|
||||
|`cublasZswap_v2` | |
|
||||
|`cublasIamaxEx` | |
|
||||
|`cublasIsamax` |`hipblasIsamax` |
|
||||
|`cublasIsamax_v2` |`hipblasIsamax` |
|
||||
|`cublasIdamax` |`hipblasIdamax` |
|
||||
@@ -192,6 +198,7 @@
|
||||
|`cublasIcamax_v2` | |
|
||||
|`cublasIzamax` | |
|
||||
|`cublasIzamax_v2` | |
|
||||
|`cublasIaminEx` | |
|
||||
|`cublasIsamin` | |
|
||||
|`cublasIsamin_v2` | |
|
||||
|`cublasIdamin` | |
|
||||
@@ -200,6 +207,7 @@
|
||||
|`cublasIcamin_v2` | |
|
||||
|`cublasIzamin` | |
|
||||
|`cublasIzamin_v2` | |
|
||||
|`cublasAsumEx` | |
|
||||
|`cublasSasum` |`hipblasSasum` |
|
||||
|`cublasSasum_v2` |`hipblasSasum` |
|
||||
|`cublasDasum` |`hipblasDasum` |
|
||||
@@ -208,6 +216,7 @@
|
||||
|`cublasScasum_v2` | |
|
||||
|`cublasDzasum` | |
|
||||
|`cublasDzasum_v2` | |
|
||||
|`cublasRotEx` | |
|
||||
|`cublasSrot` | |
|
||||
|`cublasSrot_v2` | |
|
||||
|`cublasDrot` | |
|
||||
@@ -216,6 +225,7 @@
|
||||
|`cublasCrot_v2` | |
|
||||
|`cublasZrot` | |
|
||||
|`cublasZrot_v2` | |
|
||||
|`cublasRotgEx` | |
|
||||
|`cublasZdrot` | |
|
||||
|`cublasZdrot_v2` | |
|
||||
|`cublasSrotg` | |
|
||||
@@ -226,10 +236,12 @@
|
||||
|`cublasCrotg_v2` | |
|
||||
|`cublasZrotg` | |
|
||||
|`cublasZrotg_v2` | |
|
||||
|`cublasRotmEx` | |
|
||||
|`cublasSrotm` | |
|
||||
|`cublasSrotm_v2` | |
|
||||
|`cublasDrotm` | |
|
||||
|`cublasDrotm_v2` | |
|
||||
|`cublasRotmgEx` | |
|
||||
|`cublasSrotmg` | |
|
||||
|`cublasSrotmg_v2` | |
|
||||
|`cublasDrotmg` | |
|
||||
|
||||
@@ -421,6 +421,7 @@ const std::map<llvm::StringRef, hipCounter> CUDA_BLAS_FUNCTION_MAP{
|
||||
{"cublasGetStream_v2", {"hipblasGetStream", "rocblas_get_stream", CONV_LIB_FUNC, API_BLAS}},
|
||||
{"cublasGetPointerMode_v2", {"hipblasGetPointerMode", "rocblas_set_pointer_mode", CONV_LIB_FUNC, API_BLAS}},
|
||||
{"cublasSetPointerMode_v2", {"hipblasSetPointerMode", "rocblas_get_pointer_mode", CONV_LIB_FUNC, API_BLAS}},
|
||||
{"cublasGetCudartVersion", {"hipblasGetCudartVersion", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
|
||||
// GEMV
|
||||
{"cublasSgemv_v2", {"hipblasSgemv", "rocblas_sgemv", CONV_LIB_FUNC, API_BLAS}},
|
||||
@@ -631,36 +632,42 @@ const std::map<llvm::StringRef, hipCounter> CUDA_BLAS_FUNCTION_MAP{
|
||||
{"cublasZaxpy_v2", {"hipblasZaxpy", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
|
||||
// COPY
|
||||
{"cublasCopyEx", {"hipblasCopyEx", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasScopy_v2", {"hipblasScopy", "rocblas_scopy", CONV_LIB_FUNC, API_BLAS}},
|
||||
{"cublasDcopy_v2", {"hipblasDcopy", "rocblas_dcopy", CONV_LIB_FUNC, API_BLAS}},
|
||||
{"cublasCcopy_v2", {"hipblasCcopy", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasZcopy_v2", {"hipblasZcopy", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
|
||||
// SWAP
|
||||
{"cublasSwapEx", {"hipblasSwapEx", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasSswap_v2", {"hipblasSswap", "rocblas_sswap", CONV_LIB_FUNC, API_BLAS, HIP_UNSUPPORTED}},
|
||||
{"cublasDswap_v2", {"hipblasDswap", "rocblas_dswap", CONV_LIB_FUNC, API_BLAS, HIP_UNSUPPORTED}},
|
||||
{"cublasCswap_v2", {"hipblasCswap", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasZswap_v2", {"hipblasZswap", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
|
||||
// AMAX
|
||||
{"cublasIamaxEx", {"hipblasIamaxEx", "", CONV_LIB_FUNC, API_BLAS, HIP_UNSUPPORTED}},
|
||||
{"cublasIsamax_v2", {"hipblasIsamax", "rocblas_isamax", CONV_LIB_FUNC, API_BLAS}},
|
||||
{"cublasIdamax_v2", {"hipblasIdamax", "rocblas_idamax", CONV_LIB_FUNC, API_BLAS}},
|
||||
{"cublasIcamax_v2", {"hipblasIcamax", "", CONV_LIB_FUNC, API_BLAS, HIP_UNSUPPORTED}},
|
||||
{"cublasIzamax_v2", {"hipblasIzamax", "", CONV_LIB_FUNC, API_BLAS, HIP_UNSUPPORTED}},
|
||||
|
||||
// AMIN
|
||||
{"cublasIaminEx", {"hipblasIaminEx", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasIsamin_v2", {"hipblasIsamin", "rocblas_isamin", CONV_LIB_FUNC, API_BLAS, HIP_UNSUPPORTED}},
|
||||
{"cublasIdamin_v2", {"hipblasIdamin", "rocblas_idamin", CONV_LIB_FUNC, API_BLAS, HIP_UNSUPPORTED}},
|
||||
{"cublasIcamin_v2", {"hipblasIcamin", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasIzamin_v2", {"hipblasIzamin", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
|
||||
// ASUM
|
||||
{"cublasAsumEx", {"hipblasAsumEx", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasSasum_v2", {"hipblasSasum", "rocblas_sasum", CONV_LIB_FUNC, API_BLAS}},
|
||||
{"cublasDasum_v2", {"hipblasDasum", "rocblas_dasum", CONV_LIB_FUNC, API_BLAS}},
|
||||
{"cublasScasum_v2", {"hipblasScasum", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasDzasum_v2", {"hipblasDzasum", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
|
||||
// ROT
|
||||
{"cublasRotEx", {"hipblasRotEx", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasSrot_v2", {"hipblasSrot", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasDrot_v2", {"hipblasDrot", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasCrot_v2", {"hipblasCrot", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
@@ -669,16 +676,19 @@ const std::map<llvm::StringRef, hipCounter> CUDA_BLAS_FUNCTION_MAP{
|
||||
{"cublasZdrot_v2", {"hipblasZdrot", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
|
||||
// ROTG
|
||||
{"cublasRotgEx", {"hipblasRotgEx", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasSrotg_v2", {"hipblasSrotg", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasDrotg_v2", {"hipblasDrotg", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasCrotg_v2", {"hipblasCrotg", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasZrotg_v2", {"hipblasZrotg", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
|
||||
// ROTM
|
||||
{"cublasRotmEx", {"hipblasRotmEx", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasSrotm_v2", {"hipblasSrotm", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasDrotm_v2", {"hipblasDrotm", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
|
||||
// ROTMG
|
||||
{"cublasRotmgEx", {"hipblasRotmgEx", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasSrotmg_v2", {"hipblasSrotmg", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
{"cublasDrotmg_v2", {"hipblasDrotmg", "", CONV_LIB_FUNC, API_BLAS, UNSUPPORTED}},
|
||||
};
|
||||
|
||||
@@ -29,6 +29,8 @@ const std::map<llvm::StringRef, hipCounter> CUDA_BLAS_TYPE_NAME_MAP{
|
||||
{"CUBLAS_OP_N", {"HIPBLAS_OP_N", "rocblas_operation_none", CONV_NUMERIC_LITERAL, API_BLAS}},
|
||||
{"CUBLAS_OP_T", {"HIPBLAS_OP_T", "rocblas_operation_transpose", CONV_NUMERIC_LITERAL, API_BLAS}},
|
||||
{"CUBLAS_OP_C", {"HIPBLAS_OP_C", "rocblas_operation_conjugate_transpose", CONV_NUMERIC_LITERAL, API_BLAS}},
|
||||
{"CUBLAS_OP_HERMITAN", {"HIPBLAS_OP_C", "rocblas_operation_conjugate_transpose", CONV_NUMERIC_LITERAL, API_BLAS}},
|
||||
{"CUBLAS_OP_CONJG", {"HIPBLAS_OP_CONJG", "rocblas_operation_conjugate", CONV_NUMERIC_LITERAL, API_BLAS, UNSUPPORTED}},
|
||||
|
||||
// Blas statuses
|
||||
{"cublasStatus", {"hipblasStatus_t", "rocblas_status", CONV_TYPE, API_BLAS}},
|
||||
@@ -48,6 +50,7 @@ const std::map<llvm::StringRef, hipCounter> CUDA_BLAS_TYPE_NAME_MAP{
|
||||
{"cublasFillMode_t", {"hipblasFillMode_t", "rocblas_fill", CONV_TYPE, API_BLAS}},
|
||||
{"CUBLAS_FILL_MODE_LOWER", {"HIPBLAS_FILL_MODE_LOWER", "rocblas_fill_lower", CONV_NUMERIC_LITERAL, API_BLAS}},
|
||||
{"CUBLAS_FILL_MODE_UPPER", {"HIPBLAS_FILL_MODE_UPPER", "rocblas_fill_upper", CONV_NUMERIC_LITERAL, API_BLAS}},
|
||||
{"CUBLAS_FILL_MODE_FULL", {"HIPBLAS_FILL_MODE_FULL", "rocblas_fill_full", CONV_NUMERIC_LITERAL, API_BLAS}},
|
||||
|
||||
// Blas Diag Types
|
||||
{"cublasDiagType_t", {"hipblasDiagType_t", "rocblas_diagonal", CONV_TYPE, API_BLAS}},
|
||||
|
||||
مرجع در شماره جدید
Block a user