|
5 | 5 |
|
6 | 6 | from .constants import (API_BLAS, API_C10, API_CAFFE2, API_DRIVER, API_FFT,
|
7 | 7 | API_PYTORCH, API_PYT_EXT, API_RAND, API_ROCTX, API_RTC, API_RUNTIME,
|
8 |
| - API_SPARSE, API_SOLVER, CONV_CACHE, CONV_CONTEXT, CONV_D3D9, |
| 8 | + API_SPARSE, API_SOLVER, API_ROCMSMI, CONV_CACHE, CONV_CONTEXT, CONV_D3D9, |
9 | 9 | CONV_D3D10, CONV_D3D11, CONV_DEF, CONV_DEVICE,
|
10 | 10 | CONV_DEVICE_FUNC, CONV_EGL, CONV_ERROR, CONV_EVENT,
|
11 | 11 | CONV_EXEC, CONV_GL, CONV_GRAPHICS, CONV_INCLUDE,
|
|
79 | 79 | [
|
80 | 80 | ("CUresult", ("hipError_t", CONV_TYPE, API_DRIVER)),
|
81 | 81 | ("cudaError_t", ("hipError_t", CONV_TYPE, API_RUNTIME)),
|
| 82 | + ("cudaError", ("hipError_t", CONV_TYPE, API_RUNTIME)), |
82 | 83 | (
|
83 | 84 | "CUDA_ARRAY3D_DESCRIPTOR",
|
84 | 85 | ("HIP_ARRAY3D_DESCRIPTOR", CONV_TYPE, API_DRIVER, HIP_UNSUPPORTED),
|
|
128 | 129 | ("CUdevice", ("hipDevice_t", CONV_TYPE, API_DRIVER)),
|
129 | 130 | ("CUdevice_attribute_enum", ("hipDeviceAttribute_t", CONV_TYPE, API_DRIVER)),
|
130 | 131 | ("CUdevice_attribute", ("hipDeviceAttribute_t", CONV_TYPE, API_DRIVER)),
|
| 132 | + ("CUpointer_attribute", ("hipPointer_attribute", CONV_TYPE, API_DRIVER)), |
| 133 | + ("CU_POINTER_ATTRIBUTE_DEVICE_ORDINAL", ("HIP_POINTER_ATTRIBUTE_DEVICE_ORDINAL", CONV_TYPE, API_DRIVER)), |
| 134 | + ("CU_POINTER_ATTRIBUTE_BUFFER_ID", ("HIP_POINTER_ATTRIBUTE_BUFFER_ID", CONV_TYPE, API_DRIVER)), |
131 | 135 | ("CUdeviceptr", ("hipDeviceptr_t", CONV_TYPE, API_DRIVER)),
|
132 | 136 | ("CUarray_st", ("hipArray", CONV_TYPE, API_DRIVER)),
|
133 | 137 | ("CUarray", ("hipArray *", CONV_TYPE, API_DRIVER)),
|
|
317 | 321 | ),
|
318 | 322 | ("cudaArrayCubemap", ("hipArrayCubemap", CONV_MEM, API_RUNTIME)),
|
319 | 323 | ("cudaArrayTextureGather", ("hipArrayTextureGather", CONV_MEM, API_RUNTIME)),
|
320 |
| - ("cudaMemoryAdvise", ("hipMemAdvise", CONV_TYPE, API_RUNTIME, HIP_UNSUPPORTED)), |
| 324 | + ("cudaMemoryAdvise", ("hipMemoryAdvise", CONV_TYPE, API_RUNTIME, HIP_UNSUPPORTED)), |
321 | 325 | (
|
322 | 326 | "cudaMemRangeAttribute",
|
323 | 327 | ("hipMemRangeAttribute", CONV_TYPE, API_RUNTIME, HIP_UNSUPPORTED),
|
|
563 | 567 | ("curandStateXORWOW_t", ("hiprandStateXORWOW_t", CONV_TYPE, API_RAND)),
|
564 | 568 | ("curandState_t", ("hiprandState_t", CONV_TYPE, API_RAND)),
|
565 | 569 | ("curandState", ("hiprandState_t", CONV_TYPE, API_RAND)),
|
| 570 | + ("CUuuid", ("hipUUID", CONV_TYPE, API_RUNTIME)), |
566 | 571 | ]
|
567 | 572 | )
|
568 | 573 |
|
|
583 | 588 | ("hip/hip_runtime.h", CONV_INCLUDE_CUDA_MAIN_H, API_RUNTIME),
|
584 | 589 | ),
|
585 | 590 | ("cuda_runtime_api.h", ("hip/hip_runtime_api.h", CONV_INCLUDE, API_RUNTIME)),
|
| 591 | + ("cuda_profiler_api.h", ("hip/hip_runtime_api.h", CONV_INCLUDE, API_RUNTIME)), |
586 | 592 | (
|
587 | 593 | "channel_descriptor.h",
|
588 | 594 | ("hip/channel_descriptor.h", CONV_INCLUDE, API_RUNTIME),
|
|
629 | 635 | ("cub/util_allocator.cuh", ("hipcub/hipcub.hpp", CONV_INCLUDE, API_BLAS)),
|
630 | 636 | ("cub/block/block_reduce.cuh", ("hipcub/hipcub.hpp", CONV_INCLUDE, API_BLAS)),
|
631 | 637 | ("cub/cub.cuh", ("hipcub/hipcub.hpp", CONV_INCLUDE, API_BLAS)),
|
| 638 | + ("cub/device/device_run_length_encode.cuh", ("hipcub/hipcub.hpp", CONV_INCLUDE, API_BLAS)), |
632 | 639 | ("cub/block/block_load.cuh", ("hipcub/hipcub.hpp", CONV_INCLUDE, API_BLAS)),
|
633 | 640 | ("cub/device/device_radix_sort.cuh", ("hipcub/hipcub.hpp", CONV_INCLUDE, API_BLAS)),
|
634 | 641 | ("cub/device/device_reduce.cuh", ("hipcub/hipcub.hpp", CONV_INCLUDE, API_BLAS)),
|
635 | 642 | ("cub/device/device_scan.cuh", ("hipcub/hipcub.hpp", CONV_INCLUDE, API_BLAS)),
|
| 643 | + ("cub/device/device_select.cuh", ("hipcub/hipcub.hpp", CONV_INCLUDE, API_BLAS)), |
636 | 644 | ("nvToolsExt.h", ("roctracer/roctx.h", CONV_INCLUDE, API_ROCTX)),
|
| 645 | + ("nvml.h", ("rocm_smi/rocm_smi.h", CONV_INCLUDE, API_ROCMSMI)), |
637 | 646 | ("tensorpipe/tensorpipe_cuda.h", ("tensorpipe/tensorpipe_hip.h", CONV_INCLUDE, API_PYT_EXT)),
|
638 | 647 | ]
|
639 | 648 | )
|
|
1352 | 1361 | ("CU_LAUNCH_PARAM_END", ("HIP_LAUNCH_PARAM_END", CONV_TYPE, API_DRIVER)),
|
1353 | 1362 | (
|
1354 | 1363 | "CU_IPC_HANDLE_SIZE",
|
1355 |
| - ("HIP_LAUNCH_PARAM_END", CONV_TYPE, API_DRIVER, HIP_UNSUPPORTED), |
| 1364 | + ("HIP_IPC_HANDLE_SIZE", CONV_TYPE, API_DRIVER, HIP_UNSUPPORTED), |
1356 | 1365 | ),
|
1357 | 1366 | (
|
1358 | 1367 | "CU_MEMHOSTALLOC_DEVICEMAP",
|
|
2760 | 2769 | ),
|
2761 | 2770 | (
|
2762 | 2771 | "cuGetErrorName",
|
2763 |
| - ("hipGetErrorName___", CONV_ERROR, API_DRIVER, HIP_UNSUPPORTED), |
| 2772 | + ("hipGetErrorName", CONV_ERROR, API_DRIVER, HIP_UNSUPPORTED), |
2764 | 2773 | ),
|
2765 | 2774 | (
|
2766 | 2775 | "cuGetErrorString",
|
2767 |
| - ("hipGetErrorString___", CONV_ERROR, API_DRIVER, HIP_UNSUPPORTED), |
| 2776 | + ("hipGetErrorString", CONV_ERROR, API_DRIVER, HIP_UNSUPPORTED), |
2768 | 2777 | ),
|
2769 | 2778 | ("cuInit", ("hipInit", CONV_INIT, API_DRIVER)),
|
2770 | 2779 | ("cuDriverGetVersion", ("hipDriverGetVersion", CONV_VERSION, API_DRIVER)),
|
| 2780 | + ("cuCtxCreate", ("hipCtxCreate", CONV_CONTEXT, API_DRIVER)), |
2771 | 2781 | ("cuCtxCreate_v2", ("hipCtxCreate", CONV_CONTEXT, API_DRIVER)),
|
| 2782 | + ("cuCtxDestroy", ("hipCtxDestroy", CONV_CONTEXT, API_DRIVER)), |
2772 | 2783 | ("cuCtxDestroy_v2", ("hipCtxDestroy", CONV_CONTEXT, API_DRIVER)),
|
2773 | 2784 | ("cuCtxGetApiVersion", ("hipCtxGetApiVersion", CONV_CONTEXT, API_DRIVER)),
|
2774 | 2785 | ("cuCtxGetCacheConfig", ("hipCtxGetCacheConfig", CONV_CONTEXT, API_DRIVER)),
|
2775 | 2786 | ("cuCtxGetCurrent", ("hipCtxGetCurrent", CONV_CONTEXT, API_DRIVER)),
|
2776 | 2787 | ("cuCtxGetDevice", ("hipCtxGetDevice", CONV_CONTEXT, API_DRIVER)),
|
2777 | 2788 | ("cuCtxGetFlags", ("hipCtxGetFlags", CONV_CONTEXT, API_DRIVER)),
|
| 2789 | + ("cuDeviceGetUuid", ("hipDeviceGetUuid", CONV_CONTEXT, API_DRIVER)), |
2778 | 2790 | (
|
2779 | 2791 | "cuCtxGetLimit",
|
2780 | 2792 | ("hipCtxGetLimit", CONV_CONTEXT, API_DRIVER, HIP_UNSUPPORTED),
|
|
2896 | 2908 | ("CU_EVENT_DISABLE_TIMING", ("hipEventDisableTiming", CONV_EVENT, API_DRIVER)),
|
2897 | 2909 | ("CU_EVENT_INTERPROCESS", ("hipEventInterprocess", CONV_EVENT, API_DRIVER)),
|
2898 | 2910 | ("cuEventCreate", ("hipEventCreate", CONV_EVENT, API_DRIVER)),
|
| 2911 | + ("cuEventDestroy", ("hipEventDestroy", CONV_EVENT, API_DRIVER)), |
2899 | 2912 | ("cuEventDestroy_v2", ("hipEventDestroy", CONV_EVENT, API_DRIVER)),
|
2900 | 2913 | ("cuEventElapsedTime", ("hipEventElapsedTime", CONV_EVENT, API_DRIVER)),
|
2901 | 2914 | ("cuEventQuery", ("hipEventQuery", CONV_EVENT, API_DRIVER)),
|
|
2979 | 2992 | "cuStreamCreateWithPriority",
|
2980 | 2993 | ("hipStreamCreateWithPriority", CONV_STREAM, API_DRIVER, HIP_UNSUPPORTED),
|
2981 | 2994 | ),
|
| 2995 | + ("cuStreamDestroy", ("hipStreamDestroy", CONV_STREAM, API_DRIVER)), |
2982 | 2996 | ("cuStreamDestroy_v2", ("hipStreamDestroy", CONV_STREAM, API_DRIVER)),
|
2983 | 2997 | ("cuStreamGetFlags", ("hipStreamGetFlags", CONV_STREAM, API_DRIVER)),
|
2984 | 2998 | (
|
|
3089 | 3103 | ("hipMemcpyPeerAsync__", CONV_MEM, API_DRIVER, HIP_UNSUPPORTED),
|
3090 | 3104 | ),
|
3091 | 3105 | ("cuMemcpyPeer", ("hipMemcpyPeer__", CONV_MEM, API_DRIVER, HIP_UNSUPPORTED)),
|
| 3106 | + ("cuMemFree", ("hipFree", CONV_MEM, API_DRIVER)), |
3092 | 3107 | ("cuMemFree_v2", ("hipFree", CONV_MEM, API_DRIVER)),
|
3093 | 3108 | ("cuMemFreeHost", ("hipHostFree", CONV_MEM, API_DRIVER)),
|
3094 | 3109 | (
|
|
3163 | 3178 | "cuPointerGetAttribute",
|
3164 | 3179 | ("hipPointerGetAttribute", CONV_MEM, API_DRIVER, HIP_UNSUPPORTED),
|
3165 | 3180 | ),
|
| 3181 | + ( |
| 3182 | + "cuMemGetAddressRange_v2", |
| 3183 | + ("hipMemGetAddressRange", CONV_MEM, API_DRIVER), |
| 3184 | + ), |
3166 | 3185 | (
|
3167 | 3186 | "cuPointerGetAttributes",
|
3168 | 3187 | ("hipPointerGetAttributes", CONV_MEM, API_DRIVER, HIP_UNSUPPORTED),
|
|
4921 | 4940 | "cudaDeviceGetCacheConfig",
|
4922 | 4941 | ("hipDeviceGetCacheConfig", CONV_CACHE, API_RUNTIME),
|
4923 | 4942 | ),
|
| 4943 | + ( |
| 4944 | + "cudaFuncAttributes", |
| 4945 | + ("hipFuncAttributes", CONV_TYPE, API_RUNTIME), |
| 4946 | + ), |
| 4947 | + ( |
| 4948 | + "cudaFuncAttributeMaxDynamicSharedMemorySize", |
| 4949 | + ("hipFuncAttributeMaxDynamicSharedMemorySize", CONV_TYPE, API_RUNTIME), |
| 4950 | + ), |
| 4951 | + ( |
| 4952 | + "cudaFuncAttributePreferredSharedMemoryCarveout", |
| 4953 | + ("hipFuncAttributePreferredSharedMemoryCarveout", CONV_TYPE, API_RUNTIME), |
| 4954 | + ), |
| 4955 | + ( |
| 4956 | + "cudaFuncSetAttribute", |
| 4957 | + ("hipFuncSetAttribute", CONV_EXEC, API_RUNTIME), |
| 4958 | + ), |
4924 | 4959 | ("cudaFuncSetCacheConfig", ("hipFuncSetCacheConfig", CONV_CACHE, API_RUNTIME)),
|
4925 | 4960 | (
|
4926 | 4961 | "cudaFuncCachePreferNone",
|
|
4960 | 4995 | ("hipConfigureCall", CONV_EXEC, API_RUNTIME, HIP_UNSUPPORTED),
|
4961 | 4996 | ),
|
4962 | 4997 | ("cudaLaunch", ("hipLaunch", CONV_EXEC, API_RUNTIME, HIP_UNSUPPORTED)),
|
| 4998 | + ( |
| 4999 | + "cudaLaunchCooperativeKernel", |
| 5000 | + ("hipLaunchCooperativeKernel", CONV_EXEC, API_RUNTIME), |
| 5001 | + ), |
4963 | 5002 | (
|
4964 | 5003 | "cudaSetupArgument",
|
4965 | 5004 | ("hipSetupArgument", CONV_EXEC, API_RUNTIME, HIP_UNSUPPORTED),
|
|
6520 | 6559 | "cublasZgetriBatched",
|
6521 | 6560 | ("hipblasZgetriBatched", CONV_MATH_FUNC, API_BLAS, HIP_UNSUPPORTED),
|
6522 | 6561 | ),
|
| 6562 | + ( |
| 6563 | + "cublasSgetriBatched", |
| 6564 | + ("rocblas_sgetri_batched", CONV_MATH_FUNC, API_BLAS, HIP_UNSUPPORTED), |
| 6565 | + ), |
| 6566 | + ( |
| 6567 | + "cublasDgetriBatched", |
| 6568 | + ("rocblas_dgetri_batched", CONV_MATH_FUNC, API_BLAS, HIP_UNSUPPORTED), |
| 6569 | + ), |
| 6570 | + ( |
| 6571 | + "cublasCgetriBatched", |
| 6572 | + ("rocblas_cgetri_batched", CONV_MATH_FUNC, API_BLAS, HIP_UNSUPPORTED), |
| 6573 | + ), |
| 6574 | + ( |
| 6575 | + "cublasZgetriBatched", |
| 6576 | + ("rocblas_zgetri_batched", CONV_MATH_FUNC, API_BLAS, HIP_UNSUPPORTED), |
| 6577 | + ), |
6523 | 6578 | (
|
6524 | 6579 | "cublasSgetrsBatched",
|
6525 | 6580 | ("hipblasSgetrsBatched", CONV_MATH_FUNC, API_BLAS, HIP_UNSUPPORTED),
|
|
7762 | 7817 | ("nvrtcGetPTX", ("hiprtcGetCode", CONV_JIT, API_RTC)),
|
7763 | 7818 | ("nvrtcGetPTXSize", ("hiprtcGetCodeSize", CONV_JIT, API_RTC)),
|
7764 | 7819 | ("thrust::cuda", ("thrust::hip", CONV_MATH_FUNC, API_BLAS)),
|
| 7820 | + ( |
| 7821 | + "cudaCpuDeviceId", |
| 7822 | + ("hipCpuDeviceId", CONV_TYPE, API_RUNTIME, HIP_UNSUPPORTED), |
| 7823 | + ), |
7765 | 7824 | # The caffe2 directory does a string match; pytorch does a word-boundary match.
|
7766 | 7825 | # Patterns such as 'cub::' will not match for pytorch.
|
7767 | 7826 | # We list all current uses of cub symbols for this reason.
|
|
7793 | 7852 | ("nvtxRangePop", ("roctxRangePop", CONV_OTHER, API_ROCTX)),
|
7794 | 7853 | ("nvtxRangeStartA", ("roctxRangeStartA", CONV_OTHER, API_ROCTX)),
|
7795 | 7854 | ("nvtxRangeEnd", ("roctxRangeStop", CONV_OTHER, API_ROCTX)),
|
| 7855 | + ("nvmlReturn_t", ("rsmi_status_t", CONV_OTHER, API_ROCMSMI)), |
| 7856 | + ("NVML_SUCCESS", ("RSMI_STATUS_SUCCESS", CONV_OTHER, API_ROCMSMI)), |
| 7857 | + ("NVML_P2P_CAPS_INDEX_READ", ("RSMI_STATUS_SUCCESS", CONV_OTHER, API_ROCMSMI)), |
| 7858 | + ("NVML_P2P_STATUS_OK", ("RSMI_STATUS_SUCCESS", CONV_OTHER, API_ROCMSMI)), |
| 7859 | + ("NVML_ERROR_INSUFFICIENT_SIZE", ("RSMI_STATUS_INSUFFICIENT_SIZE", CONV_OTHER, API_ROCMSMI)), |
| 7860 | + ("nvmlDevice_t", ("uint32_t", CONV_OTHER, API_ROCMSMI)), |
| 7861 | + ("nvmlGpuP2PStatus_t", ("bool", CONV_OTHER, API_ROCMSMI)), |
| 7862 | + ("nvmlProcessInfo_t", ("rsmi_process_info_t", CONV_OTHER, API_ROCMSMI)), |
| 7863 | + ("nvmlGpuP2PCapsIndex_t", ("uint32_t", CONV_OTHER, API_ROCMSMI)), |
7796 | 7864 | ]
|
7797 | 7865 | )
|
7798 | 7866 |
|
|
7964 | 8032 | ("CUSPARSE_MM_ALG_DEFAULT", ("HIPSPARSE_MM_ALG_DEFAULT", CONV_NUMERIC_LITERAL, API_SPARSE)),
|
7965 | 8033 | ("CUSPARSE_SPMM_COO_ALG1", ("HIPSPARSE_SPMM_COO_ALG1", CONV_NUMERIC_LITERAL, API_SPARSE)),
|
7966 | 8034 | ("CUSPARSE_SPMM_COO_ALG2", ("HIPSPARSE_SPMM_COO_ALG2", CONV_NUMERIC_LITERAL, API_SPARSE)),
|
| 8035 | + ("CUSPARSE_COOMM_ALG1", ("HIPSPARSE_COOMM_ALG1", CONV_NUMERIC_LITERAL, API_SPARSE)), |
| 8036 | + ("CUSPARSE_COOMM_ALG2", ("HIPSPARSE_COOMM_ALG2", CONV_NUMERIC_LITERAL, API_SPARSE)), |
| 8037 | + ("CUSPARSE_COOMM_ALG3", ("HIPSPARSE_COOMM_ALG3", CONV_NUMERIC_LITERAL, API_SPARSE)), |
7967 | 8038 | ("CUSPARSE_COOMV_ALG", ("HIPSPARSE_COOMV_ALG", CONV_NUMERIC_LITERAL, API_SPARSE)),
|
| 8039 | + ("CUSPARSE_CSRMM_ALG1", ("HIPSPARSE_CSRMM_ALG1", CONV_NUMERIC_LITERAL, API_SPARSE)), |
7968 | 8040 | ("CUSPARSE_SPMM_CSR_ALG1", ("HIPSPARSE_CSRMM_ALG1", CONV_NUMERIC_LITERAL, API_SPARSE)),
|
7969 | 8041 | ("CUSPARSE_SPGEMM_DEFAULT", ("HIPSPARSE_SPGEMM_DEFAULT", CONV_NUMERIC_LITERAL, API_SPARSE)),
|
7970 | 8042 | ("CUSPARSE_SDDMM_ALG_DEFAULT", ("HIPSPARSE_SDDMM_ALG_DEFAULT", CONV_NUMERIC_LITERAL, API_SPARSE)),
|
|
8342 | 8414 | "setCurrentCUDAStream",
|
8343 | 8415 | ("setCurrentHIPStreamMasqueradingAsCUDA", API_PYTORCH),
|
8344 | 8416 | ),
|
| 8417 | + ( |
| 8418 | + "ATen/cudnn/Handle.h", |
| 8419 | + ("ATen/miopen/Handle.h", API_PYTORCH), |
| 8420 | + ), |
8345 | 8421 | # TODO: Undo this special-case; see the header for motivation behind this
|
8346 | 8422 | # hack. It's VERY important this is only applied to PyTorch HIPify.
|
8347 | 8423 | (
|
|
0 commit comments