diff --git a/CMakeLists.txt b/CMakeLists.txt index 1b51a16e..2083365d 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -292,6 +292,7 @@ if(HIPIFY_CLANG_TESTS OR HIPIFY_CLANG_TESTS_ONLY) set(CUDA_TOOLKIT_ROOT_DIR "" CACHE PATH "Path to CUDA Toolkit to use in hipify-clang unit testing") set(CUDA_SDK_ROOT_DIR "" CACHE PATH "Path to CUDA Toolkit Samples") set(CUDA_DNN_ROOT_DIR "" CACHE PATH "Path to cuDNN") + set(CUDA_TENSOR_ROOT_DIR "" CACHE PATH "Path to cuTENSOR") set(CUDA_CUB_ROOT_DIR "" CACHE PATH "Path to CUB") if(NOT CUDA_TOOLKIT_ROOT_DIR STREQUAL "" AND NOT CUDA_TOOLKIT_ROOT_DIR MATCHES "OFF") @@ -308,6 +309,7 @@ if(HIPIFY_CLANG_TESTS OR HIPIFY_CLANG_TESTS_ONLY) message(STATUS " - CUDA Toolkit path : ${CUDA_TOOLKIT_ROOT_DIR}") message(STATUS " - CUDA Samples path : ${CUDA_SDK_ROOT_DIR}") message(STATUS " - cuDNN path : ${CUDA_DNN_ROOT_DIR}") + message(STATUS " - cuTENSOR path : ${CUDA_TENSOR_ROOT_DIR}") message(STATUS " - CUB path : ${CUDA_CUB_ROOT_DIR}") if(${CMAKE_VERSION} VERSION_LESS "3.27.0") @@ -346,6 +348,10 @@ if(HIPIFY_CLANG_TESTS OR HIPIFY_CLANG_TESTS_ONLY) set(CUDA_DNN_ROOT_DIR OFF) endif() + if(CUDA_TENSOR_ROOT_DIR STREQUAL "") + set(CUDA_TENSOR_ROOT_DIR OFF) + endif() + if(CUDA_CUB_ROOT_DIR STREQUAL "") if(CUDA_VERSION VERSION_GREATER_EQUAL "11.0") if(WIN32 OR (UNIX AND CUDA_VERSION VERSION_LESS "11.4" OR CUDA_VERSION VERSION_GREATER_EQUAL "11.6")) @@ -362,6 +368,7 @@ if(HIPIFY_CLANG_TESTS OR HIPIFY_CLANG_TESTS_ONLY) message(STATUS " - CUDA Toolkit path : ${CUDA_TOOLKIT_ROOT_DIR}") message(STATUS " - CUDA Samples path : ${CUDA_SDK_ROOT_DIR}") message(STATUS " - cuDNN path : ${CUDA_DNN_ROOT_DIR}") + message(STATUS " - cuTENSOR path : ${CUDA_TENSOR_ROOT_DIR}") message(STATUS " - CUB path : ${CUDA_CUB_ROOT_DIR}") if((CUDA_VERSION VERSION_LESS "7.0") OR (LLVM_PACKAGE_VERSION VERSION_LESS "3.8") OR diff --git a/README.md b/README.md index fbf25446..6674eac8 100644 --- a/README.md +++ b/README.md @@ -5,8 +5,7 @@ HIPIFY is a set of tools that you can use to automatically translate CUDA source ## Documentation -Documentation for HIPIFY is available at -[https://rocmdocs.amd.com/projects/HIPIFY/en/latest/](https://rocmdocs.amd.com/projects/HIPIFY/en/latest/). +The published documentation is available at [HIPIFY](https://rocm.docs.amd.com/projects/HIPIFY/en/latest/index.html) in an organized, easy-to-read format, with search and a table of contents. The documentation source files reside in the `HIPIFY/docs` folder of this GitHub repository. As with all ROCm projects, the documentation is open source. For more information on contributing to the documentation, see [Contribute to ROCm documentation](https://rocm.docs.amd.com/en/latest/contribute/contributing.html). To build our documentation locally, run the following code. diff --git a/bin/hipify-perl b/bin/hipify-perl index 3ab7d25a..06181010 100755 --- a/bin/hipify-perl +++ b/bin/hipify-perl @@ -42,6 +42,7 @@ my $USAGE =< \$hip_kernel_execution_syntax # Transform CUDA kernel launch syntax to a regular HIP function call (overrides "--cuda-kernel-execution-syntax") , "inplace" => \$inplace # Backup the input file in .prehip file, modify the input file inplace , "no-output" => \$no_output # Don't write any translated output to stdout + , "miopen" => \$miopen # Translate cuDNN to MIOpen instead of hipDNN where it is possible , "o=s" => \$hipFileName # Output filename , "print-stats" => \$print_stats # Print translation statistics , "quiet-warnings" => \$quiet_warnings # Don't print warnings on unknown CUDA identifiers @@ -900,6 +902,10 @@ my %deprecated_funcs = ( "bsrsm2Info" => "12.2", "bsrilu02Info_t" => "12.2", "bsrilu02Info" => "12.2", + "__shfl_xor" => "9.0", + "__shfl_up" => "9.0", + "__shfl_down" => "9.0", + "__shfl" => "9.0", "CU_JIT_REFERENCED_VARIABLE_NAMES" => "12.0", "CU_JIT_REFERENCED_VARIABLE_COUNT" => "12.0", "CU_JIT_REFERENCED_KERNEL_NAMES" => "12.0", @@ -1392,29 +1398,21 @@ my %removed_funcs = ( ); my %experimental_funcs = ( - "cusolverDnXpotrs" => "6.3.0", - "cusolverDnXpotrf_bufferSize" => "6.3.0", - "cusolverDnXpotrf" => "6.3.0", - "cusolverDnXgeqrf_bufferSize" => "6.3.0", - "cusolverDnXgeqrf" => "6.3.0", - "cusolverDnSetDeterministicMode" => "6.3.0", - "cusolverDnGetDeterministicMode" => "6.3.0", - "cudaGraphNodeSetParams" => "6.3.0", - "cudaGraphExecNodeSetParams" => "6.3.0", - "cudaGraphExecGetFlags" => "6.3.0", - "cublasZgemmStridedBatched_64" => "6.3.0", - "cublasSgemmStridedBatched_64" => "6.3.0", - "cublasHgemmStridedBatched_64" => "6.3.0", - "cublasDgemmStridedBatched_64" => "6.3.0", - "cublasCgemmStridedBatched_64" => "6.3.0", - "cuGraphNodeSetParams" => "6.3.0", - "cuGraphMemcpyNodeSetParams" => "6.3.0", - "cuGraphMemcpyNodeGetParams" => "6.3.0", - "cuGraphExecNodeSetParams" => "6.3.0", - "cuGraphExecMemsetNodeSetParams" => "6.3.0", - "cuGraphExecMemcpyNodeSetParams" => "6.3.0", - "cuGraphExecGetFlags" => "6.3.0", - "cuGraphAddMemFreeNode" => "6.3.0" + "cuStreamBatchMemOp_v2" => "6.4.0", + "cuStreamBatchMemOp" => "6.4.0", + "cuGraphExecBatchMemOpNodeSetParams" => "6.4.0", + "cuGraphBatchMemOpNodeSetParams" => "6.4.0", + "cuGraphBatchMemOpNodeGetParams" => "6.4.0", + "cuGraphAddBatchMemOpNode" => "6.4.0", + "CUstreamBatchMemOpParams_v1" => "6.4.0", + "CUstreamBatchMemOpParams_union" => "6.4.0", + "CUstreamBatchMemOpParams" => "6.4.0", + "CUDA_BATCH_MEM_OP_NODE_PARAMS_v2_st" => "6.4.0", + "CUDA_BATCH_MEM_OP_NODE_PARAMS_v2" => "6.4.0", + "CUDA_BATCH_MEM_OP_NODE_PARAMS_v1_st" => "6.4.0", + "CUDA_BATCH_MEM_OP_NODE_PARAMS_v1" => "6.4.0", + "CUDA_BATCH_MEM_OP_NODE_PARAMS_st" => "6.4.0", + "CUDA_BATCH_MEM_OP_NODE_PARAMS" => "6.4.0" ); $print_stats = 1 if $examine; @@ -1552,29 +1550,21 @@ sub subst { } sub experimentalSubstitutions { - subst("cuGraphAddMemFreeNode", "hipDrvGraphAddMemFreeNode", "graph"); - subst("cuGraphExecGetFlags", "hipGraphExecGetFlags", "graph"); - subst("cuGraphExecMemcpyNodeSetParams", "hipDrvGraphExecMemcpyNodeSetParams", "graph"); - subst("cuGraphExecMemsetNodeSetParams", "hipDrvGraphExecMemsetNodeSetParams", "graph"); - subst("cuGraphExecNodeSetParams", "hipGraphExecNodeSetParams", "graph"); - subst("cuGraphMemcpyNodeGetParams", "hipDrvGraphMemcpyNodeGetParams", "graph"); - subst("cuGraphMemcpyNodeSetParams", "hipDrvGraphMemcpyNodeSetParams", "graph"); - subst("cuGraphNodeSetParams", "hipGraphNodeSetParams", "graph"); - subst("cudaGraphExecGetFlags", "hipGraphExecGetFlags", "graph"); - subst("cudaGraphExecNodeSetParams", "hipGraphExecNodeSetParams", "graph"); - subst("cudaGraphNodeSetParams", "hipGraphNodeSetParams", "graph"); - subst("cublasCgemmStridedBatched_64", "hipblasCgemmStridedBatched_v2_64", "library"); - subst("cublasDgemmStridedBatched_64", "hipblasDgemmStridedBatched_64", "library"); - subst("cublasHgemmStridedBatched_64", "hipblasHgemmStridedBatched_64", "library"); - subst("cublasSgemmStridedBatched_64", "hipblasSgemmStridedBatched_64", "library"); - subst("cublasZgemmStridedBatched_64", "hipblasZgemmStridedBatched_v2_64", "library"); - subst("cusolverDnGetDeterministicMode", "hipsolverDnGetDeterministicMode", "library"); - subst("cusolverDnSetDeterministicMode", "hipsolverDnSetDeterministicMode", "library"); - subst("cusolverDnXgeqrf", "hipsolverDnXgeqrf", "library"); - subst("cusolverDnXgeqrf_bufferSize", "hipsolverDnXgeqrf_bufferSize", "library"); - subst("cusolverDnXpotrf", "hipsolverDnXpotrf", "library"); - subst("cusolverDnXpotrf_bufferSize", "hipsolverDnXpotrf_bufferSize", "library"); - subst("cusolverDnXpotrs", "hipsolverDnXpotrs", "library"); + subst("cuStreamBatchMemOp", "hipStreamBatchMemOp", "stream_memory"); + subst("cuStreamBatchMemOp_v2", "hipStreamBatchMemOp", "stream_memory"); + subst("cuGraphAddBatchMemOpNode", "hipGraphAddBatchMemOpNode", "graph"); + subst("cuGraphBatchMemOpNodeGetParams", "hipGraphBatchMemOpNodeGetParams", "graph"); + subst("cuGraphBatchMemOpNodeSetParams", "hipGraphBatchMemOpNodeSetParams", "graph"); + subst("cuGraphExecBatchMemOpNodeSetParams", "hipGraphExecBatchMemOpNodeSetParams", "graph"); + subst("CUDA_BATCH_MEM_OP_NODE_PARAMS", "hipBatchMemOpNodeParams", "type"); + subst("CUDA_BATCH_MEM_OP_NODE_PARAMS_st", "hipBatchMemOpNodeParams", "type"); + subst("CUDA_BATCH_MEM_OP_NODE_PARAMS_v1", "hipBatchMemOpNodeParams", "type"); + subst("CUDA_BATCH_MEM_OP_NODE_PARAMS_v1_st", "hipBatchMemOpNodeParams", "type"); + subst("CUDA_BATCH_MEM_OP_NODE_PARAMS_v2", "hipBatchMemOpNodeParams", "type"); + subst("CUDA_BATCH_MEM_OP_NODE_PARAMS_v2_st", "hipBatchMemOpNodeParams", "type"); + subst("CUstreamBatchMemOpParams", "hipStreamBatchMemOpParams", "type"); + subst("CUstreamBatchMemOpParams_union", "hipStreamBatchMemOpParams_union", "type"); + subst("CUstreamBatchMemOpParams_v1", "hipStreamBatchMemOpParams", "type"); } sub rocSubstitutions { @@ -2321,91 +2311,6 @@ sub rocSubstitutions { subst("cublasZtrsv_64", "rocblas_ztrsv_64", "library"); subst("cublasZtrsv_v2", "rocblas_ztrsv", "library"); subst("cublasZtrsv_v2_64", "rocblas_ztrsv_64", "library"); - subst("cudnnActivationBackward", "miopenActivationBackward", "library"); - subst("cudnnActivationForward", "miopenActivationForward", "library"); - subst("cudnnBackendCreateDescriptor", "miopenBackendCreateDescriptor", "library"); - subst("cudnnBackendDestroyDescriptor", "miopenBackendDestroyDescriptor", "library"); - subst("cudnnBackendExecute", "miopenBackendExecute", "library"); - subst("cudnnBackendFinalize", "miopenBackendFinalize", "library"); - subst("cudnnBackendGetAttribute", "miopenBackendGetAttribute", "library"); - subst("cudnnBackendSetAttribute", "miopenBackendSetAttribute", "library"); - subst("cudnnBatchNormalizationBackward", "miopenBatchNormalizationBackward", "library"); - subst("cudnnBatchNormalizationForwardInference", "miopenBatchNormalizationForwardInference", "library"); - subst("cudnnBatchNormalizationForwardTraining", "miopenBatchNormalizationForwardTraining", "library"); - subst("cudnnCTCLoss", "miopenCTCLoss", "library"); - subst("cudnnConvolutionBackwardBias", "miopenConvolutionBackwardBias", "library"); - subst("cudnnConvolutionBackwardData", "miopenConvolutionBackwardData", "library"); - subst("cudnnConvolutionBiasActivationForward", "miopenConvolutionBiasActivationForward", "library"); - subst("cudnnConvolutionForward", "miopenConvolutionForward", "library"); - subst("cudnnCreate", "miopenCreate", "library"); - subst("cudnnCreateActivationDescriptor", "miopenCreateActivationDescriptor", "library"); - subst("cudnnCreateCTCLossDescriptor", "miopenCreateCTCLossDescriptor", "library"); - subst("cudnnCreateConvolutionDescriptor", "miopenCreateConvolutionDescriptor", "library"); - subst("cudnnCreateDropoutDescriptor", "miopenCreateDropoutDescriptor", "library"); - subst("cudnnCreateLRNDescriptor", "miopenCreateLRNDescriptor", "library"); - subst("cudnnCreatePoolingDescriptor", "miopenCreatePoolingDescriptor", "library"); - subst("cudnnCreateRNNDescriptor", "miopenCreateRNNDescriptor", "library"); - subst("cudnnCreateReduceTensorDescriptor", "miopenCreateReduceTensorDescriptor", "library"); - subst("cudnnCreateTensorDescriptor", "miopenCreateTensorDescriptor", "library"); - subst("cudnnDeriveBNTensorDescriptor", "miopenDeriveBNTensorDescriptor", "library"); - subst("cudnnDestroy", "miopenDestroy", "library"); - subst("cudnnDestroyActivationDescriptor", "miopenDestroyActivationDescriptor", "library"); - subst("cudnnDestroyCTCLossDescriptor", "miopenDestroyCTCLossDescriptor", "library"); - subst("cudnnDestroyConvolutionDescriptor", "miopenDestroyConvolutionDescriptor", "library"); - subst("cudnnDestroyDropoutDescriptor", "miopenDestroyDropoutDescriptor", "library"); - subst("cudnnDestroyLRNDescriptor", "miopenDestroyLRNDescriptor", "library"); - subst("cudnnDestroyPoolingDescriptor", "miopenDestroyPoolingDescriptor", "library"); - subst("cudnnDestroyRNNDescriptor", "miopenDestroyRNNDescriptor", "library"); - subst("cudnnDestroyReduceTensorDescriptor", "miopenDestroyReduceTensorDescriptor", "library"); - subst("cudnnDestroyTensorDescriptor", "miopenDestroyTensorDescriptor", "library"); - subst("cudnnDropoutBackward", "miopenDropoutBackward", "library"); - subst("cudnnDropoutForward", "miopenDropoutForward", "library"); - subst("cudnnDropoutGetReserveSpaceSize", "miopenDropoutGetReserveSpaceSize", "library"); - subst("cudnnDropoutGetStatesSize", "miopenDropoutGetStatesSize", "library"); - subst("cudnnFindConvolutionForwardAlgorithmEx", "miopenFindConvolutionForwardAlgorithm", "library"); - subst("cudnnGetCTCLossDescriptor", "miopenGetCTCLossDescriptor", "library"); - subst("cudnnGetCTCLossWorkspaceSize", "miopenGetCTCLossWorkspaceSize", "library"); - subst("cudnnGetConvolution2dForwardOutputDim", "miopenGetConvolutionForwardOutputDim", "library"); - subst("cudnnGetConvolutionBackwardDataWorkspaceSize", "miopenConvolutionBackwardDataGetWorkSpaceSize", "library"); - subst("cudnnGetConvolutionForwardWorkspaceSize", "miopenConvolutionForwardGetWorkSpaceSize", "library"); - subst("cudnnGetDropoutDescriptor", "miopenGetDropoutDescriptor", "library"); - subst("cudnnGetErrorString", "miopenGetErrorString", "library"); - subst("cudnnGetLRNDescriptor", "miopenGetLRNDescriptor", "library"); - subst("cudnnGetPooling2dDescriptor", "miopenGet2dPoolingDescriptor", "library"); - subst("cudnnGetPooling2dForwardOutputDim", "miopenGetPoolingForwardOutputDim", "library"); - subst("cudnnGetPoolingNdDescriptor", "miopenGetNdPoolingDescriptor", "library"); - subst("cudnnGetPoolingNdForwardOutputDim", "miopenGetPoolingNdForwardOutputDim", "library"); - subst("cudnnGetRNNDescriptor", "miopenGetRNNDescriptor_V2", "library"); - subst("cudnnGetRNNDescriptor_v6", "miopenGetRNNDescriptor_V2", "library"); - subst("cudnnGetRNNParamsSize", "miopenGetRNNParamsSize", "library"); - subst("cudnnGetRNNTrainingReserveSize", "miopenGetRNNTrainingReserveSize", "library"); - subst("cudnnGetRNNWorkspaceSize", "miopenGetRNNWorkspaceSize", "library"); - subst("cudnnGetReduceTensorDescriptor", "miopenGetReduceTensorDescriptor", "library"); - subst("cudnnGetReductionIndicesSize", "miopenGetReductionIndicesSize", "library"); - subst("cudnnGetReductionWorkspaceSize", "miopenGetReductionWorkspaceSize", "library"); - subst("cudnnGetStream", "miopenGetStream", "library"); - subst("cudnnGetTensor4dDescriptor", "miopenGet4dTensorDescriptor", "library"); - subst("cudnnRNNBackwardData", "miopenRNNBackwardData", "library"); - subst("cudnnRNNBackwardWeights", "miopenRNNBackwardWeights", "library"); - subst("cudnnRNNForwardInference", "miopenRNNForwardInference", "library"); - subst("cudnnRNNForwardTraining", "miopenRNNForwardTraining", "library"); - subst("cudnnReduceTensor", "miopenReduceTensor", "library"); - subst("cudnnRestoreDropoutDescriptor", "miopenRestoreDropoutDescriptor", "library"); - subst("cudnnScaleTensor", "miopenScaleTensor", "library"); - subst("cudnnSetCTCLossDescriptor", "miopenSetCTCLossDescriptor", "library"); - subst("cudnnSetConvolutionGroupCount", "miopenSetConvolutionGroupCount", "library"); - subst("cudnnSetDropoutDescriptor", "miopenSetDropoutDescriptor", "library"); - subst("cudnnSetLRNDescriptor", "miopenSetLRNDescriptor", "library"); - subst("cudnnSetPooling2dDescriptor", "miopenSet2dPoolingDescriptor", "library"); - subst("cudnnSetPoolingNdDescriptor", "miopenSetNdPoolingDescriptor", "library"); - subst("cudnnSetRNNDescriptor_v6", "miopenSetRNNDescriptor_V2", "library"); - subst("cudnnSetReduceTensorDescriptor", "miopenSetReduceTensorDescriptor", "library"); - subst("cudnnSetStream", "miopenSetStream", "library"); - subst("cudnnSetTensor", "miopenSetTensor", "library"); - subst("cudnnSetTensor4dDescriptorEx", "miopenSet4dTensorDescriptorEx", "library"); - subst("cudnnSoftmaxBackward", "miopenSoftmaxBackward_V2", "library"); - subst("cudnnSoftmaxForward", "miopenSoftmaxForward_V2", "library"); - subst("cudnnTransformTensor", "miopenTransformTensor", "library"); subst("curandCreateGenerator", "rocrand_create_generator", "library"); subst("curandCreateGeneratorHost", "rocrand_create_generator_host_blocking", "library"); subst("curandCreatePoissonDistribution", "rocrand_create_poisson_distribution", "library"); @@ -3015,54 +2920,6 @@ sub rocSubstitutions { subst("cublasStatus_t", "rocblas_status", "type"); subst("cudaDataType", "rocblas_datatype", "type"); subst("cudaDataType_t", "rocblas_datatype_", "type"); - subst("cudnnActivationDescriptor_t", "miopenActivationDescriptor_t", "type"); - subst("cudnnActivationMode_t", "miopenActivationMode_t", "type"); - subst("cudnnBackendAttributeName_t", "miopenBackendAttributeName_t", "type"); - subst("cudnnBackendAttributeType_t", "miopenBackendAttributeType_t", "type"); - subst("cudnnBackendDescriptorType_t", "miopenBackendDescriptorType_t", "type"); - subst("cudnnBackendDescriptor_t", "miopenBackendDescriptor_t", "type"); - subst("cudnnBackendHeurMode_t", "miopenBackendHeurMode_t", "type"); - subst("cudnnBatchNormMode_t", "miopenBatchNormMode_t", "type"); - subst("cudnnCTCLossAlgo_t", "miopenCTCLossAlgo_t", "type"); - subst("cudnnCTCLossDescriptor_t", "miopenCTCLossDescriptor_t", "type"); - subst("cudnnContext", "miopenHandle", "type"); - subst("cudnnConvolutionBwdDataAlgoPerfStruct", "miopenConvAlgoPerf_t", "type"); - subst("cudnnConvolutionBwdDataAlgoPerf_t", "miopenConvAlgoPerf_t", "type"); - subst("cudnnConvolutionBwdDataAlgo_t", "miopenConvBwdDataAlgorithm_t", "type"); - subst("cudnnConvolutionDescriptor_t", "miopenConvolutionDescriptor_t", "type"); - subst("cudnnConvolutionFwdAlgoPerfStruct", "miopenConvAlgoPerf_t", "type"); - subst("cudnnConvolutionFwdAlgoPerf_t", "miopenConvAlgoPerf_t", "type"); - subst("cudnnConvolutionFwdAlgo_t", "miopenConvFwdAlgorithm_t", "type"); - subst("cudnnConvolutionMode_t", "miopenConvolutionMode_t", "type"); - subst("cudnnDataType_t", "miopenDataType_t", "type"); - subst("cudnnDirectionMode_t", "miopenRNNDirectionMode_t", "type"); - subst("cudnnDropoutDescriptor_t", "miopenDropoutDescriptor_t", "type"); - subst("cudnnFilterDescriptor_t", "miopenTensorDescriptor_t", "type"); - subst("cudnnHandle_t", "miopenHandle_t", "type"); - subst("cudnnIndicesType_t", "miopenIndicesType_t", "type"); - subst("cudnnLRNDescriptor_t", "miopenLRNDescriptor_t", "type"); - subst("cudnnLRNMode_t", "miopenLRNMode_t", "type"); - subst("cudnnNanPropagation_t", "miopenNanPropagation_t", "type"); - subst("cudnnOpTensorOp_t", "miopenTensorOp_t", "type"); - subst("cudnnPaddingMode_t", "miopenPaddingMode_t", "type"); - subst("cudnnPointwiseMode_t", "miopenPointwiseMode_t", "type"); - subst("cudnnPoolingDescriptor_t", "miopenPoolingDescriptor_t", "type"); - subst("cudnnPoolingMode_t", "miopenPoolingMode_t", "type"); - subst("cudnnRNNAlgo_t", "miopenRNNAlgo_t", "type"); - subst("cudnnRNNBiasMode_t", "miopenRNNBiasMode_t", "type"); - subst("cudnnRNNDescriptor_t", "miopenRNNDescriptor_t", "type"); - subst("cudnnRNNInputMode_t", "miopenRNNInputMode_t", "type"); - subst("cudnnRNNMode_t", "miopenRNNMode_t", "type"); - subst("cudnnRNNPaddingMode_t", "miopenRNNPaddingMode_t", "type"); - subst("cudnnReduceTensorDescriptor_t", "miopenReduceTensorDescriptor_t", "type"); - subst("cudnnReduceTensorIndices_t", "miopenReduceTensorIndices_t", "type"); - subst("cudnnReduceTensorOp_t", "miopenReduceTensorOp_t", "type"); - subst("cudnnRngDistribution_t", "miopenRngDistribution_t", "type"); - subst("cudnnSoftmaxAlgorithm_t", "miopenSoftmaxAlgorithm_t", "type"); - subst("cudnnSoftmaxMode_t", "miopenSoftmaxMode_t", "type"); - subst("cudnnStatus_t", "miopenStatus_t", "type"); - subst("cudnnTensorDescriptor_t", "miopenTensorDescriptor_t", "type"); - subst("cudnnTensorFormat_t", "miopenTensorLayout_t", "type"); subst("curandDirectionVectorSet", "rocrand_direction_vector_set", "type"); subst("curandDirectionVectorSet_t", "rocrand_direction_vector_set", "type"); subst("curandDiscreteDistribution_st", "rocrand_discrete_distribution_st", "type"); @@ -3183,11262 +3040,8800 @@ sub rocSubstitutions { subst("CUDA_R_64F", "rocblas_datatype_f64_r", "numeric_literal"); subst("CUDA_R_8I", "rocblas_datatype_i8_r", "numeric_literal"); subst("CUDA_R_8U", "rocblas_datatype_u8_r", "numeric_literal"); - subst("CUDNN_16BIT_INDICES", "MIOPEN_16BIT_INDICES", "numeric_literal"); - subst("CUDNN_32BIT_INDICES", "MIOPEN_32BIT_INDICES", "numeric_literal"); - subst("CUDNN_64BIT_INDICES", "MIOPEN_64BIT_INDICES", "numeric_literal"); - subst("CUDNN_8BIT_INDICES", "MIOPEN_8BIT_INDICES", "numeric_literal"); - subst("CUDNN_ACTIVATION_CLIPPED_RELU", "miopenActivationCLIPPEDRELU", "numeric_literal"); - subst("CUDNN_ACTIVATION_ELU", "miopenActivationELU", "numeric_literal"); - subst("CUDNN_ACTIVATION_IDENTITY", "miopenActivationPASTHRU", "numeric_literal"); - subst("CUDNN_ACTIVATION_RELU", "miopenActivationRELU", "numeric_literal"); - subst("CUDNN_ACTIVATION_SIGMOID", "miopenActivationLOGISTIC", "numeric_literal"); - subst("CUDNN_ACTIVATION_TANH", "miopenActivationTANH", "numeric_literal"); - subst("CUDNN_ATTR_CONVOLUTION_COMP_TYPE", "MIOPEN_ATTR_CONVOLUTION_COMP_TYPE", "numeric_literal"); - subst("CUDNN_ATTR_CONVOLUTION_CONV_MODE", "MIOPEN_ATTR_CONVOLUTION_CONV_MODE", "numeric_literal"); - subst("CUDNN_ATTR_CONVOLUTION_DILATIONS", "MIOPEN_ATTR_CONVOLUTION_DILATIONS", "numeric_literal"); - subst("CUDNN_ATTR_CONVOLUTION_FILTER_STRIDES", "MIOPEN_ATTR_CONVOLUTION_FILTER_STRIDES", "numeric_literal"); - subst("CUDNN_ATTR_CONVOLUTION_POST_PADDINGS", "MIOPEN_ATTR_CONVOLUTION_POST_PADDINGS", "numeric_literal"); - subst("CUDNN_ATTR_CONVOLUTION_PRE_PADDINGS", "MIOPEN_ATTR_CONVOLUTION_PRE_PADDINGS", "numeric_literal"); - subst("CUDNN_ATTR_CONVOLUTION_SPATIAL_DIMS", "MIOPEN_ATTR_CONVOLUTION_SPATIAL_DIMS", "numeric_literal"); - subst("CUDNN_ATTR_ENGINECFG_ENGINE", "MIOPEN_ATTR_ENGINECFG_ENGINE", "numeric_literal"); - subst("CUDNN_ATTR_ENGINECFG_INTERMEDIATE_INFO", "MIOPEN_ATTR_ENGINECFG_INTERMEDIATE_INFO", "numeric_literal"); - subst("CUDNN_ATTR_ENGINECFG_KNOB_CHOICES", "MIOPEN_ATTR_ENGINECFG_KNOB_CHOICES", "numeric_literal"); - subst("CUDNN_ATTR_ENGINEHEUR_MODE", "MIOPEN_ATTR_ENGINEHEUR_MODE", "numeric_literal"); - subst("CUDNN_ATTR_ENGINEHEUR_OPERATION_GRAPH", "MIOPEN_ATTR_ENGINEHEUR_OPERATION_GRAPH", "numeric_literal"); - subst("CUDNN_ATTR_ENGINEHEUR_RESULTS", "MIOPEN_ATTR_ENGINEHEUR_RESULTS", "numeric_literal"); - subst("CUDNN_ATTR_ENGINEHEUR_SM_COUNT_TARGET", "MIOPEN_ATTR_ENGINEHEUR_SM_COUNT_TARGET", "numeric_literal"); - subst("CUDNN_ATTR_ENGINE_BEHAVIOR_NOTE", "MIOPEN_ATTR_ENGINE_BEHAVIOR_NOTE", "numeric_literal"); - subst("CUDNN_ATTR_ENGINE_GLOBAL_INDEX", "MIOPEN_ATTR_ENGINE_GLOBAL_INDEX", "numeric_literal"); - subst("CUDNN_ATTR_ENGINE_KNOB_INFO", "MIOPEN_ATTR_ENGINE_KNOB_INFO", "numeric_literal"); - subst("CUDNN_ATTR_ENGINE_LAYOUT_INFO", "MIOPEN_ATTR_ENGINE_LAYOUT_INFO", "numeric_literal"); - subst("CUDNN_ATTR_ENGINE_NUMERICAL_NOTE", "MIOPEN_ATTR_ENGINE_NUMERICAL_NOTE", "numeric_literal"); - subst("CUDNN_ATTR_ENGINE_OPERATION_GRAPH", "MIOPEN_ATTR_ENGINE_OPERATION_GRAPH", "numeric_literal"); - subst("CUDNN_ATTR_ENGINE_SM_COUNT_TARGET", "MIOPEN_ATTR_ENGINE_SM_COUNT_TARGET", "numeric_literal"); - subst("CUDNN_ATTR_EXECUTION_PLAN_COMPUTED_INTERMEDIATE_UIDS", "MIOPEN_ATTR_EXECUTION_PLAN_COMPUTED_INTERMEDIATE_UIDS", "numeric_literal"); - subst("CUDNN_ATTR_EXECUTION_PLAN_ENGINE_CONFIG", "MIOPEN_ATTR_EXECUTION_PLAN_ENGINE_CONFIG", "numeric_literal"); - subst("CUDNN_ATTR_EXECUTION_PLAN_HANDLE", "MIOPEN_ATTR_EXECUTION_PLAN_HANDLE", "numeric_literal"); - subst("CUDNN_ATTR_EXECUTION_PLAN_JSON_REPRESENTATION", "MIOPEN_ATTR_EXECUTION_PLAN_JSON_REPRESENTATION", "numeric_literal"); - subst("CUDNN_ATTR_EXECUTION_PLAN_RUN_ONLY_INTERMEDIATE_UIDS", "MIOPEN_ATTR_EXECUTION_PLAN_RUN_ONLY_INTERMEDIATE_UIDS", "numeric_literal"); - subst("CUDNN_ATTR_EXECUTION_PLAN_WORKSPACE_SIZE", "MIOPEN_ATTR_EXECUTION_PLAN_WORKSPACE_SIZE", "numeric_literal"); - subst("CUDNN_ATTR_INTERMEDIATE_INFO_DEPENDENT_ATTRIBUTES", "MIOPEN_ATTR_INTERMEDIATE_INFO_DEPENDENT_ATTRIBUTES", "numeric_literal"); - subst("CUDNN_ATTR_INTERMEDIATE_INFO_DEPENDENT_DATA_UIDS", "MIOPEN_ATTR_INTERMEDIATE_INFO_DEPENDENT_DATA_UIDS", "numeric_literal"); - subst("CUDNN_ATTR_INTERMEDIATE_INFO_SIZE", "MIOPEN_ATTR_INTERMEDIATE_INFO_SIZE", "numeric_literal"); - subst("CUDNN_ATTR_INTERMEDIATE_INFO_UNIQUE_ID", "MIOPEN_ATTR_INTERMEDIATE_INFO_UNIQUE_ID", "numeric_literal"); - subst("CUDNN_ATTR_KNOB_CHOICE_KNOB_TYPE", "MIOPEN_ATTR_KNOB_CHOICE_KNOB_TYPE", "numeric_literal"); - subst("CUDNN_ATTR_KNOB_CHOICE_KNOB_VALUE", "MIOPEN_ATTR_KNOB_CHOICE_KNOB_VALUE", "numeric_literal"); - subst("CUDNN_ATTR_KNOB_INFO_MAXIMUM_VALUE", "MIOPEN_ATTR_KNOB_INFO_MAXIMUM_VALUE", "numeric_literal"); - subst("CUDNN_ATTR_KNOB_INFO_MINIMUM_VALUE", "MIOPEN_ATTR_KNOB_INFO_MINIMUM_VALUE", "numeric_literal"); - subst("CUDNN_ATTR_KNOB_INFO_STRIDE", "MIOPEN_ATTR_KNOB_INFO_STRIDE", "numeric_literal"); - subst("CUDNN_ATTR_KNOB_INFO_TYPE", "MIOPEN_ATTR_KNOB_INFO_TYPE", "numeric_literal"); - subst("CUDNN_ATTR_LAYOUT_INFO_TENSOR_UID", "MIOPEN_ATTR_LAYOUT_INFO_TENSOR_UID", "numeric_literal"); - subst("CUDNN_ATTR_LAYOUT_INFO_TYPES", "MIOPEN_ATTR_LAYOUT_INFO_TYPES", "numeric_literal"); - subst("CUDNN_ATTR_MATMUL_COMP_TYPE", "MIOPEN_ATTR_MATMUL_COMP_TYPE", "numeric_literal"); - subst("CUDNN_ATTR_MATMUL_PADDING_VALUE", "MIOPEN_ATTR_MATMUL_PADDING_VALUE", "numeric_literal"); - subst("CUDNN_ATTR_OPERATIONGRAPH_ENGINE_GLOBAL_COUNT", "MIOPEN_ATTR_OPERATIONGRAPH_ENGINE_GLOBAL_COUNT", "numeric_literal"); - subst("CUDNN_ATTR_OPERATIONGRAPH_HANDLE", "MIOPEN_ATTR_OPERATIONGRAPH_HANDLE", "numeric_literal"); - subst("CUDNN_ATTR_OPERATIONGRAPH_OPS", "MIOPEN_ATTR_OPERATIONGRAPH_OPS", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_BN_SCALE_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_BN_SCALE_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_BIAS_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_BIAS_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_SCALE_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_SCALE_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_DY_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_DY_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_BIAS", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_BIAS", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_DY_SCALE_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_DY_SCALE_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_X_SCALE_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_EQ_X_SCALE_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_INVSTD_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_INVSTD_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_MATH_PREC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_MATH_PREC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_MEAN_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_MEAN_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_X_DESC", "MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_X_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_ACCUM_COUNT_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_ACCUM_COUNT_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_BIAS_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_BIAS_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_EPSILON_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_EPSILON_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_EQ_BIAS_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_EQ_BIAS_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_EQ_SCALE_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_EQ_SCALE_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_EXP_AVERATE_FACTOR_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_EXP_AVERATE_FACTOR_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_MATH_PREC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_MATH_PREC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_PREV_RUNNING_MEAN_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_PREV_RUNNING_MEAN_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_PREV_RUNNING_VAR_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_PREV_RUNNING_VAR_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_SAVED_INV_STD_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_SAVED_INV_STD_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_SAVED_MEAN_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_SAVED_MEAN_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_SCALE_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_SCALE_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_STATS_MODE", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_STATS_MODE", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_UPDATED_RUNNING_MEAN_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_UPDATED_RUNNING_MEAN_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_UPDATED_RUNNING_VAR_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_UPDATED_RUNNING_VAR_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_Y_SQ_SUM_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_Y_SQ_SUM_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_BN_FINALIZE_Y_SUM_DESC", "MIOPEN_ATTR_OPERATION_BN_FINALIZE_Y_SUM_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONCAT_AXIS", "MIOPEN_ATTR_OPERATION_CONCAT_AXIS", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONCAT_INPLACE_INDEX", "MIOPEN_ATTR_OPERATION_CONCAT_INPLACE_INDEX", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONCAT_INPUT_DESCS", "MIOPEN_ATTR_OPERATION_CONCAT_INPUT_DESCS", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONCAT_OUTPUT_DESC", "MIOPEN_ATTR_OPERATION_CONCAT_OUTPUT_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_ALPHA", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_ALPHA", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_BETA", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_BETA", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_CONV_DESC", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_CONV_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_DX", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_DX", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_DY", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_DY", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_W", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_DATA_W", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_ALPHA", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_ALPHA", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_BETA", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_BETA", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_CONV_DESC", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_CONV_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_DW", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_DW", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_DY", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_DY", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_X", "MIOPEN_ATTR_OPERATION_CONVOLUTION_BWD_FILTER_X", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_ALPHA", "MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_ALPHA", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_BETA", "MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_BETA", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_CONV_DESC", "MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_CONV_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_W", "MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_W", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_X", "MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_X", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_CONVOLUTION_FORWARD_Y", "MIOPEN_ATTR_OPERATION_CONVOLUTION_FORWARD_Y", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_GENSTATS_MATH_PREC", "MIOPEN_ATTR_OPERATION_GENSTATS_MATH_PREC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_GENSTATS_MODE", "MIOPEN_ATTR_OPERATION_GENSTATS_MODE", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_GENSTATS_SQSUMDESC", "MIOPEN_ATTR_OPERATION_GENSTATS_SQSUMDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_GENSTATS_SUMDESC", "MIOPEN_ATTR_OPERATION_GENSTATS_SUMDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_GENSTATS_XDESC", "MIOPEN_ATTR_OPERATION_GENSTATS_XDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_MATMUL_ADESC", "MIOPEN_ATTR_OPERATION_MATMUL_ADESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_MATMUL_BDESC", "MIOPEN_ATTR_OPERATION_MATMUL_BDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_MATMUL_CDESC", "MIOPEN_ATTR_OPERATION_MATMUL_CDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_MATMUL_DESC", "MIOPEN_ATTR_OPERATION_MATMUL_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_MATMUL_GEMM_K_OVERRIDE_DESC", "MIOPEN_ATTR_OPERATION_MATMUL_GEMM_K_OVERRIDE_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_MATMUL_GEMM_M_OVERRIDE_DESC", "MIOPEN_ATTR_OPERATION_MATMUL_GEMM_M_OVERRIDE_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_MATMUL_GEMM_N_OVERRIDE_DESC", "MIOPEN_ATTR_OPERATION_MATMUL_GEMM_N_OVERRIDE_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_MATMUL_IRREGULARLY_STRIDED_BATCH_COUNT", "MIOPEN_ATTR_OPERATION_MATMUL_IRREGULARLY_STRIDED_BATCH_COUNT", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_BWD_DBIAS_DESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_DBIAS_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_BWD_DSCALE_DESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_DSCALE_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_BWD_DXDESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_DXDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_BWD_DYDESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_DYDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_BWD_EPSILON_DESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_EPSILON_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_BWD_INV_VARIANCE_DESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_INV_VARIANCE_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_BWD_MEAN_DESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_MEAN_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_BWD_MODE", "MIOPEN_ATTR_OPERATION_NORM_BWD_MODE", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_BWD_PEER_STAT_DESCS", "MIOPEN_ATTR_OPERATION_NORM_BWD_PEER_STAT_DESCS", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_BWD_SCALE_DESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_SCALE_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_BWD_XDESC", "MIOPEN_ATTR_OPERATION_NORM_BWD_XDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_FWD_BIAS_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_BIAS_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_FWD_EPSILON_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_EPSILON_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_FWD_EXP_AVG_FACTOR_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_EXP_AVG_FACTOR_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_FWD_INPUT_RUNNING_MEAN_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_INPUT_RUNNING_MEAN_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_FWD_INPUT_RUNNING_VAR_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_INPUT_RUNNING_VAR_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_FWD_INV_VARIANCE_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_INV_VARIANCE_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_FWD_MEAN_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_MEAN_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_FWD_MODE", "MIOPEN_ATTR_OPERATION_NORM_FWD_MODE", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_FWD_OUTPUT_RUNNING_MEAN_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_OUTPUT_RUNNING_MEAN_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_FWD_OUTPUT_RUNNING_VAR_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_OUTPUT_RUNNING_VAR_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_FWD_PEER_STAT_DESCS", "MIOPEN_ATTR_OPERATION_NORM_FWD_PEER_STAT_DESCS", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_FWD_PHASE", "MIOPEN_ATTR_OPERATION_NORM_FWD_PHASE", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_FWD_SCALE_DESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_SCALE_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_FWD_XDESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_XDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_NORM_FWD_YDESC", "MIOPEN_ATTR_OPERATION_NORM_FWD_YDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_POINTWISE_ALPHA1", "MIOPEN_ATTR_OPERATION_POINTWISE_ALPHA1", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_POINTWISE_ALPHA2", "MIOPEN_ATTR_OPERATION_POINTWISE_ALPHA2", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_POINTWISE_BDESC", "MIOPEN_ATTR_OPERATION_POINTWISE_BDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_POINTWISE_DXDESC", "MIOPEN_ATTR_OPERATION_POINTWISE_DXDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_POINTWISE_DYDESC", "MIOPEN_ATTR_OPERATION_POINTWISE_DYDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_POINTWISE_PW_DESCRIPTOR", "MIOPEN_ATTR_OPERATION_POINTWISE_PW_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_POINTWISE_TDESC", "MIOPEN_ATTR_OPERATION_POINTWISE_TDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_POINTWISE_XDESC", "MIOPEN_ATTR_OPERATION_POINTWISE_XDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_POINTWISE_YDESC", "MIOPEN_ATTR_OPERATION_POINTWISE_YDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_REDUCTION_DESC", "MIOPEN_ATTR_OPERATION_REDUCTION_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_REDUCTION_XDESC", "MIOPEN_ATTR_OPERATION_REDUCTION_XDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_REDUCTION_YDESC", "MIOPEN_ATTR_OPERATION_REDUCTION_YDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RESAMPLE_BWD_ALPHA", "MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_ALPHA", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RESAMPLE_BWD_BETA", "MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_BETA", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RESAMPLE_BWD_DESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RESAMPLE_BWD_DXDESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_DXDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RESAMPLE_BWD_DYDESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_DYDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RESAMPLE_BWD_IDXDESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_IDXDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RESAMPLE_BWD_XDESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_XDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RESAMPLE_BWD_YDESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_BWD_YDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RESAMPLE_FWD_ALPHA", "MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_ALPHA", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RESAMPLE_FWD_BETA", "MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_BETA", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RESAMPLE_FWD_DESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RESAMPLE_FWD_IDXDESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_IDXDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RESAMPLE_FWD_XDESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_XDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RESAMPLE_FWD_YDESC", "MIOPEN_ATTR_OPERATION_RESAMPLE_FWD_YDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RESHAPE_XDESC", "MIOPEN_ATTR_OPERATION_RESHAPE_XDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RESHAPE_YDESC", "MIOPEN_ATTR_OPERATION_RESHAPE_YDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RNG_DESC", "MIOPEN_ATTR_OPERATION_RNG_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RNG_OFFSET_DESC", "MIOPEN_ATTR_OPERATION_RNG_OFFSET_DESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RNG_SEED", "MIOPEN_ATTR_OPERATION_RNG_SEED", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_RNG_YDESC", "MIOPEN_ATTR_OPERATION_RNG_YDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_SIGNAL_FLAGDESC", "MIOPEN_ATTR_OPERATION_SIGNAL_FLAGDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_SIGNAL_MODE", "MIOPEN_ATTR_OPERATION_SIGNAL_MODE", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_SIGNAL_VALUE", "MIOPEN_ATTR_OPERATION_SIGNAL_VALUE", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_SIGNAL_XDESC", "MIOPEN_ATTR_OPERATION_SIGNAL_XDESC", "numeric_literal"); - subst("CUDNN_ATTR_OPERATION_SIGNAL_YDESC", "MIOPEN_ATTR_OPERATION_SIGNAL_YDESC", "numeric_literal"); - subst("CUDNN_ATTR_POINTWISE_AXIS", "MIOPEN_ATTR_POINTWISE_AXIS", "numeric_literal"); - subst("CUDNN_ATTR_POINTWISE_ELU_ALPHA", "MIOPEN_ATTR_POINTWISE_ELU_ALPHA", "numeric_literal"); - subst("CUDNN_ATTR_POINTWISE_MATH_PREC", "MIOPEN_ATTR_POINTWISE_MATH_PREC", "numeric_literal"); - subst("CUDNN_ATTR_POINTWISE_MODE", "MIOPEN_ATTR_POINTWISE_MODE", "numeric_literal"); - subst("CUDNN_ATTR_POINTWISE_NAN_PROPAGATION", "MIOPEN_ATTR_POINTWISE_NAN_PROPAGATION", "numeric_literal"); - subst("CUDNN_ATTR_POINTWISE_RELU_LOWER_CLIP", "MIOPEN_ATTR_POINTWISE_RELU_LOWER_CLIP", "numeric_literal"); - subst("CUDNN_ATTR_POINTWISE_RELU_LOWER_CLIP_SLOPE", "MIOPEN_ATTR_POINTWISE_RELU_LOWER_CLIP_SLOPE", "numeric_literal"); - subst("CUDNN_ATTR_POINTWISE_RELU_UPPER_CLIP", "MIOPEN_ATTR_POINTWISE_RELU_UPPER_CLIP", "numeric_literal"); - subst("CUDNN_ATTR_POINTWISE_SOFTPLUS_BETA", "MIOPEN_ATTR_POINTWISE_SOFTPLUS_BETA", "numeric_literal"); - subst("CUDNN_ATTR_POINTWISE_SWISH_BETA", "MIOPEN_ATTR_POINTWISE_SWISH_BETA", "numeric_literal"); - subst("CUDNN_ATTR_REDUCTION_COMP_TYPE", "MIOPEN_ATTR_REDUCTION_COMP_TYPE", "numeric_literal"); - subst("CUDNN_ATTR_REDUCTION_OPERATOR", "MIOPEN_ATTR_REDUCTION_OPERATOR", "numeric_literal"); - subst("CUDNN_ATTR_RESAMPLE_COMP_TYPE", "MIOPEN_ATTR_RESAMPLE_COMP_TYPE", "numeric_literal"); - subst("CUDNN_ATTR_RESAMPLE_MODE", "MIOPEN_ATTR_RESAMPLE_MODE", "numeric_literal"); - subst("CUDNN_ATTR_RESAMPLE_NAN_PROPAGATION", "MIOPEN_ATTR_RESAMPLE_NAN_PROPAGATION", "numeric_literal"); - subst("CUDNN_ATTR_RESAMPLE_PADDING_MODE", "MIOPEN_ATTR_RESAMPLE_PADDING_MODE", "numeric_literal"); - subst("CUDNN_ATTR_RESAMPLE_POST_PADDINGS", "MIOPEN_ATTR_RESAMPLE_POST_PADDINGS", "numeric_literal"); - subst("CUDNN_ATTR_RESAMPLE_PRE_PADDINGS", "MIOPEN_ATTR_RESAMPLE_PRE_PADDINGS", "numeric_literal"); - subst("CUDNN_ATTR_RESAMPLE_SPATIAL_DIMS", "MIOPEN_ATTR_RESAMPLE_SPATIAL_DIMS", "numeric_literal"); - subst("CUDNN_ATTR_RESAMPLE_STRIDES", "MIOPEN_ATTR_RESAMPLE_STRIDES", "numeric_literal"); - subst("CUDNN_ATTR_RESAMPLE_WINDOW_DIMS", "MIOPEN_ATTR_RESAMPLE_WINDOW_DIMS", "numeric_literal"); - subst("CUDNN_ATTR_RNG_BERNOULLI_DIST_PROBABILITY", "MIOPEN_ATTR_RNG_BERNOULLI_DIST_PROBABILITY", "numeric_literal"); - subst("CUDNN_ATTR_RNG_DISTRIBUTION", "MIOPEN_ATTR_RNG_DISTRIBUTION", "numeric_literal"); - subst("CUDNN_ATTR_RNG_NORMAL_DIST_MEAN", "MIOPEN_ATTR_RNG_NORMAL_DIST_MEAN", "numeric_literal"); - subst("CUDNN_ATTR_RNG_NORMAL_DIST_STANDARD_DEVIATION", "MIOPEN_ATTR_RNG_NORMAL_DIST_STANDARD_DEVIATION", "numeric_literal"); - subst("CUDNN_ATTR_RNG_UNIFORM_DIST_MAXIMUM", "MIOPEN_ATTR_RNG_UNIFORM_DIST_MAXIMUM", "numeric_literal"); - subst("CUDNN_ATTR_RNG_UNIFORM_DIST_MINIMUM", "MIOPEN_ATTR_RNG_UNIFORM_DIST_MINIMUM", "numeric_literal"); - subst("CUDNN_ATTR_TENSOR_BYTE_ALIGNMENT", "MIOPEN_ATTR_TENSOR_BYTE_ALIGNMENT", "numeric_literal"); - subst("CUDNN_ATTR_TENSOR_DATA_TYPE", "MIOPEN_ATTR_TENSOR_DATA_TYPE", "numeric_literal"); - subst("CUDNN_ATTR_TENSOR_DIMENSIONS", "MIOPEN_ATTR_TENSOR_DIMENSIONS", "numeric_literal"); - subst("CUDNN_ATTR_TENSOR_IS_BY_VALUE", "MIOPEN_ATTR_TENSOR_IS_BY_VALUE", "numeric_literal"); - subst("CUDNN_ATTR_TENSOR_IS_VIRTUAL", "MIOPEN_ATTR_TENSOR_IS_VIRTUAL", "numeric_literal"); - subst("CUDNN_ATTR_TENSOR_RAGGED_OFFSET_DESC", "MIOPEN_ATTR_TENSOR_RAGGED_OFFSET_DESC", "numeric_literal"); - subst("CUDNN_ATTR_TENSOR_REORDERING_MODE", "MIOPEN_ATTR_TENSOR_REORDERING_MODE", "numeric_literal"); - subst("CUDNN_ATTR_TENSOR_STRIDES", "MIOPEN_ATTR_TENSOR_STRIDES", "numeric_literal"); - subst("CUDNN_ATTR_TENSOR_UNIQUE_ID", "MIOPEN_ATTR_TENSOR_UNIQUE_ID", "numeric_literal"); - subst("CUDNN_ATTR_TENSOR_VECTORIZED_DIMENSION", "MIOPEN_ATTR_TENSOR_VECTORIZED_DIMENSION", "numeric_literal"); - subst("CUDNN_ATTR_TENSOR_VECTOR_COUNT", "MIOPEN_ATTR_TENSOR_VECTOR_COUNT", "numeric_literal"); - subst("CUDNN_ATTR_VARIANT_PACK_DATA_POINTERS", "MIOPEN_ATTR_VARIANT_PACK_DATA_POINTERS", "numeric_literal"); - subst("CUDNN_ATTR_VARIANT_PACK_INTERMEDIATES", "MIOPEN_ATTR_VARIANT_PACK_INTERMEDIATES", "numeric_literal"); - subst("CUDNN_ATTR_VARIANT_PACK_UNIQUE_IDS", "MIOPEN_ATTR_VARIANT_PACK_UNIQUE_IDS", "numeric_literal"); - subst("CUDNN_ATTR_VARIANT_PACK_WORKSPACE", "MIOPEN_ATTR_VARIANT_PACK_WORKSPACE", "numeric_literal"); - subst("CUDNN_BACKEND_CONVOLUTION_DESCRIPTOR", "MIOPEN_BACKEND_CONVOLUTION_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_ENGINECFG_DESCRIPTOR", "MIOPEN_BACKEND_ENGINECFG_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_ENGINEHEUR_DESCRIPTOR", "MIOPEN_BACKEND_ENGINEHEUR_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_ENGINE_DESCRIPTOR", "MIOPEN_BACKEND_ENGINE_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_EXECUTION_PLAN_DESCRIPTOR", "MIOPEN_BACKEND_EXECUTION_PLAN_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_INTERMEDIATE_INFO_DESCRIPTOR", "MIOPEN_BACKEND_INTERMEDIATE_INFO_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_KNOB_CHOICE_DESCRIPTOR", "MIOPEN_BACKEND_KNOB_CHOICE_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_KNOB_INFO_DESCRIPTOR", "MIOPEN_BACKEND_KNOB_INFO_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_LAYOUT_INFO_DESCRIPTOR", "MIOPEN_BACKEND_LAYOUT_INFO_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_MATMUL_DESCRIPTOR", "MIOPEN_BACKEND_MATMUL_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_OPERATIONGRAPH_DESCRIPTOR", "MIOPEN_BACKEND_OPERATIONGRAPH_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_OPERATION_CONCAT_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_CONCAT_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_OPERATION_CONVOLUTION_BACKWARD_DATA_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_CONVOLUTION_BACKWARD_DATA_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_OPERATION_CONVOLUTION_BACKWARD_FILTER_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_CONVOLUTION_BACKWARD_FILTER_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_OPERATION_CONVOLUTION_FORWARD_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_CONVOLUTION_FORWARD_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_OPERATION_GEN_STATS_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_GEN_STATS_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_OPERATION_MATMUL_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_MATMUL_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_OPERATION_NORM_BACKWARD_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_NORM_BACKWARD_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_OPERATION_NORM_FORWARD_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_NORM_FORWARD_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_OPERATION_POINTWISE_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_POINTWISE_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_OPERATION_REDUCTION_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_REDUCTION_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_OPERATION_RESAMPLE_BWD_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_RESAMPLE_BWD_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_OPERATION_RESAMPLE_FWD_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_RESAMPLE_FWD_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_OPERATION_RNG_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_RNG_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_OPERATION_SIGNAL_DESCRIPTOR", "MIOPEN_BACKEND_OPERATION_SIGNAL_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_POINTWISE_DESCRIPTOR", "MIOPEN_BACKEND_POINTWISE_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_REDUCTION_DESCRIPTOR", "MIOPEN_BACKEND_REDUCTION_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_RESAMPLE_DESCRIPTOR", "MIOPEN_BACKEND_RESAMPLE_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_RNG_DESCRIPTOR", "MIOPEN_BACKEND_RNG_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_TENSOR_DESCRIPTOR", "MIOPEN_BACKEND_TENSOR_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BACKEND_VARIANT_PACK_DESCRIPTOR", "MIOPEN_BACKEND_VARIANT_PACK_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_BATCHNORM_PER_ACTIVATION", "miopenBNPerActivation", "numeric_literal"); - subst("CUDNN_BATCHNORM_SPATIAL", "miopenBNSpatial", "numeric_literal"); - subst("CUDNN_BIDIRECTIONAL", "miopenRNNbidirection", "numeric_literal"); - subst("CUDNN_CONVOLUTION", "miopenConvolution", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_0", "miopenConvolutionBwdDataAlgoGEMM", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_1", "miopenConvolutionBwdDataAlgoDirect", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_COUNT", "miopenTransposeBwdDataAlgoGEMM", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_FFT", "miopenConvolutionBwdDataAlgoFFT", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_WINOGRAD", "miopenConvolutionBwdDataAlgoWinograd", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_ALGO_DIRECT", "miopenConvolutionFwdAlgoDirect", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_ALGO_FFT", "miopenConvolutionFwdAlgoFFT", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_ALGO_GEMM", "miopenConvolutionFwdAlgoGEMM", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_GEMM", "miopenConvolutionFwdAlgoImplicitGEMM", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_ALGO_WINOGRAD", "miopenConvolutionFwdAlgoWinograd", "numeric_literal"); - subst("CUDNN_CROSS_CORRELATION", "miopenConvolution", "numeric_literal"); - subst("CUDNN_CTC_LOSS_ALGO_DETERMINISTIC", "MIOPEN_CTC_LOSS_ALGO_DETERMINISTIC", "numeric_literal"); - subst("CUDNN_DATA_BFLOAT16", "miopenBFloat16", "numeric_literal"); - subst("CUDNN_DATA_DOUBLE", "miopenDouble", "numeric_literal"); - subst("CUDNN_DATA_FLOAT", "miopenFloat", "numeric_literal"); - subst("CUDNN_DATA_FP8_E4M3", "miopenFloat8", "numeric_literal"); - subst("CUDNN_DATA_FP8_E5M2", "miopenBFloat8", "numeric_literal"); - subst("CUDNN_DATA_HALF", "miopenHalf", "numeric_literal"); - subst("CUDNN_DATA_INT32", "miopenInt32", "numeric_literal"); - subst("CUDNN_DATA_INT64", "miopenInt64", "numeric_literal"); - subst("CUDNN_DATA_INT8", "miopenInt8", "numeric_literal"); - subst("CUDNN_DATA_INT8x4", "miopenInt8x4", "numeric_literal"); - subst("CUDNN_EDGE_VAL_PAD", "miopenPaddingValid", "numeric_literal"); - subst("CUDNN_FWD_MODE_INFERENCE", "miopenRNNInference", "numeric_literal"); - subst("CUDNN_FWD_MODE_TRAINING", "miopenRNNTraining", "numeric_literal"); - subst("CUDNN_GRU", "miopenGRU", "numeric_literal"); - subst("CUDNN_HEUR_MODES_COUNT", "MIOPEN_HEUR_MODES_COUNT", "numeric_literal"); - subst("CUDNN_HEUR_MODE_A", "MIOPEN_HEUR_MODE_A", "numeric_literal"); - subst("CUDNN_HEUR_MODE_B", "MIOPEN_HEUR_MODE_B", "numeric_literal"); - subst("CUDNN_HEUR_MODE_FALLBACK", "MIOPEN_HEUR_MODE_FALLBACK", "numeric_literal"); - subst("CUDNN_HEUR_MODE_INSTANT", "MIOPEN_HEUR_MODE_INSTANT", "numeric_literal"); - subst("CUDNN_LINEAR_INPUT", "miopenRNNlinear", "numeric_literal"); - subst("CUDNN_LRN_CROSS_CHANNEL_DIM1", "miopenLRNCrossChannel", "numeric_literal"); - subst("CUDNN_LSTM", "miopenLSTM", "numeric_literal"); - subst("CUDNN_NEG_INF_PAD", "miopenPaddingSame", "numeric_literal"); - subst("CUDNN_NOT_PROPAGATE_NAN", "MIOPEN_NOT_PROPAGATE_NAN", "numeric_literal"); - subst("CUDNN_OP_TENSOR_ADD", "miopenTensorOpAdd", "numeric_literal"); - subst("CUDNN_OP_TENSOR_MAX", "miopenTensorOpMax", "numeric_literal"); - subst("CUDNN_OP_TENSOR_MIN", "miopenTensorOpMin", "numeric_literal"); - subst("CUDNN_OP_TENSOR_MUL", "miopenTensorOpMul", "numeric_literal"); - subst("CUDNN_POINTWISE_ABS", "MIOPEN_POINTWISE_ABS", "numeric_literal"); - subst("CUDNN_POINTWISE_ADD", "MIOPEN_POINTWISE_ADD", "numeric_literal"); - subst("CUDNN_POINTWISE_ADD_SQUARE", "MIOPEN_POINTWISE_ADD_SQUARE", "numeric_literal"); - subst("CUDNN_POINTWISE_BINARY_SELECT", "MIOPEN_POINTWISE_BINARY_SELECT", "numeric_literal"); - subst("CUDNN_POINTWISE_CEIL", "MIOPEN_POINTWISE_CEIL", "numeric_literal"); - subst("CUDNN_POINTWISE_CMP_EQ", "MIOPEN_POINTWISE_CMP_EQ", "numeric_literal"); - subst("CUDNN_POINTWISE_CMP_GE", "MIOPEN_POINTWISE_CMP_GE", "numeric_literal"); - subst("CUDNN_POINTWISE_CMP_GT", "MIOPEN_POINTWISE_CMP_GT", "numeric_literal"); - subst("CUDNN_POINTWISE_CMP_LE", "MIOPEN_POINTWISE_CMP_LE", "numeric_literal"); - subst("CUDNN_POINTWISE_CMP_LT", "MIOPEN_POINTWISE_CMP_LT", "numeric_literal"); - subst("CUDNN_POINTWISE_CMP_NEQ", "MIOPEN_POINTWISE_CMP_NEQ", "numeric_literal"); - subst("CUDNN_POINTWISE_COS", "MIOPEN_POINTWISE_COS", "numeric_literal"); - subst("CUDNN_POINTWISE_DIV", "MIOPEN_POINTWISE_DIV", "numeric_literal"); - subst("CUDNN_POINTWISE_ELU_BWD", "MIOPEN_POINTWISE_ELU_BWD", "numeric_literal"); - subst("CUDNN_POINTWISE_ELU_FWD", "MIOPEN_POINTWISE_ELU_FWD", "numeric_literal"); - subst("CUDNN_POINTWISE_ERF", "MIOPEN_POINTWISE_ERF", "numeric_literal"); - subst("CUDNN_POINTWISE_EXP", "MIOPEN_POINTWISE_EXP", "numeric_literal"); - subst("CUDNN_POINTWISE_FLOOR", "MIOPEN_POINTWISE_FLOOR", "numeric_literal"); - subst("CUDNN_POINTWISE_GELU_APPROX_TANH_BWD", "MIOPEN_POINTWISE_GELU_APPROX_TANH_BWD", "numeric_literal"); - subst("CUDNN_POINTWISE_GELU_APPROX_TANH_FWD", "MIOPEN_POINTWISE_GELU_APPROX_TANH_FWD", "numeric_literal"); - subst("CUDNN_POINTWISE_GELU_BWD", "MIOPEN_POINTWISE_GELU_BWD", "numeric_literal"); - subst("CUDNN_POINTWISE_GELU_FWD", "MIOPEN_POINTWISE_GELU_FWD", "numeric_literal"); - subst("CUDNN_POINTWISE_GEN_INDEX", "MIOPEN_POINTWISE_GEN_INDEX", "numeric_literal"); - subst("CUDNN_POINTWISE_IDENTITY", "MIOPEN_POINTWISE_IDENTITY", "numeric_literal"); - subst("CUDNN_POINTWISE_LOG", "MIOPEN_POINTWISE_LOG", "numeric_literal"); - subst("CUDNN_POINTWISE_LOGICAL_AND", "MIOPEN_POINTWISE_LOGICAL_AND", "numeric_literal"); - subst("CUDNN_POINTWISE_LOGICAL_NOT", "MIOPEN_POINTWISE_LOGICAL_NOT", "numeric_literal"); - subst("CUDNN_POINTWISE_LOGICAL_OR", "MIOPEN_POINTWISE_LOGICAL_OR", "numeric_literal"); - subst("CUDNN_POINTWISE_MAX", "MIOPEN_POINTWISE_MAX", "numeric_literal"); - subst("CUDNN_POINTWISE_MIN", "MIOPEN_POINTWISE_MIN", "numeric_literal"); - subst("CUDNN_POINTWISE_MOD", "MIOPEN_POINTWISE_MOD", "numeric_literal"); - subst("CUDNN_POINTWISE_MUL", "MIOPEN_POINTWISE_MUL", "numeric_literal"); - subst("CUDNN_POINTWISE_NEG", "MIOPEN_POINTWISE_NEG", "numeric_literal"); - subst("CUDNN_POINTWISE_POW", "MIOPEN_POINTWISE_POW", "numeric_literal"); - subst("CUDNN_POINTWISE_RECIPROCAL", "MIOPEN_POINTWISE_RECIPROCAL", "numeric_literal"); - subst("CUDNN_POINTWISE_RELU_BWD", "MIOPEN_POINTWISE_RELU_BWD", "numeric_literal"); - subst("CUDNN_POINTWISE_RELU_FWD", "MIOPEN_POINTWISE_RELU_FWD", "numeric_literal"); - subst("CUDNN_POINTWISE_RSQRT", "MIOPEN_POINTWISE_RSQRT", "numeric_literal"); - subst("CUDNN_POINTWISE_SIGMOID_BWD", "MIOPEN_POINTWISE_SIGMOID_BWD", "numeric_literal"); - subst("CUDNN_POINTWISE_SIGMOID_FWD", "MIOPEN_POINTWISE_SIGMOID_FWD", "numeric_literal"); - subst("CUDNN_POINTWISE_SIN", "MIOPEN_POINTWISE_SIN", "numeric_literal"); - subst("CUDNN_POINTWISE_SOFTPLUS_BWD", "MIOPEN_POINTWISE_SOFTPLUS_BWD", "numeric_literal"); - subst("CUDNN_POINTWISE_SOFTPLUS_FWD", "MIOPEN_POINTWISE_SOFTPLUS_FWD", "numeric_literal"); - subst("CUDNN_POINTWISE_SQRT", "MIOPEN_POINTWISE_SQRT", "numeric_literal"); - subst("CUDNN_POINTWISE_SUB", "MIOPEN_POINTWISE_SUB", "numeric_literal"); - subst("CUDNN_POINTWISE_SWISH_BWD", "MIOPEN_POINTWISE_SWISH_BWD", "numeric_literal"); - subst("CUDNN_POINTWISE_SWISH_FWD", "MIOPEN_POINTWISE_SWISH_FWD", "numeric_literal"); - subst("CUDNN_POINTWISE_TAN", "MIOPEN_POINTWISE_TAN", "numeric_literal"); - subst("CUDNN_POINTWISE_TANH_BWD", "MIOPEN_POINTWISE_TANH_BWD", "numeric_literal"); - subst("CUDNN_POINTWISE_TANH_FWD", "MIOPEN_POINTWISE_TANH_FWD", "numeric_literal"); - subst("CUDNN_POOLING_AVERAGE_COUNT_EXCLUDE_PADDING", "miopenPoolingAverage", "numeric_literal"); - subst("CUDNN_POOLING_AVERAGE_COUNT_INCLUDE_PADDING", "miopenPoolingAverageInclusive", "numeric_literal"); - subst("CUDNN_POOLING_MAX", "miopenPoolingMax", "numeric_literal"); - subst("CUDNN_PROPAGATE_NAN", "MIOPEN_PROPAGATE_NAN", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_ADD", "MIOPEN_REDUCE_TENSOR_ADD", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_AMAX", "MIOPEN_REDUCE_TENSOR_AMAX", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_AVG", "MIOPEN_REDUCE_TENSOR_AVG", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_FLATTENED_INDICES", "MIOPEN_REDUCE_TENSOR_FLATTENED_INDICES", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_MAX", "MIOPEN_REDUCE_TENSOR_MAX", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_MIN", "MIOPEN_REDUCE_TENSOR_MIN", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_MUL", "MIOPEN_REDUCE_TENSOR_MUL", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_NORM1", "MIOPEN_REDUCE_TENSOR_NORM1", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_NORM2", "MIOPEN_REDUCE_TENSOR_NORM2", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_NO_INDICES", "MIOPEN_REDUCE_TENSOR_NO_INDICES", "numeric_literal"); - subst("CUDNN_RNG_DISTRIBUTION_BERNOULLI", "MIOPEN_RNG_DISTRIBUTION_BERNOULLI", "numeric_literal"); - subst("CUDNN_RNG_DISTRIBUTION_NORMAL", "MIOPEN_RNG_DISTRIBUTION_NORMAL", "numeric_literal"); - subst("CUDNN_RNG_DISTRIBUTION_UNIFORM", "MIOPEN_RNG_DISTRIBUTION_UNIFORM", "numeric_literal"); - subst("CUDNN_RNN_ALGO_STANDARD", "miopenRNNdefault", "numeric_literal"); - subst("CUDNN_RNN_DOUBLE_BIAS", "miopenRNNwithBias", "numeric_literal"); - subst("CUDNN_RNN_NO_BIAS", "miopenRNNNoBias", "numeric_literal"); - subst("CUDNN_RNN_PADDED_IO_DISABLED", "miopenRNNIONotPadded", "numeric_literal"); - subst("CUDNN_RNN_PADDED_IO_ENABLED", "miopenRNNIOWithPadding", "numeric_literal"); - subst("CUDNN_RNN_RELU", "miopenRNNRELU", "numeric_literal"); - subst("CUDNN_RNN_SINGLE_INP_BIAS", "miopenRNNwithBias", "numeric_literal"); - subst("CUDNN_RNN_SINGLE_REC_BIAS", "miopenRNNwithBias", "numeric_literal"); - subst("CUDNN_RNN_TANH", "miopenRNNTANH", "numeric_literal"); - subst("CUDNN_SKIP_INPUT", "miopenRNNskip", "numeric_literal"); - subst("CUDNN_SOFTMAX_ACCURATE", "MIOPEN_SOFTMAX_ACCURATE", "numeric_literal"); - subst("CUDNN_SOFTMAX_FAST", "MIOPEN_SOFTMAX_FAST", "numeric_literal"); - subst("CUDNN_SOFTMAX_LOG", "MIOPEN_SOFTMAX_LOG", "numeric_literal"); - subst("CUDNN_SOFTMAX_MODE_CHANNEL", "MIOPEN_SOFTMAX_MODE_CHANNEL", "numeric_literal"); - subst("CUDNN_SOFTMAX_MODE_INSTANCE", "MIOPEN_SOFTMAX_MODE_INSTANCE", "numeric_literal"); - subst("CUDNN_STATUS_ALLOC_FAILED", "miopenStatusAllocFailed", "numeric_literal"); - subst("CUDNN_STATUS_BAD_PARAM", "miopenStatusBadParm", "numeric_literal"); - subst("CUDNN_STATUS_INTERNAL_ERROR", "miopenStatusInternalError", "numeric_literal"); - subst("CUDNN_STATUS_INVALID_VALUE", "miopenStatusInvalidValue", "numeric_literal"); - subst("CUDNN_STATUS_NOT_INITIALIZED", "miopenStatusNotInitialized", "numeric_literal"); - subst("CUDNN_STATUS_NOT_SUPPORTED", "miopenStatusUnsupportedOp", "numeric_literal"); - subst("CUDNN_STATUS_SUCCESS", "miopenStatusSuccess", "numeric_literal"); - subst("CUDNN_STATUS_VERSION_MISMATCH", "miopenStatusVersionMismatch", "numeric_literal"); - subst("CUDNN_TENSOR_NCHW", "miopenTensorNCHW", "numeric_literal"); - subst("CUDNN_TENSOR_NHWC", "miopenTensorNHWC", "numeric_literal"); - subst("CUDNN_TYPE_ATTRIB_NAME", "MIOPEN_TYPE_ATTRIB_NAME", "numeric_literal"); - subst("CUDNN_TYPE_BACKEND_DESCRIPTOR", "MIOPEN_TYPE_BACKEND_DESCRIPTOR", "numeric_literal"); - subst("CUDNN_TYPE_BEHAVIOR_NOTE", "MIOPEN_TYPE_BEHAVIOR_NOTE", "numeric_literal"); - subst("CUDNN_TYPE_BN_FINALIZE_STATS_MODE", "MIOPEN_TYPE_BN_FINALIZE_STATS_MODE", "numeric_literal"); - subst("CUDNN_TYPE_BOOLEAN", "MIOPEN_TYPE_BOOLEAN", "numeric_literal"); - subst("CUDNN_TYPE_CHAR", "MIOPEN_TYPE_CHAR", "numeric_literal"); - subst("CUDNN_TYPE_CONVOLUTION_MODE", "MIOPEN_TYPE_CONVOLUTION_MODE", "numeric_literal"); - subst("CUDNN_TYPE_DATA_TYPE", "MIOPEN_TYPE_DATA_TYPE", "numeric_literal"); - subst("CUDNN_TYPE_DOUBLE", "MIOPEN_TYPE_DOUBLE", "numeric_literal"); - subst("CUDNN_TYPE_FLOAT", "MIOPEN_TYPE_FLOAT", "numeric_literal"); - subst("CUDNN_TYPE_FRACTION", "MIOPEN_TYPE_FRACTION", "numeric_literal"); - subst("CUDNN_TYPE_GENSTATS_MODE", "MIOPEN_TYPE_GENSTATS_MODE", "numeric_literal"); - subst("CUDNN_TYPE_HANDLE", "MIOPEN_TYPE_HANDLE", "numeric_literal"); - subst("CUDNN_TYPE_HEUR_MODE", "MIOPEN_TYPE_HEUR_MODE", "numeric_literal"); - subst("CUDNN_TYPE_INT32", "MIOPEN_TYPE_INT32", "numeric_literal"); - subst("CUDNN_TYPE_INT64", "MIOPEN_TYPE_INT64", "numeric_literal"); - subst("CUDNN_TYPE_KNOB_TYPE", "MIOPEN_TYPE_KNOB_TYPE", "numeric_literal"); - subst("CUDNN_TYPE_LAYOUT_TYPE", "MIOPEN_TYPE_LAYOUT_TYPE", "numeric_literal"); - subst("CUDNN_TYPE_NAN_PROPOGATION", "MIOPEN_TYPE_NAN_PROPOGATION", "numeric_literal"); - subst("CUDNN_TYPE_NORM_FWD_PHASE", "MIOPEN_TYPE_NORM_FWD_PHASE", "numeric_literal"); - subst("CUDNN_TYPE_NORM_MODE", "MIOPEN_TYPE_NORM_MODE", "numeric_literal"); - subst("CUDNN_TYPE_NUMERICAL_NOTE", "MIOPEN_TYPE_NUMERICAL_NOTE", "numeric_literal"); - subst("CUDNN_TYPE_PADDING_MODE", "MIOPEN_TYPE_PADDING_MODE", "numeric_literal"); - subst("CUDNN_TYPE_POINTWISE_MODE", "MIOPEN_TYPE_POINTWISE_MODE", "numeric_literal"); - subst("CUDNN_TYPE_REDUCTION_OPERATOR_TYPE", "MIOPEN_TYPE_REDUCTION_OPERATOR_TYPE", "numeric_literal"); - subst("CUDNN_TYPE_RESAMPLE_MODE", "MIOPEN_TYPE_RESAMPLE_MODE", "numeric_literal"); - subst("CUDNN_TYPE_RNG_DISTRIBUTION", "MIOPEN_TYPE_RNG_DISTRIBUTION", "numeric_literal"); - subst("CUDNN_TYPE_SIGNAL_MODE", "MIOPEN_TYPE_SIGNAL_MODE", "numeric_literal"); - subst("CUDNN_TYPE_TENSOR_REORDERING_MODE", "MIOPEN_TYPE_TENSOR_REORDERING_MODE", "numeric_literal"); - subst("CUDNN_TYPE_VOID_PTR", "MIOPEN_TYPE_VOID_PTR", "numeric_literal"); - subst("CUDNN_UNIDIRECTIONAL", "miopenRNNunidirection", "numeric_literal"); - subst("CUDNN_ZERO_PAD", "miopenPaddingDefault", "numeric_literal"); - subst("CURAND_DIRECTION_VECTORS_32_JOEKUO6", "ROCRAND_DIRECTION_VECTORS_32_JOEKUO6", "numeric_literal"); - subst("CURAND_DIRECTION_VECTORS_64_JOEKUO6", "ROCRAND_DIRECTION_VECTORS_64_JOEKUO6", "numeric_literal"); - subst("CURAND_ORDERING_PSEUDO_BEST", "ROCRAND_ORDERING_PSEUDO_BEST", "numeric_literal"); - subst("CURAND_ORDERING_PSEUDO_DEFAULT", "ROCRAND_ORDERING_PSEUDO_DEFAULT", "numeric_literal"); - subst("CURAND_ORDERING_PSEUDO_DYNAMIC", "ROCRAND_ORDERING_PSEUDO_DYNAMIC", "numeric_literal"); - subst("CURAND_ORDERING_PSEUDO_LEGACY", "ROCRAND_ORDERING_PSEUDO_LEGACY", "numeric_literal"); - subst("CURAND_ORDERING_PSEUDO_SEEDED", "ROCRAND_ORDERING_PSEUDO_SEEDED", "numeric_literal"); - subst("CURAND_ORDERING_QUASI_DEFAULT", "ROCRAND_ORDERING_QUASI_DEFAULT", "numeric_literal"); - subst("CURAND_RNG_PSEUDO_DEFAULT", "ROCRAND_RNG_PSEUDO_DEFAULT", "numeric_literal"); - subst("CURAND_RNG_PSEUDO_MRG32K3A", "ROCRAND_RNG_PSEUDO_MRG32K3A", "numeric_literal"); - subst("CURAND_RNG_PSEUDO_MT19937", "ROCRAND_RNG_PSEUDO_MT19937", "numeric_literal"); - subst("CURAND_RNG_PSEUDO_MTGP32", "ROCRAND_RNG_PSEUDO_MTGP32", "numeric_literal"); - subst("CURAND_RNG_PSEUDO_PHILOX4_32_10", "ROCRAND_RNG_PSEUDO_PHILOX4_32_10", "numeric_literal"); - subst("CURAND_RNG_PSEUDO_XORWOW", "ROCRAND_RNG_PSEUDO_XORWOW", "numeric_literal"); - subst("CURAND_RNG_QUASI_DEFAULT", "ROCRAND_RNG_QUASI_DEFAULT", "numeric_literal"); - subst("CURAND_RNG_QUASI_SCRAMBLED_SOBOL32", "ROCRAND_RNG_QUASI_SCRAMBLED_SOBOL32", "numeric_literal"); - subst("CURAND_RNG_QUASI_SCRAMBLED_SOBOL64", "ROCRAND_RNG_QUASI_SCRAMBLED_SOBOL64", "numeric_literal"); - subst("CURAND_RNG_QUASI_SOBOL32", "ROCRAND_RNG_QUASI_SOBOL32", "numeric_literal"); - subst("CURAND_RNG_QUASI_SOBOL64", "ROCRAND_RNG_QUASI_SOBOL64", "numeric_literal"); - subst("CURAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6", "ROCRAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6", "numeric_literal"); - subst("CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6", "ROCRAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6", "numeric_literal"); - subst("CURAND_STATUS_ALLOCATION_FAILED", "ROCRAND_STATUS_ALLOCATION_FAILED", "numeric_literal"); - subst("CURAND_STATUS_DOUBLE_PRECISION_REQUIRED", "ROCRAND_STATUS_DOUBLE_PRECISION_REQUIRED", "numeric_literal"); - subst("CURAND_STATUS_INTERNAL_ERROR", "ROCRAND_STATUS_INTERNAL_ERROR", "numeric_literal"); - subst("CURAND_STATUS_LAUNCH_FAILURE", "ROCRAND_STATUS_LAUNCH_FAILURE", "numeric_literal"); - subst("CURAND_STATUS_LENGTH_NOT_MULTIPLE", "ROCRAND_STATUS_LENGTH_NOT_MULTIPLE", "numeric_literal"); - subst("CURAND_STATUS_NOT_INITIALIZED", "ROCRAND_STATUS_NOT_CREATED", "numeric_literal"); - subst("CURAND_STATUS_OUT_OF_RANGE", "ROCRAND_STATUS_OUT_OF_RANGE", "numeric_literal"); - subst("CURAND_STATUS_SUCCESS", "ROCRAND_STATUS_SUCCESS", "numeric_literal"); - subst("CURAND_STATUS_TYPE_ERROR", "ROCRAND_STATUS_TYPE_ERROR", "numeric_literal"); - subst("CURAND_STATUS_VERSION_MISMATCH", "ROCRAND_STATUS_VERSION_MISMATCH", "numeric_literal"); - subst("CUSOLVER_EIG_MODE_NOVECTOR", "rocblas_evect_none", "numeric_literal"); - subst("CUSOLVER_EIG_MODE_VECTOR", "rocblas_evect_original", "numeric_literal"); - subst("CUSOLVER_EIG_RANGE_ALL", "rocblas_erange_all", "numeric_literal"); - subst("CUSOLVER_EIG_RANGE_I", "rocblas_erange_index", "numeric_literal"); - subst("CUSOLVER_EIG_RANGE_V", "rocblas_erange_value", "numeric_literal"); - subst("CUSOLVER_EIG_TYPE_1", "rocblas_eform_ax", "numeric_literal"); - subst("CUSOLVER_EIG_TYPE_2", "rocblas_eform_abx", "numeric_literal"); - subst("CUSOLVER_EIG_TYPE_3", "rocblas_eform_bax", "numeric_literal"); - subst("CUSOLVER_STATUS_ALLOC_FAILED", "rocblas_status_memory_error", "numeric_literal"); - subst("CUSOLVER_STATUS_ARCH_MISMATCH", "rocblas_status_arch_mismatch", "numeric_literal"); - subst("CUSOLVER_STATUS_EXECUTION_FAILED", "rocblas_status_not_implemented", "numeric_literal"); - subst("CUSOLVER_STATUS_INTERNAL_ERROR", "rocblas_status_internal_error", "numeric_literal"); - subst("CUSOLVER_STATUS_INVALID_VALUE", "rocblas_status_invalid_value", "numeric_literal"); - subst("CUSOLVER_STATUS_MAPPING_ERROR", "rocblas_status_not_implemented", "numeric_literal"); - subst("CUSOLVER_STATUS_NOT_INITIALIZED", "rocblas_status_invalid_handle", "numeric_literal"); - subst("CUSOLVER_STATUS_NOT_SUPPORTED", "rocblas_status_not_implemented", "numeric_literal"); - subst("CUSOLVER_STATUS_SUCCESS", "rocblas_status_success", "numeric_literal"); - subst("CUSOLVER_STATUS_ZERO_PIVOT", "rocblas_status_not_implemented", "numeric_literal"); - subst("CUSPARSE_ACTION_NUMERIC", "rocsparse_action_numeric", "numeric_literal"); - subst("CUSPARSE_ACTION_SYMBOLIC", "rocsparse_action_symbolic", "numeric_literal"); - subst("CUSPARSE_DENSETOSPARSE_ALG_DEFAULT", "rocsparse_dense_to_sparse_alg_default", "numeric_literal"); - subst("CUSPARSE_DIAG_TYPE_NON_UNIT", "rocsparse_diag_type_non_unit", "numeric_literal"); - subst("CUSPARSE_DIAG_TYPE_UNIT", "rocsparse_diag_type_unit", "numeric_literal"); - subst("CUSPARSE_DIRECTION_COLUMN", "rocsparse_direction_column", "numeric_literal"); - subst("CUSPARSE_DIRECTION_ROW", "rocsparse_direction_row", "numeric_literal"); - subst("CUSPARSE_FILL_MODE_LOWER", "rocsparse_fill_mode_lower", "numeric_literal"); - subst("CUSPARSE_FILL_MODE_UPPER", "rocsparse_fill_mode_upper", "numeric_literal"); - subst("CUSPARSE_FORMAT_BLOCKED_ELL", "rocsparse_format_bell", "numeric_literal"); - subst("CUSPARSE_FORMAT_BSR", "rocsparse_format_bsr", "numeric_literal"); - subst("CUSPARSE_FORMAT_COO", "rocsparse_format_coo", "numeric_literal"); - subst("CUSPARSE_FORMAT_COO_AOS", "rocsparse_format_coo_aos", "numeric_literal"); - subst("CUSPARSE_FORMAT_CSC", "rocsparse_format_csc", "numeric_literal"); - subst("CUSPARSE_FORMAT_CSR", "rocsparse_format_csr", "numeric_literal"); - subst("CUSPARSE_FORMAT_SLICED_ELLPACK", "rocsparse_format_ell", "numeric_literal"); - subst("CUSPARSE_HYB_PARTITION_AUTO", "rocsparse_hyb_partition_auto", "numeric_literal"); - subst("CUSPARSE_HYB_PARTITION_MAX", "rocsparse_hyb_partition_max", "numeric_literal"); - subst("CUSPARSE_HYB_PARTITION_USER", "rocsparse_hyb_partition_user", "numeric_literal"); - subst("CUSPARSE_INDEX_16U", "rocsparse_indextype_u16", "numeric_literal"); - subst("CUSPARSE_INDEX_32I", "rocsparse_indextype_i32", "numeric_literal"); - subst("CUSPARSE_INDEX_64I", "rocsparse_indextype_i64", "numeric_literal"); - subst("CUSPARSE_INDEX_BASE_ONE", "rocsparse_index_base_one", "numeric_literal"); - subst("CUSPARSE_INDEX_BASE_ZERO", "rocsparse_index_base_zero", "numeric_literal"); - subst("CUSPARSE_MATRIX_TYPE_GENERAL", "rocsparse_matrix_type_general", "numeric_literal"); - subst("CUSPARSE_MATRIX_TYPE_HERMITIAN", "rocsparse_matrix_type_hermitian", "numeric_literal"); - subst("CUSPARSE_MATRIX_TYPE_SYMMETRIC", "rocsparse_matrix_type_symmetric", "numeric_literal"); - subst("CUSPARSE_MATRIX_TYPE_TRIANGULAR", "rocsparse_matrix_type_triangular", "numeric_literal"); - subst("CUSPARSE_OPERATION_CONJUGATE_TRANSPOSE", "rocsparse_operation_conjugate_transpose", "numeric_literal"); - subst("CUSPARSE_OPERATION_NON_TRANSPOSE", "rocsparse_operation_none", "numeric_literal"); - subst("CUSPARSE_OPERATION_TRANSPOSE", "rocsparse_operation_transpose", "numeric_literal"); - subst("CUSPARSE_ORDER_COL", "rocsparse_order_row", "numeric_literal"); - subst("CUSPARSE_ORDER_ROW", "rocsparse_order_column", "numeric_literal"); - subst("CUSPARSE_POINTER_MODE_DEVICE", "rocsparse_pointer_mode_device", "numeric_literal"); - subst("CUSPARSE_POINTER_MODE_HOST", "rocsparse_pointer_mode_host", "numeric_literal"); - subst("CUSPARSE_SDDMM_ALG_DEFAULT", "rocsparse_sddmm_alg_default", "numeric_literal"); - subst("CUSPARSE_SOLVE_POLICY_NO_LEVEL", "rocsparse_solve_policy_auto", "numeric_literal"); - subst("CUSPARSE_SOLVE_POLICY_USE_LEVEL", "rocsparse_solve_policy_auto", "numeric_literal"); - subst("CUSPARSE_SPARSETODENSE_ALG_DEFAULT", "rocsparse_sparse_to_dense_alg_default", "numeric_literal"); - subst("CUSPARSE_SPGEMM_DEFAULT", "rocsparse_spgemm_alg_default", "numeric_literal"); - subst("CUSPARSE_SPMAT_DIAG_TYPE", "rocsparse_spmat_diag_type", "numeric_literal"); - subst("CUSPARSE_SPMAT_FILL_MODE", "rocsparse_spmat_fill_mode", "numeric_literal"); - subst("CUSPARSE_SPMM_ALG_DEFAULT", "rocsparse_spmm_alg_default", "numeric_literal"); - subst("CUSPARSE_SPMM_BLOCKED_ELL_ALG1", "rocsparse_spmm_alg_bell", "numeric_literal"); - subst("CUSPARSE_SPMM_COO_ALG1", "rocsparse_spmm_alg_coo_segmented", "numeric_literal"); - subst("CUSPARSE_SPMM_COO_ALG2", "rocsparse_spmm_alg_coo_atomic", "numeric_literal"); - subst("CUSPARSE_SPMM_COO_ALG3", "rocsparse_spmm_alg_coo_segmented_atomic", "numeric_literal"); - subst("CUSPARSE_SPMM_CSR_ALG1", "rocsparse_spmm_alg_csr", "numeric_literal"); - subst("CUSPARSE_SPMM_CSR_ALG2", "rocsparse_spmm_alg_csr_row_split", "numeric_literal"); - subst("CUSPARSE_SPMM_CSR_ALG3", "rocsparse_spmm_alg_csr_merge", "numeric_literal"); - subst("CUSPARSE_SPMV_ALG_DEFAULT", "rocsparse_spmv_alg_default", "numeric_literal"); - subst("CUSPARSE_SPMV_COO_ALG1", "rocsparse_spmv_alg_coo", "numeric_literal"); - subst("CUSPARSE_SPMV_COO_ALG2", "rocsparse_spmv_alg_coo_atomic", "numeric_literal"); - subst("CUSPARSE_SPMV_CSR_ALG1", "rocsparse_spmv_alg_csr_adaptive", "numeric_literal"); - subst("CUSPARSE_SPMV_CSR_ALG2", "rocsparse_spmv_alg_csr_stream", "numeric_literal"); - subst("CUSPARSE_SPMV_SELL_ALG1", "rocsparse_spmv_alg_ell", "numeric_literal"); - subst("CUSPARSE_SPSM_ALG_DEFAULT", "rocsparse_spsm_alg_default", "numeric_literal"); - subst("CUSPARSE_SPSV_ALG_DEFAULT", "rocsparse_spsv_alg_default", "numeric_literal"); - subst("CUSPARSE_STATUS_ALLOC_FAILED", "rocsparse_status_memory_error", "numeric_literal"); - subst("CUSPARSE_STATUS_ARCH_MISMATCH", "rocsparse_status_arch_mismatch", "numeric_literal"); - subst("CUSPARSE_STATUS_INTERNAL_ERROR", "rocsparse_status_internal_error", "numeric_literal"); - subst("CUSPARSE_STATUS_INVALID_VALUE", "rocsparse_status_invalid_value", "numeric_literal"); - subst("CUSPARSE_STATUS_NOT_INITIALIZED", "rocsparse_status_not_initialized", "numeric_literal"); - subst("CUSPARSE_STATUS_NOT_SUPPORTED", "rocsparse_status_not_implemented", "numeric_literal"); - subst("CUSPARSE_STATUS_SUCCESS", "rocsparse_status_success", "numeric_literal"); - subst("CUSPARSE_STATUS_ZERO_PIVOT", "rocsparse_status_zero_pivot", "numeric_literal"); - subst("cudnnForwardMode_t", "miopenRNNFWDMode_t", "numeric_literal"); - subst("cusolver_int_t", "rocblas_int", "numeric_literal"); -} - -sub simpleSubstitutions { - subst("cuGetErrorName", "hipDrvGetErrorName", "error"); - subst("cuGetErrorString", "hipDrvGetErrorString", "error"); - subst("cudaGetErrorName", "hipGetErrorName", "error"); - subst("cudaGetErrorString", "hipGetErrorString", "error"); - subst("cudaGetLastError", "hipGetLastError", "error"); - subst("cudaPeekAtLastError", "hipPeekAtLastError", "error"); - subst("cuInit", "hipInit", "init"); - subst("cuDriverGetVersion", "hipDriverGetVersion", "version"); - subst("cudaDriverGetVersion", "hipDriverGetVersion", "version"); - subst("cudaRuntimeGetVersion", "hipRuntimeGetVersion", "version"); - subst("cuDeviceComputeCapability", "hipDeviceComputeCapability", "device"); - subst("cuDeviceGet", "hipDeviceGet", "device"); - subst("cuDeviceGetAttribute", "hipDeviceGetAttribute", "device"); - subst("cuDeviceGetCount", "hipGetDeviceCount", "device"); - subst("cuDeviceGetDefaultMemPool", "hipDeviceGetDefaultMemPool", "device"); - subst("cuDeviceGetMemPool", "hipDeviceGetMemPool", "device"); - subst("cuDeviceGetName", "hipDeviceGetName", "device"); - subst("cuDeviceGetUuid", "hipDeviceGetUuid", "device"); - subst("cuDeviceGetUuid_v2", "hipDeviceGetUuid", "device"); - subst("cuDeviceSetMemPool", "hipDeviceSetMemPool", "device"); - subst("cuDeviceTotalMem", "hipDeviceTotalMem", "device"); - subst("cuDeviceTotalMem_v2", "hipDeviceTotalMem", "device"); - subst("cudaChooseDevice", "hipChooseDevice", "device"); - subst("cudaDeviceGetAttribute", "hipDeviceGetAttribute", "device"); - subst("cudaDeviceGetByPCIBusId", "hipDeviceGetByPCIBusId", "device"); - subst("cudaDeviceGetCacheConfig", "hipDeviceGetCacheConfig", "device"); - subst("cudaDeviceGetDefaultMemPool", "hipDeviceGetDefaultMemPool", "device"); - subst("cudaDeviceGetLimit", "hipDeviceGetLimit", "device"); - subst("cudaDeviceGetMemPool", "hipDeviceGetMemPool", "device"); - subst("cudaDeviceGetP2PAttribute", "hipDeviceGetP2PAttribute", "device"); - subst("cudaDeviceGetPCIBusId", "hipDeviceGetPCIBusId", "device"); - subst("cudaDeviceGetSharedMemConfig", "hipDeviceGetSharedMemConfig", "device"); - subst("cudaDeviceGetStreamPriorityRange", "hipDeviceGetStreamPriorityRange", "device"); - subst("cudaDeviceReset", "hipDeviceReset", "device"); - subst("cudaDeviceSetCacheConfig", "hipDeviceSetCacheConfig", "device"); - subst("cudaDeviceSetLimit", "hipDeviceSetLimit", "device"); - subst("cudaDeviceSetMemPool", "hipDeviceSetMemPool", "device"); - subst("cudaDeviceSetSharedMemConfig", "hipDeviceSetSharedMemConfig", "device"); - subst("cudaDeviceSynchronize", "hipDeviceSynchronize", "device"); - subst("cudaGetDevice", "hipGetDevice", "device"); - subst("cudaGetDeviceCount", "hipGetDeviceCount", "device"); - subst("cudaGetDeviceFlags", "hipGetDeviceFlags", "device"); - subst("cudaGetDeviceProperties", "hipGetDeviceProperties", "device"); - subst("cudaIpcCloseMemHandle", "hipIpcCloseMemHandle", "device"); - subst("cudaIpcGetEventHandle", "hipIpcGetEventHandle", "device"); - subst("cudaIpcGetMemHandle", "hipIpcGetMemHandle", "device"); - subst("cudaIpcOpenEventHandle", "hipIpcOpenEventHandle", "device"); - subst("cudaIpcOpenMemHandle", "hipIpcOpenMemHandle", "device"); - subst("cudaSetDevice", "hipSetDevice", "device"); - subst("cudaSetDeviceFlags", "hipSetDeviceFlags", "device"); - subst("cudaSetValidDevices", "hipSetValidDevices", "device"); - subst("cuCtxCreate", "hipCtxCreate", "context"); - subst("cuCtxCreate_v2", "hipCtxCreate", "context"); - subst("cuCtxDestroy", "hipCtxDestroy", "context"); - subst("cuCtxDestroy_v2", "hipCtxDestroy", "context"); - subst("cuCtxGetApiVersion", "hipCtxGetApiVersion", "context"); - subst("cuCtxGetCacheConfig", "hipCtxGetCacheConfig", "context"); - subst("cuCtxGetCurrent", "hipCtxGetCurrent", "context"); - subst("cuCtxGetDevice", "hipCtxGetDevice", "context"); - subst("cuCtxGetFlags", "hipCtxGetFlags", "context"); - subst("cuCtxGetLimit", "hipDeviceGetLimit", "context"); - subst("cuCtxGetSharedMemConfig", "hipCtxGetSharedMemConfig", "context"); - subst("cuCtxGetStreamPriorityRange", "hipDeviceGetStreamPriorityRange", "context"); - subst("cuCtxPopCurrent", "hipCtxPopCurrent", "context"); - subst("cuCtxPopCurrent_v2", "hipCtxPopCurrent", "context"); - subst("cuCtxPushCurrent", "hipCtxPushCurrent", "context"); - subst("cuCtxPushCurrent_v2", "hipCtxPushCurrent", "context"); - subst("cuCtxSetCacheConfig", "hipCtxSetCacheConfig", "context"); - subst("cuCtxSetCurrent", "hipCtxSetCurrent", "context"); - subst("cuCtxSetLimit", "hipDeviceSetLimit", "context"); - subst("cuCtxSetSharedMemConfig", "hipCtxSetSharedMemConfig", "context"); - subst("cuCtxSynchronize", "hipCtxSynchronize", "context"); - subst("cuDevicePrimaryCtxGetState", "hipDevicePrimaryCtxGetState", "context"); - subst("cuDevicePrimaryCtxRelease", "hipDevicePrimaryCtxRelease", "context"); - subst("cuDevicePrimaryCtxRelease_v2", "hipDevicePrimaryCtxRelease", "context"); - subst("cuDevicePrimaryCtxReset", "hipDevicePrimaryCtxReset", "context"); - subst("cuDevicePrimaryCtxReset_v2", "hipDevicePrimaryCtxReset", "context"); - subst("cuDevicePrimaryCtxRetain", "hipDevicePrimaryCtxRetain", "context"); - subst("cuDevicePrimaryCtxSetFlags", "hipDevicePrimaryCtxSetFlags", "context"); - subst("cuDevicePrimaryCtxSetFlags_v2", "hipDevicePrimaryCtxSetFlags", "context"); - subst("cuLinkAddData", "hiprtcLinkAddData", "module"); - subst("cuLinkAddData_v2", "hiprtcLinkAddData", "module"); - subst("cuLinkAddFile", "hiprtcLinkAddFile", "module"); - subst("cuLinkAddFile_v2", "hiprtcLinkAddFile", "module"); - subst("cuLinkComplete", "hiprtcLinkComplete", "module"); - subst("cuLinkCreate", "hiprtcLinkCreate", "module"); - subst("cuLinkCreate_v2", "hiprtcLinkCreate", "module"); - subst("cuLinkDestroy", "hiprtcLinkDestroy", "module"); - subst("cuModuleGetFunction", "hipModuleGetFunction", "module"); - subst("cuModuleGetGlobal", "hipModuleGetGlobal", "module"); - subst("cuModuleGetGlobal_v2", "hipModuleGetGlobal", "module"); - subst("cuModuleGetTexRef", "hipModuleGetTexRef", "module"); - subst("cuModuleLoad", "hipModuleLoad", "module"); - subst("cuModuleLoadData", "hipModuleLoadData", "module"); - subst("cuModuleLoadDataEx", "hipModuleLoadDataEx", "module"); - subst("cuModuleUnload", "hipModuleUnload", "module"); - subst("cuArray3DCreate", "hipArray3DCreate", "memory"); - subst("cuArray3DCreate_v2", "hipArray3DCreate", "memory"); - subst("cuArray3DGetDescriptor", "hipArray3DGetDescriptor", "memory"); - subst("cuArray3DGetDescriptor_v2", "hipArray3DGetDescriptor", "memory"); - subst("cuArrayCreate", "hipArrayCreate", "memory"); - subst("cuArrayCreate_v2", "hipArrayCreate", "memory"); - subst("cuArrayDestroy", "hipArrayDestroy", "memory"); - subst("cuArrayGetDescriptor", "hipArrayGetDescriptor", "memory"); - subst("cuArrayGetDescriptor_v2", "hipArrayGetDescriptor", "memory"); - subst("cuDeviceGetByPCIBusId", "hipDeviceGetByPCIBusId", "memory"); - subst("cuDeviceGetPCIBusId", "hipDeviceGetPCIBusId", "memory"); - subst("cuIpcCloseMemHandle", "hipIpcCloseMemHandle", "memory"); - subst("cuIpcGetEventHandle", "hipIpcGetEventHandle", "memory"); - subst("cuIpcGetMemHandle", "hipIpcGetMemHandle", "memory"); - subst("cuIpcOpenEventHandle", "hipIpcOpenEventHandle", "memory"); - subst("cuIpcOpenMemHandle", "hipIpcOpenMemHandle", "memory"); - subst("cuMemAlloc", "hipMalloc", "memory"); - subst("cuMemAllocHost", "hipMemAllocHost", "memory"); - subst("cuMemAllocHost_v2", "hipMemAllocHost", "memory"); - subst("cuMemAllocManaged", "hipMallocManaged", "memory"); - subst("cuMemAllocPitch", "hipMemAllocPitch", "memory"); - subst("cuMemAllocPitch_v2", "hipMemAllocPitch", "memory"); - subst("cuMemAlloc_v2", "hipMalloc", "memory"); - subst("cuMemFree", "hipFree", "memory"); - subst("cuMemFreeHost", "hipHostFree", "memory"); - subst("cuMemFree_v2", "hipFree", "memory"); - subst("cuMemGetAddressRange", "hipMemGetAddressRange", "memory"); - subst("cuMemGetAddressRange_v2", "hipMemGetAddressRange", "memory"); - subst("cuMemGetInfo", "hipMemGetInfo", "memory"); - subst("cuMemGetInfo_v2", "hipMemGetInfo", "memory"); - subst("cuMemHostAlloc", "hipHostAlloc", "memory"); - subst("cuMemHostGetDevicePointer", "hipHostGetDevicePointer", "memory"); - subst("cuMemHostGetDevicePointer_v2", "hipHostGetDevicePointer", "memory"); - subst("cuMemHostGetFlags", "hipHostGetFlags", "memory"); - subst("cuMemHostRegister", "hipHostRegister", "memory"); - subst("cuMemHostRegister_v2", "hipHostRegister", "memory"); - subst("cuMemHostUnregister", "hipHostUnregister", "memory"); - subst("cuMemcpy2D", "hipMemcpyParam2D", "memory"); - subst("cuMemcpy2DAsync", "hipMemcpyParam2DAsync", "memory"); - subst("cuMemcpy2DAsync_v2", "hipMemcpyParam2DAsync", "memory"); - subst("cuMemcpy2DUnaligned", "hipDrvMemcpy2DUnaligned", "memory"); - subst("cuMemcpy2DUnaligned_v2", "hipDrvMemcpy2DUnaligned", "memory"); - subst("cuMemcpy2D_v2", "hipMemcpyParam2D", "memory"); - subst("cuMemcpy3D", "hipDrvMemcpy3D", "memory"); - subst("cuMemcpy3DAsync", "hipDrvMemcpy3DAsync", "memory"); - subst("cuMemcpy3DAsync_v2", "hipDrvMemcpy3DAsync", "memory"); - subst("cuMemcpy3D_v2", "hipDrvMemcpy3D", "memory"); - subst("cuMemcpyAtoA", "hipMemcpyAtoA", "memory"); - subst("cuMemcpyAtoA_v2", "hipMemcpyAtoA", "memory"); - subst("cuMemcpyAtoD", "hipMemcpyAtoD", "memory"); - subst("cuMemcpyAtoD_v2", "hipMemcpyAtoD", "memory"); - subst("cuMemcpyAtoH", "hipMemcpyAtoH", "memory"); - subst("cuMemcpyAtoHAsync", "hipMemcpyAtoHAsync", "memory"); - subst("cuMemcpyAtoHAsync_v2", "hipMemcpyAtoHAsync", "memory"); - subst("cuMemcpyAtoH_v2", "hipMemcpyAtoH", "memory"); - subst("cuMemcpyDtoA", "hipMemcpyDtoA", "memory"); - subst("cuMemcpyDtoA_v2", "hipMemcpyDtoA", "memory"); - subst("cuMemcpyDtoD", "hipMemcpyDtoD", "memory"); - subst("cuMemcpyDtoDAsync", "hipMemcpyDtoDAsync", "memory"); - subst("cuMemcpyDtoDAsync_v2", "hipMemcpyDtoDAsync", "memory"); - subst("cuMemcpyDtoD_v2", "hipMemcpyDtoD", "memory"); - subst("cuMemcpyDtoH", "hipMemcpyDtoH", "memory"); - subst("cuMemcpyDtoHAsync", "hipMemcpyDtoHAsync", "memory"); - subst("cuMemcpyDtoHAsync_v2", "hipMemcpyDtoHAsync", "memory"); - subst("cuMemcpyDtoH_v2", "hipMemcpyDtoH", "memory"); - subst("cuMemcpyHtoA", "hipMemcpyHtoA", "memory"); - subst("cuMemcpyHtoAAsync", "hipMemcpyHtoAAsync", "memory"); - subst("cuMemcpyHtoAAsync_v2", "hipMemcpyHtoAAsync", "memory"); - subst("cuMemcpyHtoA_v2", "hipMemcpyHtoA", "memory"); - subst("cuMemcpyHtoD", "hipMemcpyHtoD", "memory"); - subst("cuMemcpyHtoDAsync", "hipMemcpyHtoDAsync", "memory"); - subst("cuMemcpyHtoDAsync_v2", "hipMemcpyHtoDAsync", "memory"); - subst("cuMemcpyHtoD_v2", "hipMemcpyHtoD", "memory"); - subst("cuMemsetD16", "hipMemsetD16", "memory"); - subst("cuMemsetD16Async", "hipMemsetD16Async", "memory"); - subst("cuMemsetD16_v2", "hipMemsetD16", "memory"); - subst("cuMemsetD32", "hipMemsetD32", "memory"); - subst("cuMemsetD32Async", "hipMemsetD32Async", "memory"); - subst("cuMemsetD32_v2", "hipMemsetD32", "memory"); - subst("cuMemsetD8", "hipMemsetD8", "memory"); - subst("cuMemsetD8Async", "hipMemsetD8Async", "memory"); - subst("cuMemsetD8_v2", "hipMemsetD8", "memory"); - subst("cuMipmappedArrayCreate", "hipMipmappedArrayCreate", "memory"); - subst("cuMipmappedArrayDestroy", "hipMipmappedArrayDestroy", "memory"); - subst("cuMipmappedArrayGetLevel", "hipMipmappedArrayGetLevel", "memory"); - subst("cudaArrayGetInfo", "hipArrayGetInfo", "memory"); - subst("cudaFree", "hipFree", "memory"); - subst("cudaFreeArray", "hipFreeArray", "memory"); - subst("cudaFreeAsync", "hipFreeAsync", "memory"); - subst("cudaFreeHost", "hipHostFree", "memory"); - subst("cudaFreeMipmappedArray", "hipFreeMipmappedArray", "memory"); - subst("cudaGetMipmappedArrayLevel", "hipGetMipmappedArrayLevel", "memory"); - subst("cudaGetSymbolAddress", "hipGetSymbolAddress", "memory"); - subst("cudaGetSymbolSize", "hipGetSymbolSize", "memory"); - subst("cudaHostAlloc", "hipHostAlloc", "memory"); - subst("cudaHostGetDevicePointer", "hipHostGetDevicePointer", "memory"); - subst("cudaHostGetFlags", "hipHostGetFlags", "memory"); - subst("cudaHostRegister", "hipHostRegister", "memory"); - subst("cudaHostUnregister", "hipHostUnregister", "memory"); - subst("cudaMalloc", "hipMalloc", "memory"); - subst("cudaMalloc3D", "hipMalloc3D", "memory"); - subst("cudaMalloc3DArray", "hipMalloc3DArray", "memory"); - subst("cudaMallocArray", "hipMallocArray", "memory"); - subst("cudaMallocAsync", "hipMallocAsync", "memory"); - subst("cudaMallocFromPoolAsync", "hipMallocFromPoolAsync", "memory"); - subst("cudaMallocHost", "hipHostMalloc", "memory"); - subst("cudaMallocManaged", "hipMallocManaged", "memory"); - subst("cudaMallocMipmappedArray", "hipMallocMipmappedArray", "memory"); - subst("cudaMallocPitch", "hipMallocPitch", "memory"); - subst("cudaMemAdvise", "hipMemAdvise", "memory"); - subst("cudaMemGetInfo", "hipMemGetInfo", "memory"); - subst("cudaMemPoolCreate", "hipMemPoolCreate", "memory"); - subst("cudaMemPoolDestroy", "hipMemPoolDestroy", "memory"); - subst("cudaMemPoolExportPointer", "hipMemPoolExportPointer", "memory"); - subst("cudaMemPoolExportToShareableHandle", "hipMemPoolExportToShareableHandle", "memory"); - subst("cudaMemPoolGetAccess", "hipMemPoolGetAccess", "memory"); - subst("cudaMemPoolGetAttribute", "hipMemPoolGetAttribute", "memory"); - subst("cudaMemPoolImportFromShareableHandle", "hipMemPoolImportFromShareableHandle", "memory"); - subst("cudaMemPoolImportPointer", "hipMemPoolImportPointer", "memory"); - subst("cudaMemPoolSetAccess", "hipMemPoolSetAccess", "memory"); - subst("cudaMemPoolSetAttribute", "hipMemPoolSetAttribute", "memory"); - subst("cudaMemPoolTrimTo", "hipMemPoolTrimTo", "memory"); - subst("cudaMemPrefetchAsync", "hipMemPrefetchAsync", "memory"); - subst("cudaMemRangeGetAttribute", "hipMemRangeGetAttribute", "memory"); - subst("cudaMemRangeGetAttributes", "hipMemRangeGetAttributes", "memory"); - subst("cudaMemcpy", "hipMemcpy", "memory"); - subst("cudaMemcpy2D", "hipMemcpy2D", "memory"); - subst("cudaMemcpy2DArrayToArray", "hipMemcpy2DArrayToArray", "memory"); - subst("cudaMemcpy2DAsync", "hipMemcpy2DAsync", "memory"); - subst("cudaMemcpy2DFromArray", "hipMemcpy2DFromArray", "memory"); - subst("cudaMemcpy2DFromArrayAsync", "hipMemcpy2DFromArrayAsync", "memory"); - subst("cudaMemcpy2DToArray", "hipMemcpy2DToArray", "memory"); - subst("cudaMemcpy2DToArrayAsync", "hipMemcpy2DToArrayAsync", "memory"); - subst("cudaMemcpy3D", "hipMemcpy3D", "memory"); - subst("cudaMemcpy3DAsync", "hipMemcpy3DAsync", "memory"); - subst("cudaMemcpyAsync", "hipMemcpyAsync", "memory"); - subst("cudaMemcpyFromArray", "hipMemcpyFromArray", "memory"); - subst("cudaMemcpyFromSymbol", "hipMemcpyFromSymbol", "memory"); - subst("cudaMemcpyFromSymbolAsync", "hipMemcpyFromSymbolAsync", "memory"); - subst("cudaMemcpyPeer", "hipMemcpyPeer", "memory"); - subst("cudaMemcpyPeerAsync", "hipMemcpyPeerAsync", "memory"); - subst("cudaMemcpyToArray", "hipMemcpyToArray", "memory"); - subst("cudaMemcpyToSymbol", "hipMemcpyToSymbol", "memory"); - subst("cudaMemcpyToSymbolAsync", "hipMemcpyToSymbolAsync", "memory"); - subst("cudaMemset", "hipMemset", "memory"); - subst("cudaMemset2D", "hipMemset2D", "memory"); - subst("cudaMemset2DAsync", "hipMemset2DAsync", "memory"); - subst("cudaMemset3D", "hipMemset3D", "memory"); - subst("cudaMemset3DAsync", "hipMemset3DAsync", "memory"); - subst("cudaMemsetAsync", "hipMemsetAsync", "memory"); - subst("make_cudaExtent", "make_hipExtent", "memory"); - subst("make_cudaPitchedPtr", "make_hipPitchedPtr", "memory"); - subst("make_cudaPos", "make_hipPos", "memory"); - subst("cuMemAddressFree", "hipMemAddressFree", "virtual_memory"); - subst("cuMemAddressReserve", "hipMemAddressReserve", "virtual_memory"); - subst("cuMemCreate", "hipMemCreate", "virtual_memory"); - subst("cuMemExportToShareableHandle", "hipMemExportToShareableHandle", "virtual_memory"); - subst("cuMemGetAccess", "hipMemGetAccess", "virtual_memory"); - subst("cuMemGetAllocationGranularity", "hipMemGetAllocationGranularity", "virtual_memory"); - subst("cuMemGetAllocationPropertiesFromHandle", "hipMemGetAllocationPropertiesFromHandle", "virtual_memory"); - subst("cuMemImportFromShareableHandle", "hipMemImportFromShareableHandle", "virtual_memory"); - subst("cuMemMap", "hipMemMap", "virtual_memory"); - subst("cuMemMapArrayAsync", "hipMemMapArrayAsync", "virtual_memory"); - subst("cuMemRelease", "hipMemRelease", "virtual_memory"); - subst("cuMemRetainAllocationHandle", "hipMemRetainAllocationHandle", "virtual_memory"); - subst("cuMemSetAccess", "hipMemSetAccess", "virtual_memory"); - subst("cuMemUnmap", "hipMemUnmap", "virtual_memory"); - subst("cuMemAllocAsync", "hipMallocAsync", "ordered_memory"); - subst("cuMemAllocFromPoolAsync", "hipMallocFromPoolAsync", "ordered_memory"); - subst("cuMemFreeAsync", "hipFreeAsync", "ordered_memory"); - subst("cuMemPoolCreate", "hipMemPoolCreate", "ordered_memory"); - subst("cuMemPoolDestroy", "hipMemPoolDestroy", "ordered_memory"); - subst("cuMemPoolExportPointer", "hipMemPoolExportPointer", "ordered_memory"); - subst("cuMemPoolExportToShareableHandle", "hipMemPoolExportToShareableHandle", "ordered_memory"); - subst("cuMemPoolGetAccess", "hipMemPoolGetAccess", "ordered_memory"); - subst("cuMemPoolGetAttribute", "hipMemPoolGetAttribute", "ordered_memory"); - subst("cuMemPoolImportFromShareableHandle", "hipMemPoolImportFromShareableHandle", "ordered_memory"); - subst("cuMemPoolImportPointer", "hipMemPoolImportPointer", "ordered_memory"); - subst("cuMemPoolSetAccess", "hipMemPoolSetAccess", "ordered_memory"); - subst("cuMemPoolSetAttribute", "hipMemPoolSetAttribute", "ordered_memory"); - subst("cuMemPoolTrimTo", "hipMemPoolTrimTo", "ordered_memory"); - subst("cuMemAdvise", "hipMemAdvise", "unified"); - subst("cuMemPrefetchAsync", "hipMemPrefetchAsync", "unified"); - subst("cuMemRangeGetAttribute", "hipMemRangeGetAttribute", "unified"); - subst("cuMemRangeGetAttributes", "hipMemRangeGetAttributes", "unified"); - subst("cuPointerGetAttribute", "hipPointerGetAttribute", "unified"); - subst("cuPointerGetAttributes", "hipDrvPointerGetAttributes", "unified"); - subst("cuPointerSetAttribute", "hipPointerSetAttribute", "unified"); - subst("cudaPointerGetAttributes", "hipPointerGetAttributes", "unified"); - subst("cuStreamAddCallback", "hipStreamAddCallback", "stream"); - subst("cuStreamAttachMemAsync", "hipStreamAttachMemAsync", "stream"); - subst("cuStreamBeginCapture", "hipStreamBeginCapture", "stream"); - subst("cuStreamBeginCaptureToGraph", "hipStreamBeginCaptureToGraph", "stream"); - subst("cuStreamBeginCapture_v2", "hipStreamBeginCapture", "stream"); - subst("cuStreamCreate", "hipStreamCreateWithFlags", "stream"); - subst("cuStreamCreateWithPriority", "hipStreamCreateWithPriority", "stream"); - subst("cuStreamDestroy", "hipStreamDestroy", "stream"); - subst("cuStreamDestroy_v2", "hipStreamDestroy", "stream"); - subst("cuStreamEndCapture", "hipStreamEndCapture", "stream"); - subst("cuStreamGetCaptureInfo", "hipStreamGetCaptureInfo", "stream"); - subst("cuStreamGetCaptureInfo_v2", "hipStreamGetCaptureInfo_v2", "stream"); - subst("cuStreamGetFlags", "hipStreamGetFlags", "stream"); - subst("cuStreamGetPriority", "hipStreamGetPriority", "stream"); - subst("cuStreamIsCapturing", "hipStreamIsCapturing", "stream"); - subst("cuStreamQuery", "hipStreamQuery", "stream"); - subst("cuStreamSynchronize", "hipStreamSynchronize", "stream"); - subst("cuStreamUpdateCaptureDependencies", "hipStreamUpdateCaptureDependencies", "stream"); - subst("cuStreamWaitEvent", "hipStreamWaitEvent", "stream"); - subst("cuThreadExchangeStreamCaptureMode", "hipThreadExchangeStreamCaptureMode", "stream"); - subst("cudaStreamAddCallback", "hipStreamAddCallback", "stream"); - subst("cudaStreamAttachMemAsync", "hipStreamAttachMemAsync", "stream"); - subst("cudaStreamBeginCapture", "hipStreamBeginCapture", "stream"); - subst("cudaStreamBeginCaptureToGraph", "hipStreamBeginCaptureToGraph", "stream"); - subst("cudaStreamCreate", "hipStreamCreate", "stream"); - subst("cudaStreamCreateWithFlags", "hipStreamCreateWithFlags", "stream"); - subst("cudaStreamCreateWithPriority", "hipStreamCreateWithPriority", "stream"); - subst("cudaStreamDestroy", "hipStreamDestroy", "stream"); - subst("cudaStreamEndCapture", "hipStreamEndCapture", "stream"); - subst("cudaStreamGetCaptureInfo", "hipStreamGetCaptureInfo", "stream"); - subst("cudaStreamGetFlags", "hipStreamGetFlags", "stream"); - subst("cudaStreamGetPriority", "hipStreamGetPriority", "stream"); - subst("cudaStreamIsCapturing", "hipStreamIsCapturing", "stream"); - subst("cudaStreamQuery", "hipStreamQuery", "stream"); - subst("cudaStreamSynchronize", "hipStreamSynchronize", "stream"); - subst("cudaStreamUpdateCaptureDependencies", "hipStreamUpdateCaptureDependencies", "stream"); - subst("cudaStreamWaitEvent", "hipStreamWaitEvent", "stream"); - subst("cudaThreadExchangeStreamCaptureMode", "hipThreadExchangeStreamCaptureMode", "stream"); - subst("cuEventCreate", "hipEventCreateWithFlags", "event"); - subst("cuEventDestroy", "hipEventDestroy", "event"); - subst("cuEventDestroy_v2", "hipEventDestroy", "event"); - subst("cuEventElapsedTime", "hipEventElapsedTime", "event"); - subst("cuEventQuery", "hipEventQuery", "event"); - subst("cuEventRecord", "hipEventRecord", "event"); - subst("cuEventSynchronize", "hipEventSynchronize", "event"); - subst("cudaEventCreate", "hipEventCreate", "event"); - subst("cudaEventCreateWithFlags", "hipEventCreateWithFlags", "event"); - subst("cudaEventDestroy", "hipEventDestroy", "event"); - subst("cudaEventElapsedTime", "hipEventElapsedTime", "event"); - subst("cudaEventQuery", "hipEventQuery", "event"); - subst("cudaEventRecord", "hipEventRecord", "event"); - subst("cudaEventSynchronize", "hipEventSynchronize", "event"); - subst("cuDestroyExternalMemory", "hipDestroyExternalMemory", "external_resource"); - subst("cuDestroyExternalSemaphore", "hipDestroyExternalSemaphore", "external_resource"); - subst("cuExternalMemoryGetMappedBuffer", "hipExternalMemoryGetMappedBuffer", "external_resource"); - subst("cuImportExternalMemory", "hipImportExternalMemory", "external_resource"); - subst("cuImportExternalSemaphore", "hipImportExternalSemaphore", "external_resource"); - subst("cuSignalExternalSemaphoresAsync", "hipSignalExternalSemaphoresAsync", "external_resource"); - subst("cuWaitExternalSemaphoresAsync", "hipWaitExternalSemaphoresAsync", "external_resource"); - subst("cudaDestroyExternalMemory", "hipDestroyExternalMemory", "external_resource"); - subst("cudaDestroyExternalSemaphore", "hipDestroyExternalSemaphore", "external_resource"); - subst("cudaExternalMemoryGetMappedBuffer", "hipExternalMemoryGetMappedBuffer", "external_resource"); - subst("cudaImportExternalMemory", "hipImportExternalMemory", "external_resource"); - subst("cudaImportExternalSemaphore", "hipImportExternalSemaphore", "external_resource"); - subst("cudaSignalExternalSemaphoresAsync", "hipSignalExternalSemaphoresAsync", "external_resource"); - subst("cudaWaitExternalSemaphoresAsync", "hipWaitExternalSemaphoresAsync", "external_resource"); - subst("cuStreamWaitValue32", "hipStreamWaitValue32", "stream_memory"); - subst("cuStreamWaitValue32_v2", "hipStreamWaitValue32", "stream_memory"); - subst("cuStreamWaitValue64", "hipStreamWaitValue64", "stream_memory"); - subst("cuStreamWaitValue64_v2", "hipStreamWaitValue64", "stream_memory"); - subst("cuStreamWriteValue32", "hipStreamWriteValue32", "stream_memory"); - subst("cuStreamWriteValue32_v2", "hipStreamWriteValue32", "stream_memory"); - subst("cuStreamWriteValue64", "hipStreamWriteValue64", "stream_memory"); - subst("cuStreamWriteValue64_v2", "hipStreamWriteValue64", "stream_memory"); - subst("cuFuncGetAttribute", "hipFuncGetAttribute", "execution"); - subst("cuLaunchCooperativeKernel", "hipModuleLaunchCooperativeKernel", "execution"); - subst("cuLaunchCooperativeKernelMultiDevice", "hipModuleLaunchCooperativeKernelMultiDevice", "execution"); - subst("cuLaunchHostFunc", "hipLaunchHostFunc", "execution"); - subst("cuLaunchKernel", "hipModuleLaunchKernel", "execution"); - subst("cudaConfigureCall", "hipConfigureCall", "execution"); - subst("cudaFuncGetAttributes", "hipFuncGetAttributes", "execution"); - subst("cudaFuncSetAttribute", "hipFuncSetAttribute", "execution"); - subst("cudaFuncSetCacheConfig", "hipFuncSetCacheConfig", "execution"); - subst("cudaFuncSetSharedMemConfig", "hipFuncSetSharedMemConfig", "execution"); - subst("cudaLaunch", "hipLaunchByPtr", "execution"); - subst("cudaLaunchCooperativeKernel", "hipLaunchCooperativeKernel", "execution"); - subst("cudaLaunchCooperativeKernelMultiDevice", "hipLaunchCooperativeKernelMultiDevice", "execution"); - subst("cudaLaunchHostFunc", "hipLaunchHostFunc", "execution"); - subst("cudaLaunchKernel", "hipLaunchKernel", "execution"); - subst("cudaSetupArgument", "hipSetupArgument", "execution"); - subst("cuDeviceGetGraphMemAttribute", "hipDeviceGetGraphMemAttribute", "graph"); - subst("cuDeviceGraphMemTrim", "hipDeviceGraphMemTrim", "graph"); - subst("cuDeviceSetGraphMemAttribute", "hipDeviceSetGraphMemAttribute", "graph"); - subst("cuGraphAddBatchMemOpNode", "hipGraphAddBatchMemOpNode", "graph"); - subst("cuGraphAddChildGraphNode", "hipGraphAddChildGraphNode", "graph"); - subst("cuGraphAddDependencies", "hipGraphAddDependencies", "graph"); - subst("cuGraphAddEmptyNode", "hipGraphAddEmptyNode", "graph"); - subst("cuGraphAddEventRecordNode", "hipGraphAddEventRecordNode", "graph"); - subst("cuGraphAddEventWaitNode", "hipGraphAddEventWaitNode", "graph"); - subst("cuGraphAddExternalSemaphoresSignalNode", "hipGraphAddExternalSemaphoresSignalNode", "graph"); - subst("cuGraphAddExternalSemaphoresWaitNode", "hipGraphAddExternalSemaphoresWaitNode", "graph"); - subst("cuGraphAddHostNode", "hipGraphAddHostNode", "graph"); - subst("cuGraphAddKernelNode", "hipGraphAddKernelNode", "graph"); - subst("cuGraphAddMemAllocNode", "hipGraphAddMemAllocNode", "graph"); - subst("cuGraphAddMemcpyNode", "hipDrvGraphAddMemcpyNode", "graph"); - subst("cuGraphAddMemsetNode", "hipDrvGraphAddMemsetNode", "graph"); - subst("cuGraphAddNode", "hipGraphAddNode", "graph"); - subst("cuGraphBatchMemOpNodeGetParams", "hipGraphBatchMemOpNodeGetParams", "graph"); - subst("cuGraphBatchMemOpNodeSetParams", "hipGraphBatchMemOpNodeSetParams", "graph"); - subst("cuGraphChildGraphNodeGetGraph", "hipGraphChildGraphNodeGetGraph", "graph"); - subst("cuGraphClone", "hipGraphClone", "graph"); - subst("cuGraphCreate", "hipGraphCreate", "graph"); - subst("cuGraphDebugDotPrint", "hipGraphDebugDotPrint", "graph"); - subst("cuGraphDestroy", "hipGraphDestroy", "graph"); - subst("cuGraphDestroyNode", "hipGraphDestroyNode", "graph"); - subst("cuGraphEventRecordNodeGetEvent", "hipGraphEventRecordNodeGetEvent", "graph"); - subst("cuGraphEventRecordNodeSetEvent", "hipGraphEventRecordNodeSetEvent", "graph"); - subst("cuGraphEventWaitNodeGetEvent", "hipGraphEventWaitNodeGetEvent", "graph"); - subst("cuGraphEventWaitNodeSetEvent", "hipGraphEventWaitNodeSetEvent", "graph"); - subst("cuGraphExecBatchMemOpNodeSetParams", "hipGraphExecBatchMemOpNodeSetParams", "graph"); - subst("cuGraphExecChildGraphNodeSetParams", "hipGraphExecChildGraphNodeSetParams", "graph"); - subst("cuGraphExecDestroy", "hipGraphExecDestroy", "graph"); - subst("cuGraphExecEventRecordNodeSetEvent", "hipGraphExecEventRecordNodeSetEvent", "graph"); - subst("cuGraphExecEventWaitNodeSetEvent", "hipGraphExecEventWaitNodeSetEvent", "graph"); - subst("cuGraphExecExternalSemaphoresSignalNodeSetParams", "hipGraphExecExternalSemaphoresSignalNodeSetParams", "graph"); - subst("cuGraphExecExternalSemaphoresWaitNodeSetParams", "hipGraphExecExternalSemaphoresWaitNodeSetParams", "graph"); - subst("cuGraphExecHostNodeSetParams", "hipGraphExecHostNodeSetParams", "graph"); - subst("cuGraphExecKernelNodeSetParams", "hipGraphExecKernelNodeSetParams", "graph"); - subst("cuGraphExecUpdate", "hipGraphExecUpdate", "graph"); - subst("cuGraphExternalSemaphoresSignalNodeGetParams", "hipGraphExternalSemaphoresSignalNodeGetParams", "graph"); - subst("cuGraphExternalSemaphoresSignalNodeSetParams", "hipGraphExternalSemaphoresSignalNodeSetParams", "graph"); - subst("cuGraphExternalSemaphoresWaitNodeGetParams", "hipGraphExternalSemaphoresWaitNodeGetParams", "graph"); - subst("cuGraphExternalSemaphoresWaitNodeSetParams", "hipGraphExternalSemaphoresWaitNodeSetParams", "graph"); - subst("cuGraphGetEdges", "hipGraphGetEdges", "graph"); - subst("cuGraphGetNodes", "hipGraphGetNodes", "graph"); - subst("cuGraphGetRootNodes", "hipGraphGetRootNodes", "graph"); - subst("cuGraphHostNodeGetParams", "hipGraphHostNodeGetParams", "graph"); - subst("cuGraphHostNodeSetParams", "hipGraphHostNodeSetParams", "graph"); - subst("cuGraphInstantiate", "hipGraphInstantiate", "graph"); - subst("cuGraphInstantiateWithFlags", "hipGraphInstantiateWithFlags", "graph"); - subst("cuGraphInstantiateWithParams", "hipGraphInstantiateWithParams", "graph"); - subst("cuGraphInstantiate_v2", "hipGraphInstantiate", "graph"); - subst("cuGraphKernelNodeCopyAttributes", "hipGraphKernelNodeCopyAttributes", "graph"); - subst("cuGraphKernelNodeGetAttribute", "hipGraphKernelNodeGetAttribute", "graph"); - subst("cuGraphKernelNodeGetParams", "hipGraphKernelNodeGetParams", "graph"); - subst("cuGraphKernelNodeSetAttribute", "hipGraphKernelNodeSetAttribute", "graph"); - subst("cuGraphKernelNodeSetParams", "hipGraphKernelNodeSetParams", "graph"); - subst("cuGraphLaunch", "hipGraphLaunch", "graph"); - subst("cuGraphMemAllocNodeGetParams", "hipGraphMemAllocNodeGetParams", "graph"); - subst("cuGraphMemFreeNodeGetParams", "hipGraphMemFreeNodeGetParams", "graph"); - subst("cuGraphMemsetNodeGetParams", "hipGraphMemsetNodeGetParams", "graph"); - subst("cuGraphMemsetNodeSetParams", "hipGraphMemsetNodeSetParams", "graph"); - subst("cuGraphNodeFindInClone", "hipGraphNodeFindInClone", "graph"); - subst("cuGraphNodeGetDependencies", "hipGraphNodeGetDependencies", "graph"); - subst("cuGraphNodeGetDependentNodes", "hipGraphNodeGetDependentNodes", "graph"); - subst("cuGraphNodeGetEnabled", "hipGraphNodeGetEnabled", "graph"); - subst("cuGraphNodeGetType", "hipGraphNodeGetType", "graph"); - subst("cuGraphNodeSetEnabled", "hipGraphNodeSetEnabled", "graph"); - subst("cuGraphReleaseUserObject", "hipGraphReleaseUserObject", "graph"); - subst("cuGraphRemoveDependencies", "hipGraphRemoveDependencies", "graph"); - subst("cuGraphRetainUserObject", "hipGraphRetainUserObject", "graph"); - subst("cuGraphUpload", "hipGraphUpload", "graph"); - subst("cuUserObjectCreate", "hipUserObjectCreate", "graph"); - subst("cuUserObjectRelease", "hipUserObjectRelease", "graph"); - subst("cuUserObjectRetain", "hipUserObjectRetain", "graph"); - subst("cudaDeviceGetGraphMemAttribute", "hipDeviceGetGraphMemAttribute", "graph"); - subst("cudaDeviceGraphMemTrim", "hipDeviceGraphMemTrim", "graph"); - subst("cudaDeviceSetGraphMemAttribute", "hipDeviceSetGraphMemAttribute", "graph"); - subst("cudaGraphAddChildGraphNode", "hipGraphAddChildGraphNode", "graph"); - subst("cudaGraphAddDependencies", "hipGraphAddDependencies", "graph"); - subst("cudaGraphAddEmptyNode", "hipGraphAddEmptyNode", "graph"); - subst("cudaGraphAddEventRecordNode", "hipGraphAddEventRecordNode", "graph"); - subst("cudaGraphAddEventWaitNode", "hipGraphAddEventWaitNode", "graph"); - subst("cudaGraphAddExternalSemaphoresSignalNode", "hipGraphAddExternalSemaphoresSignalNode", "graph"); - subst("cudaGraphAddExternalSemaphoresWaitNode", "hipGraphAddExternalSemaphoresWaitNode", "graph"); - subst("cudaGraphAddHostNode", "hipGraphAddHostNode", "graph"); - subst("cudaGraphAddKernelNode", "hipGraphAddKernelNode", "graph"); - subst("cudaGraphAddMemAllocNode", "hipGraphAddMemAllocNode", "graph"); - subst("cudaGraphAddMemFreeNode", "hipGraphAddMemFreeNode", "graph"); - subst("cudaGraphAddMemcpyNode", "hipGraphAddMemcpyNode", "graph"); - subst("cudaGraphAddMemcpyNode1D", "hipGraphAddMemcpyNode1D", "graph"); - subst("cudaGraphAddMemcpyNodeFromSymbol", "hipGraphAddMemcpyNodeFromSymbol", "graph"); - subst("cudaGraphAddMemcpyNodeToSymbol", "hipGraphAddMemcpyNodeToSymbol", "graph"); - subst("cudaGraphAddMemsetNode", "hipGraphAddMemsetNode", "graph"); - subst("cudaGraphAddNode", "hipGraphAddNode", "graph"); - subst("cudaGraphChildGraphNodeGetGraph", "hipGraphChildGraphNodeGetGraph", "graph"); - subst("cudaGraphClone", "hipGraphClone", "graph"); - subst("cudaGraphCreate", "hipGraphCreate", "graph"); - subst("cudaGraphDebugDotPrint", "hipGraphDebugDotPrint", "graph"); - subst("cudaGraphDestroy", "hipGraphDestroy", "graph"); - subst("cudaGraphDestroyNode", "hipGraphDestroyNode", "graph"); - subst("cudaGraphEventRecordNodeGetEvent", "hipGraphEventRecordNodeGetEvent", "graph"); - subst("cudaGraphEventRecordNodeSetEvent", "hipGraphEventRecordNodeSetEvent", "graph"); - subst("cudaGraphEventWaitNodeGetEvent", "hipGraphEventWaitNodeGetEvent", "graph"); - subst("cudaGraphEventWaitNodeSetEvent", "hipGraphEventWaitNodeSetEvent", "graph"); - subst("cudaGraphExecChildGraphNodeSetParams", "hipGraphExecChildGraphNodeSetParams", "graph"); - subst("cudaGraphExecDestroy", "hipGraphExecDestroy", "graph"); - subst("cudaGraphExecEventRecordNodeSetEvent", "hipGraphExecEventRecordNodeSetEvent", "graph"); - subst("cudaGraphExecEventWaitNodeSetEvent", "hipGraphExecEventWaitNodeSetEvent", "graph"); - subst("cudaGraphExecExternalSemaphoresSignalNodeSetParams", "hipGraphExecExternalSemaphoresSignalNodeSetParams", "graph"); - subst("cudaGraphExecExternalSemaphoresWaitNodeSetParams", "hipGraphExecExternalSemaphoresWaitNodeSetParams", "graph"); - subst("cudaGraphExecHostNodeSetParams", "hipGraphExecHostNodeSetParams", "graph"); - subst("cudaGraphExecKernelNodeSetParams", "hipGraphExecKernelNodeSetParams", "graph"); - subst("cudaGraphExecMemcpyNodeSetParams", "hipGraphExecMemcpyNodeSetParams", "graph"); - subst("cudaGraphExecMemcpyNodeSetParams1D", "hipGraphExecMemcpyNodeSetParams1D", "graph"); - subst("cudaGraphExecMemcpyNodeSetParamsFromSymbol", "hipGraphExecMemcpyNodeSetParamsFromSymbol", "graph"); - subst("cudaGraphExecMemcpyNodeSetParamsToSymbol", "hipGraphExecMemcpyNodeSetParamsToSymbol", "graph"); - subst("cudaGraphExecMemsetNodeSetParams", "hipGraphExecMemsetNodeSetParams", "graph"); - subst("cudaGraphExecUpdate", "hipGraphExecUpdate", "graph"); - subst("cudaGraphExternalSemaphoresSignalNodeGetParams", "hipGraphExternalSemaphoresSignalNodeGetParams", "graph"); - subst("cudaGraphExternalSemaphoresSignalNodeSetParams", "hipGraphExternalSemaphoresSignalNodeSetParams", "graph"); - subst("cudaGraphExternalSemaphoresWaitNodeGetParams", "hipGraphExternalSemaphoresWaitNodeGetParams", "graph"); - subst("cudaGraphExternalSemaphoresWaitNodeSetParams", "hipGraphExternalSemaphoresWaitNodeSetParams", "graph"); - subst("cudaGraphGetEdges", "hipGraphGetEdges", "graph"); - subst("cudaGraphGetNodes", "hipGraphGetNodes", "graph"); - subst("cudaGraphGetRootNodes", "hipGraphGetRootNodes", "graph"); - subst("cudaGraphHostNodeGetParams", "hipGraphHostNodeGetParams", "graph"); - subst("cudaGraphHostNodeSetParams", "hipGraphHostNodeSetParams", "graph"); - subst("cudaGraphInstantiate", "hipGraphInstantiate", "graph"); - subst("cudaGraphInstantiateWithFlags", "hipGraphInstantiateWithFlags", "graph"); - subst("cudaGraphInstantiateWithParams", "hipGraphInstantiateWithParams", "graph"); - subst("cudaGraphKernelNodeCopyAttributes", "hipGraphKernelNodeCopyAttributes", "graph"); - subst("cudaGraphKernelNodeGetAttribute", "hipGraphKernelNodeGetAttribute", "graph"); - subst("cudaGraphKernelNodeGetParams", "hipGraphKernelNodeGetParams", "graph"); - subst("cudaGraphKernelNodeSetAttribute", "hipGraphKernelNodeSetAttribute", "graph"); - subst("cudaGraphKernelNodeSetParams", "hipGraphKernelNodeSetParams", "graph"); - subst("cudaGraphLaunch", "hipGraphLaunch", "graph"); - subst("cudaGraphMemAllocNodeGetParams", "hipGraphMemAllocNodeGetParams", "graph"); - subst("cudaGraphMemFreeNodeGetParams", "hipGraphMemFreeNodeGetParams", "graph"); - subst("cudaGraphMemcpyNodeGetParams", "hipGraphMemcpyNodeGetParams", "graph"); - subst("cudaGraphMemcpyNodeSetParams", "hipGraphMemcpyNodeSetParams", "graph"); - subst("cudaGraphMemcpyNodeSetParams1D", "hipGraphMemcpyNodeSetParams1D", "graph"); - subst("cudaGraphMemcpyNodeSetParamsFromSymbol", "hipGraphMemcpyNodeSetParamsFromSymbol", "graph"); - subst("cudaGraphMemcpyNodeSetParamsToSymbol", "hipGraphMemcpyNodeSetParamsToSymbol", "graph"); - subst("cudaGraphMemsetNodeGetParams", "hipGraphMemsetNodeGetParams", "graph"); - subst("cudaGraphMemsetNodeSetParams", "hipGraphMemsetNodeSetParams", "graph"); - subst("cudaGraphNodeFindInClone", "hipGraphNodeFindInClone", "graph"); - subst("cudaGraphNodeGetDependencies", "hipGraphNodeGetDependencies", "graph"); - subst("cudaGraphNodeGetDependentNodes", "hipGraphNodeGetDependentNodes", "graph"); - subst("cudaGraphNodeGetEnabled", "hipGraphNodeGetEnabled", "graph"); - subst("cudaGraphNodeGetType", "hipGraphNodeGetType", "graph"); - subst("cudaGraphNodeSetEnabled", "hipGraphNodeSetEnabled", "graph"); - subst("cudaGraphReleaseUserObject", "hipGraphReleaseUserObject", "graph"); - subst("cudaGraphRemoveDependencies", "hipGraphRemoveDependencies", "graph"); - subst("cudaGraphRetainUserObject", "hipGraphRetainUserObject", "graph"); - subst("cudaGraphUpload", "hipGraphUpload", "graph"); - subst("cudaUserObjectCreate", "hipUserObjectCreate", "graph"); - subst("cudaUserObjectRelease", "hipUserObjectRelease", "graph"); - subst("cudaUserObjectRetain", "hipUserObjectRetain", "graph"); - subst("cuOccupancyMaxActiveBlocksPerMultiprocessor", "hipModuleOccupancyMaxActiveBlocksPerMultiprocessor", "occupancy"); - subst("cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags", "hipModuleOccupancyMaxActiveBlocksPerMultiprocessorWithFlags", "occupancy"); - subst("cuOccupancyMaxPotentialBlockSize", "hipModuleOccupancyMaxPotentialBlockSize", "occupancy"); - subst("cuOccupancyMaxPotentialBlockSizeWithFlags", "hipModuleOccupancyMaxPotentialBlockSizeWithFlags", "occupancy"); - subst("cudaOccupancyMaxActiveBlocksPerMultiprocessor", "hipOccupancyMaxActiveBlocksPerMultiprocessor", "occupancy"); - subst("cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags", "hipOccupancyMaxActiveBlocksPerMultiprocessorWithFlags", "occupancy"); - subst("cudaOccupancyMaxPotentialBlockSize", "hipOccupancyMaxPotentialBlockSize", "occupancy"); - subst("cudaOccupancyMaxPotentialBlockSizeVariableSMem", "hipOccupancyMaxPotentialBlockSizeVariableSMem", "occupancy"); - subst("cudaOccupancyMaxPotentialBlockSizeVariableSMemWithFlags", "hipOccupancyMaxPotentialBlockSizeVariableSMemWithFlags", "occupancy"); - subst("cudaOccupancyMaxPotentialBlockSizeWithFlags", "hipOccupancyMaxPotentialBlockSizeWithFlags", "occupancy"); - subst("cuTexObjectCreate", "hipTexObjectCreate", "texture"); - subst("cuTexObjectDestroy", "hipTexObjectDestroy", "texture"); - subst("cuTexObjectGetResourceDesc", "hipTexObjectGetResourceDesc", "texture"); - subst("cuTexObjectGetResourceViewDesc", "hipTexObjectGetResourceViewDesc", "texture"); - subst("cuTexObjectGetTextureDesc", "hipTexObjectGetTextureDesc", "texture"); - subst("cuTexRefGetAddress", "hipTexRefGetAddress", "texture"); - subst("cuTexRefGetAddressMode", "hipTexRefGetAddressMode", "texture"); - subst("cuTexRefGetAddress_v2", "hipTexRefGetAddress", "texture"); - subst("cuTexRefGetArray", "hipTexRefGetArray", "texture"); - subst("cuTexRefGetBorderColor", "hipTexRefGetBorderColor", "texture"); - subst("cuTexRefGetFilterMode", "hipTexRefGetFilterMode", "texture"); - subst("cuTexRefGetFlags", "hipTexRefGetFlags", "texture"); - subst("cuTexRefGetFormat", "hipTexRefGetFormat", "texture"); - subst("cuTexRefGetMaxAnisotropy", "hipTexRefGetMaxAnisotropy", "texture"); - subst("cuTexRefGetMipmapFilterMode", "hipTexRefGetMipmapFilterMode", "texture"); - subst("cuTexRefGetMipmapLevelBias", "hipTexRefGetMipmapLevelBias", "texture"); - subst("cuTexRefGetMipmapLevelClamp", "hipTexRefGetMipmapLevelClamp", "texture"); - subst("cuTexRefGetMipmappedArray", "hipTexRefGetMipMappedArray", "texture"); - subst("cuTexRefSetAddress", "hipTexRefSetAddress", "texture"); - subst("cuTexRefSetAddress2D", "hipTexRefSetAddress2D", "texture"); - subst("cuTexRefSetAddress2D_v2", "hipTexRefSetAddress2D", "texture"); - subst("cuTexRefSetAddress2D_v3", "hipTexRefSetAddress2D", "texture"); - subst("cuTexRefSetAddressMode", "hipTexRefSetAddressMode", "texture"); - subst("cuTexRefSetAddress_v2", "hipTexRefSetAddress", "texture"); - subst("cuTexRefSetArray", "hipTexRefSetArray", "texture"); - subst("cuTexRefSetBorderColor", "hipTexRefSetBorderColor", "texture"); - subst("cuTexRefSetFilterMode", "hipTexRefSetFilterMode", "texture"); - subst("cuTexRefSetFlags", "hipTexRefSetFlags", "texture"); - subst("cuTexRefSetFormat", "hipTexRefSetFormat", "texture"); - subst("cuTexRefSetMaxAnisotropy", "hipTexRefSetMaxAnisotropy", "texture"); - subst("cuTexRefSetMipmapFilterMode", "hipTexRefSetMipmapFilterMode", "texture"); - subst("cuTexRefSetMipmapLevelBias", "hipTexRefSetMipmapLevelBias", "texture"); - subst("cuTexRefSetMipmapLevelClamp", "hipTexRefSetMipmapLevelClamp", "texture"); - subst("cuTexRefSetMipmappedArray", "hipTexRefSetMipmappedArray", "texture"); - subst("cudaBindTexture", "hipBindTexture", "texture"); - subst("cudaBindTexture2D", "hipBindTexture2D", "texture"); - subst("cudaBindTextureToArray", "hipBindTextureToArray", "texture"); - subst("cudaBindTextureToMipmappedArray", "hipBindTextureToMipmappedArray", "texture"); - subst("cudaCreateChannelDesc", "hipCreateChannelDesc", "texture"); - subst("cudaCreateTextureObject", "hipCreateTextureObject", "texture"); - subst("cudaDestroyTextureObject", "hipDestroyTextureObject", "texture"); - subst("cudaGetChannelDesc", "hipGetChannelDesc", "texture"); - subst("cudaGetTextureAlignmentOffset", "hipGetTextureAlignmentOffset", "texture"); - subst("cudaGetTextureObjectResourceDesc", "hipGetTextureObjectResourceDesc", "texture"); - subst("cudaGetTextureObjectResourceViewDesc", "hipGetTextureObjectResourceViewDesc", "texture"); - subst("cudaGetTextureObjectTextureDesc", "hipGetTextureObjectTextureDesc", "texture"); - subst("cudaGetTextureReference", "hipGetTextureReference", "texture"); - subst("cudaUnbindTexture", "hipUnbindTexture", "texture"); - subst("cudaCreateSurfaceObject", "hipCreateSurfaceObject", "surface"); - subst("cudaDestroySurfaceObject", "hipDestroySurfaceObject", "surface"); - subst("cuCtxDisablePeerAccess", "hipCtxDisablePeerAccess", "peer"); - subst("cuCtxEnablePeerAccess", "hipCtxEnablePeerAccess", "peer"); - subst("cuDeviceCanAccessPeer", "hipDeviceCanAccessPeer", "peer"); - subst("cuDeviceGetP2PAttribute", "hipDeviceGetP2PAttribute", "peer"); - subst("cudaDeviceCanAccessPeer", "hipDeviceCanAccessPeer", "peer"); - subst("cudaDeviceDisablePeerAccess", "hipDeviceDisablePeerAccess", "peer"); - subst("cudaDeviceEnablePeerAccess", "hipDeviceEnablePeerAccess", "peer"); - subst("cuGraphicsMapResources", "hipGraphicsMapResources", "graphics"); - subst("cuGraphicsResourceGetMappedPointer", "hipGraphicsResourceGetMappedPointer", "graphics"); - subst("cuGraphicsResourceGetMappedPointer_v2", "hipGraphicsResourceGetMappedPointer", "graphics"); - subst("cuGraphicsSubResourceGetMappedArray", "hipGraphicsSubResourceGetMappedArray", "graphics"); - subst("cuGraphicsUnmapResources", "hipGraphicsUnmapResources", "graphics"); - subst("cuGraphicsUnregisterResource", "hipGraphicsUnregisterResource", "graphics"); - subst("cudaGraphicsMapResources", "hipGraphicsMapResources", "graphics"); - subst("cudaGraphicsResourceGetMappedPointer", "hipGraphicsResourceGetMappedPointer", "graphics"); - subst("cudaGraphicsSubResourceGetMappedArray", "hipGraphicsSubResourceGetMappedArray", "graphics"); - subst("cudaGraphicsUnmapResources", "hipGraphicsUnmapResources", "graphics"); - subst("cudaGraphicsUnregisterResource", "hipGraphicsUnregisterResource", "graphics"); - subst("cuGetProcAddress", "hipGetProcAddress", "driver_entry_point"); - subst("cudaGetDriverEntryPoint", "hipGetProcAddress", "driver_entry_point"); - subst("cudaGetFuncBySymbol", "hipGetFuncBySymbol", "driver_interact"); - subst("cuProfilerStart", "hipProfilerStart", "profiler"); - subst("cuProfilerStop", "hipProfilerStop", "profiler"); - subst("cudaProfilerStart", "hipProfilerStart", "profiler"); - subst("cudaProfilerStop", "hipProfilerStop", "profiler"); - subst("cuGLGetDevices", "hipGLGetDevices", "openGL"); - subst("cuGraphicsGLRegisterBuffer", "hipGraphicsGLRegisterBuffer", "openGL"); - subst("cuGraphicsGLRegisterImage", "hipGraphicsGLRegisterImage", "openGL"); - subst("cudaGLGetDevices", "hipGLGetDevices", "openGL"); - subst("cudaGraphicsGLRegisterBuffer", "hipGraphicsGLRegisterBuffer", "openGL"); - subst("cudaGraphicsGLRegisterImage", "hipGraphicsGLRegisterImage", "openGL"); - subst("cudaThreadExit", "hipDeviceReset", "thread"); - subst("cudaThreadGetCacheConfig", "hipDeviceGetCacheConfig", "thread"); - subst("cudaThreadSetCacheConfig", "hipDeviceSetCacheConfig", "thread"); - subst("cudaThreadSynchronize", "hipDeviceSynchronize", "thread"); - subst("cuCabs", "hipCabs", "complex"); - subst("cuCabsf", "hipCabsf", "complex"); - subst("cuCadd", "hipCadd", "complex"); - subst("cuCaddf", "hipCaddf", "complex"); - subst("cuCdiv", "hipCdiv", "complex"); - subst("cuCdivf", "hipCdivf", "complex"); - subst("cuCfma", "hipCfma", "complex"); - subst("cuCfmaf", "hipCfmaf", "complex"); - subst("cuCimag", "hipCimag", "complex"); - subst("cuCimagf", "hipCimagf", "complex"); - subst("cuCmul", "hipCmul", "complex"); - subst("cuCmulf", "hipCmulf", "complex"); - subst("cuComplexDoubleToFloat", "hipComplexDoubleToFloat", "complex"); - subst("cuComplexFloatToDouble", "hipComplexFloatToDouble", "complex"); - subst("cuConj", "hipConj", "complex"); - subst("cuConjf", "hipConjf", "complex"); - subst("cuCreal", "hipCreal", "complex"); - subst("cuCrealf", "hipCrealf", "complex"); - subst("cuCsub", "hipCsub", "complex"); - subst("cuCsubf", "hipCsubf", "complex"); - subst("make_cuComplex", "make_hipComplex", "complex"); - subst("make_cuDoubleComplex", "make_hipDoubleComplex", "complex"); - subst("make_cuFloatComplex", "make_hipFloatComplex", "complex"); - subst("cublasAxpyEx", "hipblasAxpyEx_v2", "library"); - subst("cublasAxpyEx_64", "hipblasAxpyEx_v2_64", "library"); - subst("cublasCaxpy", "hipblasCaxpy_v2", "library"); - subst("cublasCaxpy_64", "hipblasCaxpy_v2_64", "library"); - subst("cublasCaxpy_v2", "hipblasCaxpy_v2", "library"); - subst("cublasCaxpy_v2_64", "hipblasCaxpy_v2_64", "library"); - subst("cublasCcopy", "hipblasCcopy_v2", "library"); - subst("cublasCcopy_64", "hipblasCcopy_v2_64", "library"); - subst("cublasCcopy_v2", "hipblasCcopy_v2", "library"); - subst("cublasCcopy_v2_64", "hipblasCcopy_v2_64", "library"); - subst("cublasCdgmm", "hipblasCdgmm_v2", "library"); - subst("cublasCdgmm_64", "hipblasCdgmm_v2_64", "library"); - subst("cublasCdotc", "hipblasCdotc_v2", "library"); - subst("cublasCdotc_64", "hipblasCdotc_v2_64", "library"); - subst("cublasCdotc_v2", "hipblasCdotc_v2", "library"); - subst("cublasCdotc_v2_64", "hipblasCdotc_v2_64", "library"); - subst("cublasCdotu", "hipblasCdotu_v2", "library"); - subst("cublasCdotu_64", "hipblasCdotu_v2_64", "library"); - subst("cublasCdotu_v2", "hipblasCdotu_v2", "library"); - subst("cublasCdotu_v2_64", "hipblasCdotu_v2_64", "library"); - subst("cublasCgbmv", "hipblasCgbmv_v2", "library"); - subst("cublasCgbmv_64", "hipblasCgbmv_v2_64", "library"); - subst("cublasCgbmv_v2", "hipblasCgbmv_v2", "library"); - subst("cublasCgbmv_v2_64", "hipblasCgbmv_v2_64", "library"); - subst("cublasCgeam", "hipblasCgeam_v2", "library"); - subst("cublasCgeam_64", "hipblasCgeam_v2_64", "library"); - subst("cublasCgelsBatched", "hipblasCgelsBatched_v2", "library"); - subst("cublasCgemm", "hipblasCgemm_v2", "library"); - subst("cublasCgemmBatched", "hipblasCgemmBatched_v2", "library"); - subst("cublasCgemmBatched_64", "hipblasCgemmBatched_v2_64", "library"); - subst("cublasCgemmStridedBatched", "hipblasCgemmStridedBatched_v2", "library"); - subst("cublasCgemm_64", "hipblasCgemm_v2_64", "library"); - subst("cublasCgemm_v2", "hipblasCgemm_v2", "library"); - subst("cublasCgemm_v2_64", "hipblasCgemm_v2_64", "library"); - subst("cublasCgemv", "hipblasCgemv_v2", "library"); - subst("cublasCgemvBatched", "hipblasCgemvBatched_v2", "library"); - subst("cublasCgemvBatched_64", "hipblasCgemvBatched_v2_64", "library"); - subst("cublasCgemvStridedBatched", "hipblasCgemvStridedBatched_v2", "library"); - subst("cublasCgemvStridedBatched_64", "hipblasCgemvStridedBatched_v2_64", "library"); - subst("cublasCgemv_64", "hipblasCgemv_v2_64", "library"); - subst("cublasCgemv_v2", "hipblasCgemv_v2", "library"); - subst("cublasCgemv_v2_64", "hipblasCgemv_v2_64", "library"); - subst("cublasCgeqrfBatched", "hipblasCgeqrfBatched_v2", "library"); - subst("cublasCgerc", "hipblasCgerc_v2", "library"); - subst("cublasCgerc_64", "hipblasCgerc_v2_64", "library"); - subst("cublasCgerc_v2", "hipblasCgerc_v2", "library"); - subst("cublasCgerc_v2_64", "hipblasCgerc_v2_64", "library"); - subst("cublasCgeru", "hipblasCgeru_v2", "library"); - subst("cublasCgeru_64", "hipblasCgeru_v2_64", "library"); - subst("cublasCgeru_v2", "hipblasCgeru_v2", "library"); - subst("cublasCgeru_v2_64", "hipblasCgeru_v2_64", "library"); - subst("cublasCgetrfBatched", "hipblasCgetrfBatched_v2", "library"); - subst("cublasCgetriBatched", "hipblasCgetriBatched_v2", "library"); - subst("cublasCgetrsBatched", "hipblasCgetrsBatched_v2", "library"); - subst("cublasChbmv", "hipblasChbmv_v2", "library"); - subst("cublasChbmv_64", "hipblasChbmv_v2_64", "library"); - subst("cublasChbmv_v2", "hipblasChbmv_v2", "library"); - subst("cublasChbmv_v2_64", "hipblasChbmv_v2_64", "library"); - subst("cublasChemm", "hipblasChemm_v2", "library"); - subst("cublasChemm_64", "hipblasChemm_v2_64", "library"); - subst("cublasChemm_v2", "hipblasChemm_v2", "library"); - subst("cublasChemm_v2_64", "hipblasChemm_v2_64", "library"); - subst("cublasChemv", "hipblasChemv_v2", "library"); - subst("cublasChemv_64", "hipblasChemv_v2_64", "library"); - subst("cublasChemv_v2", "hipblasChemv_v2", "library"); - subst("cublasChemv_v2_64", "hipblasChemv_v2_64", "library"); - subst("cublasCher", "hipblasCher_v2", "library"); - subst("cublasCher2", "hipblasCher2_v2", "library"); - subst("cublasCher2_64", "hipblasCher2_v2_64", "library"); - subst("cublasCher2_v2", "hipblasCher2_v2", "library"); - subst("cublasCher2_v2_64", "hipblasCher2_v2_64", "library"); - subst("cublasCher2k", "hipblasCher2k_v2", "library"); - subst("cublasCher2k_64", "hipblasCher2k_v2_64", "library"); - subst("cublasCher2k_v2", "hipblasCher2k_v2", "library"); - subst("cublasCher2k_v2_64", "hipblasCher2k_v2_64", "library"); - subst("cublasCher_64", "hipblasCher_v2_64", "library"); - subst("cublasCher_v2", "hipblasCher_v2", "library"); - subst("cublasCher_v2_64", "hipblasCher_v2_64", "library"); - subst("cublasCherk", "hipblasCherk_v2", "library"); - subst("cublasCherk_64", "hipblasCherk_v2_64", "library"); - subst("cublasCherk_v2", "hipblasCherk_v2", "library"); - subst("cublasCherk_v2_64", "hipblasCherk_v2_64", "library"); - subst("cublasCherkx", "hipblasCherkx_v2", "library"); - subst("cublasCherkx_64", "hipblasCherkx_v2_64", "library"); - subst("cublasChpmv", "hipblasChpmv_v2", "library"); - subst("cublasChpmv_64", "hipblasChpmv_v2_64", "library"); - subst("cublasChpmv_v2", "hipblasChpmv_v2", "library"); - subst("cublasChpmv_v2_64", "hipblasChpmv_v2_64", "library"); - subst("cublasChpr", "hipblasChpr_v2", "library"); - subst("cublasChpr2", "hipblasChpr2_v2", "library"); - subst("cublasChpr2_64", "hipblasChpr2_v2_64", "library"); - subst("cublasChpr2_v2", "hipblasChpr2_v2", "library"); - subst("cublasChpr2_v2_64", "hipblasChpr2_v2_64", "library"); - subst("cublasChpr_64", "hipblasChpr_v2_64", "library"); - subst("cublasChpr_v2", "hipblasChpr_v2", "library"); - subst("cublasChpr_v2_64", "hipblasChpr_v2_64", "library"); - subst("cublasCreate", "hipblasCreate", "library"); - subst("cublasCreate_v2", "hipblasCreate", "library"); - subst("cublasCrot", "hipblasCrot_v2", "library"); - subst("cublasCrot_64", "hipblasCrot_v2_64", "library"); - subst("cublasCrot_v2", "hipblasCrot_v2", "library"); - subst("cublasCrot_v2_64", "hipblasCrot_v2_64", "library"); - subst("cublasCrotg", "hipblasCrotg_v2", "library"); - subst("cublasCrotg_v2", "hipblasCrotg_v2", "library"); - subst("cublasCscal", "hipblasCscal_v2", "library"); - subst("cublasCscal_64", "hipblasCscal_v2_64", "library"); - subst("cublasCscal_v2", "hipblasCscal_v2", "library"); - subst("cublasCscal_v2_64", "hipblasCscal_v2_64", "library"); - subst("cublasCsrot", "hipblasCsrot_v2", "library"); - subst("cublasCsrot_64", "hipblasCsrot_v2_64", "library"); - subst("cublasCsrot_v2", "hipblasCsrot_v2", "library"); - subst("cublasCsrot_v2_64", "hipblasCsrot_v2_64", "library"); - subst("cublasCsscal", "hipblasCsscal_v2", "library"); - subst("cublasCsscal_64", "hipblasCsscal_v2_64", "library"); - subst("cublasCsscal_v2", "hipblasCsscal_v2", "library"); - subst("cublasCsscal_v2_64", "hipblasCsscal_v2_64", "library"); - subst("cublasCswap", "hipblasCswap_v2", "library"); - subst("cublasCswap_64", "hipblasCswap_v2_64", "library"); - subst("cublasCswap_v2", "hipblasCswap_v2", "library"); - subst("cublasCswap_v2_64", "hipblasCswap_v2_64", "library"); - subst("cublasCsymm", "hipblasCsymm_v2", "library"); - subst("cublasCsymm_64", "hipblasCsymm_v2_64", "library"); - subst("cublasCsymm_v2", "hipblasCsymm_v2", "library"); - subst("cublasCsymm_v2_64", "hipblasCsymm_v2_64", "library"); - subst("cublasCsymv", "hipblasCsymv_v2", "library"); - subst("cublasCsymv_64", "hipblasCsymv_v2_64", "library"); - subst("cublasCsymv_v2", "hipblasCsymv_v2", "library"); - subst("cublasCsymv_v2_64", "hipblasCsymv_v2_64", "library"); - subst("cublasCsyr", "hipblasCsyr_v2", "library"); - subst("cublasCsyr2", "hipblasCsyr2_v2", "library"); - subst("cublasCsyr2_64", "hipblasCsyr2_v2_64", "library"); - subst("cublasCsyr2_v2", "hipblasCsyr2_v2", "library"); - subst("cublasCsyr2_v2_64", "hipblasCsyr2_v2_64", "library"); - subst("cublasCsyr2k", "hipblasCsyr2k_v2", "library"); - subst("cublasCsyr2k_64", "hipblasCsyr2k_v2_64", "library"); - subst("cublasCsyr2k_v2", "hipblasCsyr2k_v2", "library"); - subst("cublasCsyr2k_v2_64", "hipblasCsyr2k_v2_64", "library"); - subst("cublasCsyr_64", "hipblasCsyr_v2_64", "library"); - subst("cublasCsyr_v2", "hipblasCsyr_v2", "library"); - subst("cublasCsyr_v2_64", "hipblasCsyr_v2_64", "library"); - subst("cublasCsyrk", "hipblasCsyrk_v2", "library"); - subst("cublasCsyrk_64", "hipblasCsyrk_v2_64", "library"); - subst("cublasCsyrk_v2", "hipblasCsyrk_v2", "library"); - subst("cublasCsyrk_v2_64", "hipblasCsyrk_v2_64", "library"); - subst("cublasCsyrkx", "hipblasCsyrkx_v2", "library"); - subst("cublasCsyrkx_64", "hipblasCsyrkx_v2_64", "library"); - subst("cublasCtbmv", "hipblasCtbmv_v2", "library"); - subst("cublasCtbmv_64", "hipblasCtbmv_v2_64", "library"); - subst("cublasCtbmv_v2", "hipblasCtbmv_v2", "library"); - subst("cublasCtbmv_v2_64", "hipblasCtbmv_v2_64", "library"); - subst("cublasCtbsv", "hipblasCtbsv_v2", "library"); - subst("cublasCtbsv_64", "hipblasCtbsv_v2_64", "library"); - subst("cublasCtbsv_v2", "hipblasCtbsv_v2", "library"); - subst("cublasCtbsv_v2_64", "hipblasCtbsv_v2_64", "library"); - subst("cublasCtpmv", "hipblasCtpmv_v2", "library"); - subst("cublasCtpmv_64", "hipblasCtpmv_v2_64", "library"); - subst("cublasCtpmv_v2", "hipblasCtpmv_v2", "library"); - subst("cublasCtpmv_v2_64", "hipblasCtpmv_v2_64", "library"); - subst("cublasCtpsv", "hipblasCtpsv_v2", "library"); - subst("cublasCtpsv_64", "hipblasCtpsv_v2_64", "library"); - subst("cublasCtpsv_v2", "hipblasCtpsv_v2", "library"); - subst("cublasCtpsv_v2_64", "hipblasCtpsv_v2_64", "library"); - subst("cublasCtrmm", "hipblasCtrmm_v2", "library"); - subst("cublasCtrmm_64", "hipblasCtrmm_v2_64", "library"); - subst("cublasCtrmm_v2", "hipblasCtrmm_v2", "library"); - subst("cublasCtrmm_v2_64", "hipblasCtrmm_v2_64", "library"); - subst("cublasCtrmv", "hipblasCtrmv_v2", "library"); - subst("cublasCtrmv_64", "hipblasCtrmv_v2_64", "library"); - subst("cublasCtrmv_v2", "hipblasCtrmv_v2", "library"); - subst("cublasCtrmv_v2_64", "hipblasCtrmv_v2_64", "library"); - subst("cublasCtrsm", "hipblasCtrsm_v2", "library"); - subst("cublasCtrsmBatched", "hipblasCtrsmBatched_v2", "library"); - subst("cublasCtrsmBatched_64", "hipblasCtrsmBatched_v2_64", "library"); - subst("cublasCtrsm_64", "hipblasCtrsm_v2_64", "library"); - subst("cublasCtrsm_v2", "hipblasCtrsm_v2", "library"); - subst("cublasCtrsm_v2_64", "hipblasCtrsm_v2_64", "library"); - subst("cublasCtrsv", "hipblasCtrsv_v2", "library"); - subst("cublasCtrsv_64", "hipblasCtrsv_v2_64", "library"); - subst("cublasCtrsv_v2", "hipblasCtrsv_v2", "library"); - subst("cublasCtrsv_v2_64", "hipblasCtrsv_v2_64", "library"); - subst("cublasDasum", "hipblasDasum", "library"); - subst("cublasDasum_64", "hipblasDasum_64", "library"); - subst("cublasDasum_v2", "hipblasDasum", "library"); - subst("cublasDasum_v2_64", "hipblasDasum_64", "library"); - subst("cublasDaxpy", "hipblasDaxpy", "library"); - subst("cublasDaxpy_64", "hipblasDaxpy_64", "library"); - subst("cublasDaxpy_v2", "hipblasDaxpy", "library"); - subst("cublasDaxpy_v2_64", "hipblasDaxpy_64", "library"); - subst("cublasDcopy", "hipblasDcopy", "library"); - subst("cublasDcopy_64", "hipblasDcopy_64", "library"); - subst("cublasDcopy_v2", "hipblasDcopy", "library"); - subst("cublasDcopy_v2_64", "hipblasDcopy_64", "library"); - subst("cublasDdgmm", "hipblasDdgmm", "library"); - subst("cublasDdgmm_64", "hipblasDdgmm_64", "library"); - subst("cublasDdot", "hipblasDdot", "library"); - subst("cublasDdot_64", "hipblasDdot_64", "library"); - subst("cublasDdot_v2", "hipblasDdot", "library"); - subst("cublasDdot_v2_64", "hipblasDdot_64", "library"); - subst("cublasDestroy", "hipblasDestroy", "library"); - subst("cublasDestroy_v2", "hipblasDestroy", "library"); - subst("cublasDgbmv", "hipblasDgbmv", "library"); - subst("cublasDgbmv_64", "hipblasDgbmv_64", "library"); - subst("cublasDgbmv_v2", "hipblasDgbmv", "library"); - subst("cublasDgbmv_v2_64", "hipblasDgbmv_64", "library"); - subst("cublasDgeam", "hipblasDgeam", "library"); - subst("cublasDgeam_64", "hipblasDgeam_64", "library"); - subst("cublasDgelsBatched", "hipblasDgelsBatched", "library"); - subst("cublasDgemm", "hipblasDgemm", "library"); - subst("cublasDgemmBatched", "hipblasDgemmBatched", "library"); - subst("cublasDgemmBatched_64", "hipblasDgemmBatched_64", "library"); - subst("cublasDgemmStridedBatched", "hipblasDgemmStridedBatched", "library"); - subst("cublasDgemm_64", "hipblasDgemm_64", "library"); - subst("cublasDgemm_v2", "hipblasDgemm", "library"); - subst("cublasDgemm_v2_64", "hipblasDgemm_64", "library"); - subst("cublasDgemv", "hipblasDgemv", "library"); - subst("cublasDgemvBatched", "hipblasDgemvBatched", "library"); - subst("cublasDgemvBatched_64", "hipblasDgemvBatched_64", "library"); - subst("cublasDgemvStridedBatched", "hipblasDgemvStridedBatched", "library"); - subst("cublasDgemvStridedBatched_64", "hipblasDgemvStridedBatched_64", "library"); - subst("cublasDgemv_64", "hipblasDgemv_64", "library"); - subst("cublasDgemv_v2", "hipblasDgemv", "library"); - subst("cublasDgemv_v2_64", "hipblasDgemv_64", "library"); - subst("cublasDgeqrfBatched", "hipblasDgeqrfBatched", "library"); - subst("cublasDger", "hipblasDger", "library"); - subst("cublasDger_64", "hipblasDger_64", "library"); - subst("cublasDger_v2", "hipblasDger", "library"); - subst("cublasDger_v2_64", "hipblasDger_64", "library"); - subst("cublasDgetrfBatched", "hipblasDgetrfBatched", "library"); - subst("cublasDgetriBatched", "hipblasDgetriBatched", "library"); - subst("cublasDgetrsBatched", "hipblasDgetrsBatched", "library"); - subst("cublasDnrm2", "hipblasDnrm2", "library"); - subst("cublasDnrm2_64", "hipblasDnrm2_64", "library"); - subst("cublasDnrm2_v2", "hipblasDnrm2", "library"); - subst("cublasDnrm2_v2_64", "hipblasDnrm2_64", "library"); - subst("cublasDotEx", "hipblasDotEx_v2", "library"); - subst("cublasDotEx_64", "hipblasDotEx_v2_64", "library"); - subst("cublasDotcEx", "hipblasDotcEx_v2", "library"); - subst("cublasDotcEx_64", "hipblasDotcEx_v2_64", "library"); - subst("cublasDrot", "hipblasDrot", "library"); - subst("cublasDrot_64", "hipblasDrot_64", "library"); - subst("cublasDrot_v2", "hipblasDrot", "library"); - subst("cublasDrot_v2_64", "hipblasDrot_64", "library"); - subst("cublasDrotg", "hipblasDrotg", "library"); - subst("cublasDrotg_v2", "hipblasDrotg", "library"); - subst("cublasDrotm", "hipblasDrotm", "library"); - subst("cublasDrotm_64", "hipblasDrotm_64", "library"); - subst("cublasDrotm_v2", "hipblasDrotm", "library"); - subst("cublasDrotm_v2_64", "hipblasDrotm_64", "library"); - subst("cublasDrotmg", "hipblasDrotmg", "library"); - subst("cublasDrotmg_v2", "hipblasDrotmg", "library"); - subst("cublasDsbmv", "hipblasDsbmv", "library"); - subst("cublasDsbmv_64", "hipblasDsbmv_64", "library"); - subst("cublasDsbmv_v2", "hipblasDsbmv", "library"); - subst("cublasDsbmv_v2_64", "hipblasDsbmv_64", "library"); - subst("cublasDscal", "hipblasDscal", "library"); - subst("cublasDscal_64", "hipblasDscal_64", "library"); - subst("cublasDscal_v2", "hipblasDscal", "library"); - subst("cublasDscal_v2_64", "hipblasDscal_64", "library"); - subst("cublasDspmv", "hipblasDspmv", "library"); - subst("cublasDspmv_64", "hipblasDspmv_64", "library"); - subst("cublasDspmv_v2", "hipblasDspmv", "library"); - subst("cublasDspmv_v2_64", "hipblasDspmv_64", "library"); - subst("cublasDspr", "hipblasDspr", "library"); - subst("cublasDspr2", "hipblasDspr2", "library"); - subst("cublasDspr2_64", "hipblasDspr2_64", "library"); - subst("cublasDspr2_v2", "hipblasDspr2", "library"); - subst("cublasDspr2_v2_64", "hipblasDspr2_64", "library"); - subst("cublasDspr_64", "hipblasDspr_64", "library"); - subst("cublasDspr_v2", "hipblasDspr", "library"); - subst("cublasDspr_v2_64", "hipblasDspr_64", "library"); - subst("cublasDswap", "hipblasDswap", "library"); - subst("cublasDswap_64", "hipblasDswap_64", "library"); - subst("cublasDswap_v2", "hipblasDswap", "library"); - subst("cublasDswap_v2_64", "hipblasDswap_64", "library"); - subst("cublasDsymm", "hipblasDsymm", "library"); - subst("cublasDsymm_64", "hipblasDsymm_64", "library"); - subst("cublasDsymm_v2", "hipblasDsymm", "library"); - subst("cublasDsymm_v2_64", "hipblasDsymm_64", "library"); - subst("cublasDsymv", "hipblasDsymv", "library"); - subst("cublasDsymv_64", "hipblasDsymv_64", "library"); - subst("cublasDsymv_v2", "hipblasDsymv", "library"); - subst("cublasDsymv_v2_64", "hipblasDsymv_64", "library"); - subst("cublasDsyr", "hipblasDsyr", "library"); - subst("cublasDsyr2", "hipblasDsyr2", "library"); - subst("cublasDsyr2_64", "hipblasDsyr2_64", "library"); - subst("cublasDsyr2_v2", "hipblasDsyr2", "library"); - subst("cublasDsyr2_v2_64", "hipblasDsyr2_64", "library"); - subst("cublasDsyr2k", "hipblasDsyr2k", "library"); - subst("cublasDsyr2k_64", "hipblasDsyr2k_64", "library"); - subst("cublasDsyr2k_v2", "hipblasDsyr2k", "library"); - subst("cublasDsyr2k_v2_64", "hipblasDsyr2k_64", "library"); - subst("cublasDsyr_64", "hipblasDsyr_64", "library"); - subst("cublasDsyr_v2", "hipblasDsyr", "library"); - subst("cublasDsyr_v2_64", "hipblasDsyr_64", "library"); - subst("cublasDsyrk", "hipblasDsyrk", "library"); - subst("cublasDsyrk_64", "hipblasDsyrk_64", "library"); - subst("cublasDsyrk_v2", "hipblasDsyrk", "library"); - subst("cublasDsyrk_v2_64", "hipblasDsyrk_64", "library"); - subst("cublasDsyrkx", "hipblasDsyrkx", "library"); - subst("cublasDsyrkx_64", "hipblasDsyrkx_64", "library"); - subst("cublasDtbmv", "hipblasDtbmv", "library"); - subst("cublasDtbmv_64", "hipblasDtbmv_64", "library"); - subst("cublasDtbmv_v2", "hipblasDtbmv", "library"); - subst("cublasDtbmv_v2_64", "hipblasDtbmv_64", "library"); - subst("cublasDtbsv", "hipblasDtbsv", "library"); - subst("cublasDtbsv_64", "hipblasDtbsv_64", "library"); - subst("cublasDtbsv_v2", "hipblasDtbsv", "library"); - subst("cublasDtbsv_v2_64", "hipblasDtbsv_64", "library"); - subst("cublasDtpmv", "hipblasDtpmv", "library"); - subst("cublasDtpmv_64", "hipblasDtpmv_64", "library"); - subst("cublasDtpmv_v2", "hipblasDtpmv", "library"); - subst("cublasDtpmv_v2_64", "hipblasDtpmv_64", "library"); - subst("cublasDtpsv", "hipblasDtpsv", "library"); - subst("cublasDtpsv_64", "hipblasDtpsv_64", "library"); - subst("cublasDtpsv_v2", "hipblasDtpsv", "library"); - subst("cublasDtpsv_v2_64", "hipblasDtpsv_64", "library"); - subst("cublasDtrmm", "hipblasDtrmm", "library"); - subst("cublasDtrmm_64", "hipblasDtrmm_64", "library"); - subst("cublasDtrmm_v2", "hipblasDtrmm", "library"); - subst("cublasDtrmm_v2_64", "hipblasDtrmm_64", "library"); - subst("cublasDtrmv", "hipblasDtrmv", "library"); - subst("cublasDtrmv_64", "hipblasDtrmv_64", "library"); - subst("cublasDtrmv_v2", "hipblasDtrmv", "library"); - subst("cublasDtrmv_v2_64", "hipblasDtrmv_64", "library"); - subst("cublasDtrsm", "hipblasDtrsm", "library"); - subst("cublasDtrsmBatched", "hipblasDtrsmBatched", "library"); - subst("cublasDtrsmBatched_64", "hipblasDtrsmBatched_64", "library"); - subst("cublasDtrsm_64", "hipblasDtrsm_64", "library"); - subst("cublasDtrsm_v2", "hipblasDtrsm", "library"); - subst("cublasDtrsm_v2_64", "hipblasDtrsm_64", "library"); - subst("cublasDtrsv", "hipblasDtrsv", "library"); - subst("cublasDtrsv_64", "hipblasDtrsv_64", "library"); - subst("cublasDtrsv_v2", "hipblasDtrsv", "library"); - subst("cublasDtrsv_v2_64", "hipblasDtrsv_64", "library"); - subst("cublasDzasum", "hipblasDzasum_v2", "library"); - subst("cublasDzasum_64", "hipblasDzasum_v2_64", "library"); - subst("cublasDzasum_v2", "hipblasDzasum_v2", "library"); - subst("cublasDzasum_v2_64", "hipblasDzasum_v2_64", "library"); - subst("cublasDznrm2", "hipblasDznrm2_v2", "library"); - subst("cublasDznrm2_64", "hipblasDznrm2_v2_64", "library"); - subst("cublasDznrm2_v2", "hipblasDznrm2_v2", "library"); - subst("cublasDznrm2_v2_64", "hipblasDznrm2_v2_64", "library"); - subst("cublasGemmBatchedEx", "hipblasGemmBatchedEx_v2", "library"); - subst("cublasGemmBatchedEx_64", "hipblasGemmBatchedEx_v2_64", "library"); - subst("cublasGemmEx", "hipblasGemmEx_v2", "library"); - subst("cublasGemmEx_64", "hipblasGemmEx_v2_64", "library"); - subst("cublasGemmStridedBatchedEx", "hipblasGemmStridedBatchedEx_v2", "library"); - subst("cublasGemmStridedBatchedEx_64", "hipblasGemmStridedBatchedEx_v2_64", "library"); - subst("cublasGetAtomicsMode", "hipblasGetAtomicsMode", "library"); - subst("cublasGetMathMode", "hipblasGetMathMode", "library"); - subst("cublasGetMatrix", "hipblasGetMatrix", "library"); - subst("cublasGetMatrixAsync", "hipblasGetMatrixAsync", "library"); - subst("cublasGetPointerMode", "hipblasGetPointerMode", "library"); - subst("cublasGetPointerMode_v2", "hipblasGetPointerMode", "library"); - subst("cublasGetStream", "hipblasGetStream", "library"); - subst("cublasGetStream_v2", "hipblasGetStream", "library"); - subst("cublasGetVector", "hipblasGetVector", "library"); - subst("cublasGetVectorAsync", "hipblasGetVectorAsync", "library"); - subst("cublasHgemm", "hipblasHgemm", "library"); - subst("cublasHgemmBatched", "hipblasHgemmBatched", "library"); - subst("cublasHgemmBatched_64", "hipblasHgemmBatched_64", "library"); - subst("cublasHgemmStridedBatched", "hipblasHgemmStridedBatched", "library"); - subst("cublasHgemm_64", "hipblasHgemm_64", "library"); - subst("cublasIcamax", "hipblasIcamax_v2", "library"); - subst("cublasIcamax_64", "hipblasIcamax_v2_64", "library"); - subst("cublasIcamax_v2", "hipblasIcamax_v2", "library"); - subst("cublasIcamax_v2_64", "hipblasIcamax_v2_64", "library"); - subst("cublasIcamin", "hipblasIcamin_v2", "library"); - subst("cublasIcamin_64", "hipblasIcamin_v2_64", "library"); - subst("cublasIcamin_v2", "hipblasIcamin_v2", "library"); - subst("cublasIcamin_v2_64", "hipblasIcamin_v2_64", "library"); - subst("cublasIdamax", "hipblasIdamax", "library"); - subst("cublasIdamax_64", "hipblasIdamax_64", "library"); - subst("cublasIdamax_v2", "hipblasIdamax", "library"); - subst("cublasIdamax_v2_64", "hipblasIdamax_64", "library"); - subst("cublasIdamin", "hipblasIdamin", "library"); - subst("cublasIdamin_64", "hipblasIdamin_64", "library"); - subst("cublasIdamin_v2", "hipblasIdamin", "library"); - subst("cublasIdamin_v2_64", "hipblasIdamin_64", "library"); - subst("cublasIsamax", "hipblasIsamax", "library"); - subst("cublasIsamax_64", "hipblasIsamax_64", "library"); - subst("cublasIsamax_v2", "hipblasIsamax", "library"); - subst("cublasIsamax_v2_64", "hipblasIsamax_64", "library"); - subst("cublasIsamin", "hipblasIsamin", "library"); - subst("cublasIsamin_64", "hipblasIsamin_64", "library"); - subst("cublasIsamin_v2", "hipblasIsamin", "library"); - subst("cublasIsamin_v2_64", "hipblasIsamin_64", "library"); - subst("cublasIzamax", "hipblasIzamax_v2", "library"); - subst("cublasIzamax_64", "hipblasIzamax_v2_64", "library"); - subst("cublasIzamax_v2", "hipblasIzamax_v2", "library"); - subst("cublasIzamax_v2_64", "hipblasIzamax_v2_64", "library"); - subst("cublasIzamin", "hipblasIzamin_v2", "library"); - subst("cublasIzamin_64", "hipblasIzamin_v2_64", "library"); - subst("cublasIzamin_v2", "hipblasIzamin_v2", "library"); - subst("cublasIzamin_v2_64", "hipblasIzamin_v2_64", "library"); - subst("cublasLtCreate", "hipblasLtCreate", "library"); - subst("cublasLtDestroy", "hipblasLtDestroy", "library"); - subst("cublasLtMatmul", "hipblasLtMatmul", "library"); - subst("cublasLtMatmulAlgoGetHeuristic", "hipblasLtMatmulAlgoGetHeuristic", "library"); - subst("cublasLtMatmulDescCreate", "hipblasLtMatmulDescCreate", "library"); - subst("cublasLtMatmulDescDestroy", "hipblasLtMatmulDescDestroy", "library"); - subst("cublasLtMatmulDescGetAttribute", "hipblasLtMatmulDescGetAttribute", "library"); - subst("cublasLtMatmulDescSetAttribute", "hipblasLtMatmulDescSetAttribute", "library"); - subst("cublasLtMatmulPreferenceCreate", "hipblasLtMatmulPreferenceCreate", "library"); - subst("cublasLtMatmulPreferenceDestroy", "hipblasLtMatmulPreferenceDestroy", "library"); - subst("cublasLtMatmulPreferenceGetAttribute", "hipblasLtMatmulPreferenceGetAttribute", "library"); - subst("cublasLtMatmulPreferenceSetAttribute", "hipblasLtMatmulPreferenceSetAttribute", "library"); - subst("cublasLtMatrixLayoutCreate", "hipblasLtMatrixLayoutCreate", "library"); - subst("cublasLtMatrixLayoutDestroy", "hipblasLtMatrixLayoutDestroy", "library"); - subst("cublasLtMatrixLayoutGetAttribute", "hipblasLtMatrixLayoutGetAttribute", "library"); - subst("cublasLtMatrixLayoutSetAttribute", "hipblasLtMatrixLayoutSetAttribute", "library"); - subst("cublasLtMatrixTransform", "hipblasLtMatrixTransform", "library"); - subst("cublasLtMatrixTransformDescCreate", "hipblasLtMatrixTransformDescCreate", "library"); - subst("cublasLtMatrixTransformDescDestroy", "hipblasLtMatrixTransformDescDestroy", "library"); - subst("cublasLtMatrixTransformDescGetAttribute", "hipblasLtMatrixTransformDescGetAttribute", "library"); - subst("cublasLtMatrixTransformDescSetAttribute", "hipblasLtMatrixTransformDescSetAttribute", "library"); - subst("cublasNrm2Ex", "hipblasNrm2Ex_v2", "library"); - subst("cublasNrm2Ex_64", "hipblasNrm2Ex_v2_64", "library"); - subst("cublasRotEx", "hipblasRotEx_v2", "library"); - subst("cublasRotEx_64", "hipblasRotEx_v2_64", "library"); - subst("cublasSasum", "hipblasSasum", "library"); - subst("cublasSasum_64", "hipblasSasum_64", "library"); - subst("cublasSasum_v2", "hipblasSasum", "library"); - subst("cublasSasum_v2_64", "hipblasSasum_64", "library"); - subst("cublasSaxpy", "hipblasSaxpy", "library"); - subst("cublasSaxpy_64", "hipblasSaxpy_64", "library"); - subst("cublasSaxpy_v2", "hipblasSaxpy", "library"); - subst("cublasSaxpy_v2_64", "hipblasSaxpy_64", "library"); - subst("cublasScalEx", "hipblasScalEx_v2", "library"); - subst("cublasScalEx_64", "hipblasScalEx_v2_64", "library"); - subst("cublasScasum", "hipblasScasum_v2", "library"); - subst("cublasScasum_64", "hipblasScasum_v2_64", "library"); - subst("cublasScasum_v2", "hipblasScasum_v2", "library"); - subst("cublasScasum_v2_64", "hipblasScasum_v2_64", "library"); - subst("cublasScnrm2", "hipblasScnrm2_v2", "library"); - subst("cublasScnrm2_64", "hipblasScnrm2_v2_64", "library"); - subst("cublasScnrm2_v2", "hipblasScnrm2_v2", "library"); - subst("cublasScnrm2_v2_64", "hipblasScnrm2_v2_64", "library"); - subst("cublasScopy", "hipblasScopy", "library"); - subst("cublasScopy_64", "hipblasScopy_64", "library"); - subst("cublasScopy_v2", "hipblasScopy", "library"); - subst("cublasScopy_v2_64", "hipblasScopy_64", "library"); - subst("cublasSdgmm", "hipblasSdgmm", "library"); - subst("cublasSdgmm_64", "hipblasSdgmm_64", "library"); - subst("cublasSdot", "hipblasSdot", "library"); - subst("cublasSdot_64", "hipblasSdot_64", "library"); - subst("cublasSdot_v2", "hipblasSdot", "library"); - subst("cublasSdot_v2_64", "hipblasSdot_64", "library"); - subst("cublasSetAtomicsMode", "hipblasSetAtomicsMode", "library"); - subst("cublasSetMathMode", "hipblasSetMathMode", "library"); - subst("cublasSetMatrix", "hipblasSetMatrix", "library"); - subst("cublasSetMatrixAsync", "hipblasSetMatrixAsync", "library"); - subst("cublasSetPointerMode", "hipblasSetPointerMode", "library"); - subst("cublasSetPointerMode_v2", "hipblasSetPointerMode", "library"); - subst("cublasSetStream", "hipblasSetStream", "library"); - subst("cublasSetStream_v2", "hipblasSetStream", "library"); - subst("cublasSetVector", "hipblasSetVector", "library"); - subst("cublasSetVectorAsync", "hipblasSetVectorAsync", "library"); - subst("cublasSgbmv", "hipblasSgbmv", "library"); - subst("cublasSgbmv_64", "hipblasSgbmv_64", "library"); - subst("cublasSgbmv_v2", "hipblasSgbmv", "library"); - subst("cublasSgbmv_v2_64", "hipblasSgbmv_64", "library"); - subst("cublasSgeam", "hipblasSgeam", "library"); - subst("cublasSgeam_64", "hipblasSgeam_64", "library"); - subst("cublasSgelsBatched", "hipblasSgelsBatched", "library"); - subst("cublasSgemm", "hipblasSgemm", "library"); - subst("cublasSgemmBatched", "hipblasSgemmBatched", "library"); - subst("cublasSgemmBatched_64", "hipblasSgemmBatched_64", "library"); - subst("cublasSgemmStridedBatched", "hipblasSgemmStridedBatched", "library"); - subst("cublasSgemm_64", "hipblasSgemm_64", "library"); - subst("cublasSgemm_v2", "hipblasSgemm", "library"); - subst("cublasSgemm_v2_64", "hipblasSgemm_64", "library"); - subst("cublasSgemv", "hipblasSgemv", "library"); - subst("cublasSgemvBatched", "hipblasSgemvBatched", "library"); - subst("cublasSgemvBatched_64", "hipblasSgemvBatched_64", "library"); - subst("cublasSgemvStridedBatched", "hipblasSgemvStridedBatched", "library"); - subst("cublasSgemvStridedBatched_64", "hipblasSgemvStridedBatched_64", "library"); - subst("cublasSgemv_64", "hipblasSgemv_64", "library"); - subst("cublasSgemv_v2", "hipblasSgemv", "library"); - subst("cublasSgemv_v2_64", "hipblasSgemv_64", "library"); - subst("cublasSgeqrfBatched", "hipblasSgeqrfBatched", "library"); - subst("cublasSger", "hipblasSger", "library"); - subst("cublasSger_64", "hipblasSger_64", "library"); - subst("cublasSger_v2", "hipblasSger", "library"); - subst("cublasSger_v2_64", "hipblasSger_64", "library"); - subst("cublasSgetrfBatched", "hipblasSgetrfBatched", "library"); - subst("cublasSgetriBatched", "hipblasSgetriBatched", "library"); - subst("cublasSgetrsBatched", "hipblasSgetrsBatched", "library"); - subst("cublasSnrm2", "hipblasSnrm2", "library"); - subst("cublasSnrm2_64", "hipblasSnrm2_64", "library"); - subst("cublasSnrm2_v2", "hipblasSnrm2", "library"); - subst("cublasSnrm2_v2_64", "hipblasSnrm2_64", "library"); - subst("cublasSrot", "hipblasSrot", "library"); - subst("cublasSrot_64", "hipblasSrot_64", "library"); - subst("cublasSrot_v2", "hipblasSrot", "library"); - subst("cublasSrot_v2_64", "hipblasSrot_64", "library"); - subst("cublasSrotg", "hipblasSrotg", "library"); - subst("cublasSrotg_v2", "hipblasSrotg", "library"); - subst("cublasSrotm", "hipblasSrotm", "library"); - subst("cublasSrotm_64", "hipblasSrotm_64", "library"); - subst("cublasSrotm_v2", "hipblasSrotm", "library"); - subst("cublasSrotm_v2_64", "hipblasSrotm_64", "library"); - subst("cublasSrotmg", "hipblasSrotmg", "library"); - subst("cublasSrotmg_v2", "hipblasSrotmg", "library"); - subst("cublasSsbmv", "hipblasSsbmv", "library"); - subst("cublasSsbmv_64", "hipblasSsbmv_64", "library"); - subst("cublasSsbmv_v2", "hipblasSsbmv", "library"); - subst("cublasSsbmv_v2_64", "hipblasSsbmv_64", "library"); - subst("cublasSscal", "hipblasSscal", "library"); - subst("cublasSscal_64", "hipblasSscal_64", "library"); - subst("cublasSscal_v2", "hipblasSscal", "library"); - subst("cublasSscal_v2_64", "hipblasSscal_64", "library"); - subst("cublasSspmv", "hipblasSspmv", "library"); - subst("cublasSspmv_64", "hipblasSspmv_64", "library"); - subst("cublasSspmv_v2", "hipblasSspmv", "library"); - subst("cublasSspmv_v2_64", "hipblasSspmv_64", "library"); - subst("cublasSspr", "hipblasSspr", "library"); - subst("cublasSspr2", "hipblasSspr2", "library"); - subst("cublasSspr2_64", "hipblasSspr2_64", "library"); - subst("cublasSspr2_v2", "hipblasSspr2", "library"); - subst("cublasSspr2_v2_64", "hipblasSspr2_64", "library"); - subst("cublasSspr_64", "hipblasSspr_64", "library"); - subst("cublasSspr_v2", "hipblasSspr", "library"); - subst("cublasSspr_v2_64", "hipblasSspr_64", "library"); - subst("cublasSswap", "hipblasSswap", "library"); - subst("cublasSswap_64", "hipblasSswap_64", "library"); - subst("cublasSswap_v2", "hipblasSswap", "library"); - subst("cublasSswap_v2_64", "hipblasSswap_64", "library"); - subst("cublasSsymm", "hipblasSsymm", "library"); - subst("cublasSsymm_64", "hipblasSsymm_64", "library"); - subst("cublasSsymm_v2", "hipblasSsymm", "library"); - subst("cublasSsymm_v2_64", "hipblasSsymm_64", "library"); - subst("cublasSsymv", "hipblasSsymv", "library"); - subst("cublasSsymv_64", "hipblasSsymv_64", "library"); - subst("cublasSsymv_v2", "hipblasSsymv", "library"); - subst("cublasSsymv_v2_64", "hipblasSsymv_64", "library"); - subst("cublasSsyr", "hipblasSsyr", "library"); - subst("cublasSsyr2", "hipblasSsyr2", "library"); - subst("cublasSsyr2_64", "hipblasSsyr2_64", "library"); - subst("cublasSsyr2_v2", "hipblasSsyr2", "library"); - subst("cublasSsyr2_v2_64", "hipblasSsyr2_64", "library"); - subst("cublasSsyr2k", "hipblasSsyr2k", "library"); - subst("cublasSsyr2k_64", "hipblasSsyr2k_64", "library"); - subst("cublasSsyr2k_v2", "hipblasSsyr2k", "library"); - subst("cublasSsyr2k_v2_64", "hipblasSsyr2k_64", "library"); - subst("cublasSsyr_64", "hipblasSsyr_64", "library"); - subst("cublasSsyr_v2", "hipblasSsyr", "library"); - subst("cublasSsyr_v2_64", "hipblasSsyr_64", "library"); - subst("cublasSsyrk", "hipblasSsyrk", "library"); - subst("cublasSsyrk_64", "hipblasSsyrk_64", "library"); - subst("cublasSsyrk_v2", "hipblasSsyrk", "library"); - subst("cublasSsyrk_v2_64", "hipblasSsyrk_64", "library"); - subst("cublasSsyrkx", "hipblasSsyrkx", "library"); - subst("cublasSsyrkx_64", "hipblasSsyrkx_64", "library"); - subst("cublasStbmv", "hipblasStbmv", "library"); - subst("cublasStbmv_64", "hipblasStbmv_64", "library"); - subst("cublasStbmv_v2", "hipblasStbmv", "library"); - subst("cublasStbmv_v2_64", "hipblasStbmv_64", "library"); - subst("cublasStbsv", "hipblasStbsv", "library"); - subst("cublasStbsv_64", "hipblasStbsv_64", "library"); - subst("cublasStbsv_v2", "hipblasStbsv", "library"); - subst("cublasStbsv_v2_64", "hipblasStbsv_64", "library"); - subst("cublasStpmv", "hipblasStpmv", "library"); - subst("cublasStpmv_64", "hipblasStpmv_64", "library"); - subst("cublasStpmv_v2", "hipblasStpmv", "library"); - subst("cublasStpmv_v2_64", "hipblasStpmv_64", "library"); - subst("cublasStpsv", "hipblasStpsv", "library"); - subst("cublasStpsv_64", "hipblasStpsv_64", "library"); - subst("cublasStpsv_v2", "hipblasStpsv", "library"); - subst("cublasStpsv_v2_64", "hipblasStpsv_64", "library"); - subst("cublasStrmm", "hipblasStrmm", "library"); - subst("cublasStrmm_64", "hipblasStrmm_64", "library"); - subst("cublasStrmm_v2", "hipblasStrmm", "library"); - subst("cublasStrmm_v2_64", "hipblasStrmm_64", "library"); - subst("cublasStrmv", "hipblasStrmv", "library"); - subst("cublasStrmv_64", "hipblasStrmv_64", "library"); - subst("cublasStrmv_v2", "hipblasStrmv", "library"); - subst("cublasStrmv_v2_64", "hipblasStrmv_64", "library"); - subst("cublasStrsm", "hipblasStrsm", "library"); - subst("cublasStrsmBatched", "hipblasStrsmBatched", "library"); - subst("cublasStrsmBatched_64", "hipblasStrsmBatched_64", "library"); - subst("cublasStrsm_64", "hipblasStrsm_64", "library"); - subst("cublasStrsm_v2", "hipblasStrsm", "library"); - subst("cublasStrsm_v2_64", "hipblasStrsm_64", "library"); - subst("cublasStrsv", "hipblasStrsv", "library"); - subst("cublasStrsv_64", "hipblasStrsv_64", "library"); - subst("cublasStrsv_v2", "hipblasStrsv", "library"); - subst("cublasStrsv_v2_64", "hipblasStrsv_64", "library"); - subst("cublasZaxpy", "hipblasZaxpy_v2", "library"); - subst("cublasZaxpy_64", "hipblasZaxpy_v2_64", "library"); - subst("cublasZaxpy_v2", "hipblasZaxpy_v2", "library"); - subst("cublasZaxpy_v2_64", "hipblasZaxpy_v2_64", "library"); - subst("cublasZcopy", "hipblasZcopy_v2", "library"); - subst("cublasZcopy_64", "hipblasZcopy_v2_64", "library"); - subst("cublasZcopy_v2", "hipblasZcopy_v2", "library"); - subst("cublasZcopy_v2_64", "hipblasZcopy_v2_64", "library"); - subst("cublasZdgmm", "hipblasZdgmm_v2", "library"); - subst("cublasZdgmm_64", "hipblasZdgmm_v2_64", "library"); - subst("cublasZdotc", "hipblasZdotc_v2", "library"); - subst("cublasZdotc_64", "hipblasZdotc_v2_64", "library"); - subst("cublasZdotc_v2", "hipblasZdotc_v2", "library"); - subst("cublasZdotc_v2_64", "hipblasZdotc_v2_64", "library"); - subst("cublasZdotu", "hipblasZdotu_v2", "library"); - subst("cublasZdotu_64", "hipblasZdotu_v2_64", "library"); - subst("cublasZdotu_v2", "hipblasZdotu_v2", "library"); - subst("cublasZdotu_v2_64", "hipblasZdotu_v2_64", "library"); - subst("cublasZdrot", "hipblasZdrot_v2", "library"); - subst("cublasZdrot_64", "hipblasZdrot_v2_64", "library"); - subst("cublasZdrot_v2", "hipblasZdrot_v2", "library"); - subst("cublasZdrot_v2_64", "hipblasZdrot_v2_64", "library"); - subst("cublasZdscal", "hipblasZdscal_v2", "library"); - subst("cublasZdscal_64", "hipblasZdscal_v2_64", "library"); - subst("cublasZdscal_v2", "hipblasZdscal_v2", "library"); - subst("cublasZdscal_v2_64", "hipblasZdscal_v2_64", "library"); - subst("cublasZgbmv", "hipblasZgbmv_v2", "library"); - subst("cublasZgbmv_64", "hipblasZgbmv_v2_64", "library"); - subst("cublasZgbmv_v2", "hipblasZgbmv_v2", "library"); - subst("cublasZgbmv_v2_64", "hipblasZgbmv_v2_64", "library"); - subst("cublasZgeam", "hipblasZgeam_v2", "library"); - subst("cublasZgeam_64", "hipblasZgeam_v2_64", "library"); - subst("cublasZgelsBatched", "hipblasZgelsBatched_v2", "library"); - subst("cublasZgemm", "hipblasZgemm_v2", "library"); - subst("cublasZgemmBatched", "hipblasZgemmBatched_v2", "library"); - subst("cublasZgemmBatched_64", "hipblasZgemmBatched_v2_64", "library"); - subst("cublasZgemmStridedBatched", "hipblasZgemmStridedBatched_v2", "library"); - subst("cublasZgemm_64", "hipblasZgemm_v2_64", "library"); - subst("cublasZgemm_v2", "hipblasZgemm_v2", "library"); - subst("cublasZgemm_v2_64", "hipblasZgemm_v2_64", "library"); - subst("cublasZgemv", "hipblasZgemv_v2", "library"); - subst("cublasZgemvBatched", "hipblasZgemvBatched_v2", "library"); - subst("cublasZgemvBatched_64", "hipblasZgemvBatched_v2_64", "library"); - subst("cublasZgemvStridedBatched", "hipblasZgemvStridedBatched_v2", "library"); - subst("cublasZgemvStridedBatched_64", "hipblasZgemvStridedBatched_v2_64", "library"); - subst("cublasZgemv_64", "hipblasZgemv_v2_64", "library"); - subst("cublasZgemv_v2", "hipblasZgemv_v2", "library"); - subst("cublasZgemv_v2_64", "hipblasZgemv_v2_64", "library"); - subst("cublasZgeqrfBatched", "hipblasZgeqrfBatched_v2", "library"); - subst("cublasZgerc", "hipblasZgerc_v2", "library"); - subst("cublasZgerc_64", "hipblasZgerc_v2_64", "library"); - subst("cublasZgerc_v2", "hipblasZgerc_v2", "library"); - subst("cublasZgerc_v2_64", "hipblasZgerc_v2_64", "library"); - subst("cublasZgeru", "hipblasZgeru_v2", "library"); - subst("cublasZgeru_64", "hipblasZgeru_v2_64", "library"); - subst("cublasZgeru_v2", "hipblasZgeru_v2", "library"); - subst("cublasZgeru_v2_64", "hipblasZgeru_v2_64", "library"); - subst("cublasZgetrfBatched", "hipblasZgetrfBatched_v2", "library"); - subst("cublasZgetriBatched", "hipblasZgetriBatched_v2", "library"); - subst("cublasZgetrsBatched", "hipblasZgetrsBatched_v2", "library"); - subst("cublasZhbmv", "hipblasZhbmv_v2", "library"); - subst("cublasZhbmv_64", "hipblasZhbmv_v2_64", "library"); - subst("cublasZhbmv_v2", "hipblasZhbmv_v2", "library"); - subst("cublasZhbmv_v2_64", "hipblasZhbmv_v2_64", "library"); - subst("cublasZhemm", "hipblasZhemm_v2", "library"); - subst("cublasZhemm_64", "hipblasZhemm_v2_64", "library"); - subst("cublasZhemm_v2", "hipblasZhemm_v2", "library"); - subst("cublasZhemm_v2_64", "hipblasZhemm_v2_64", "library"); - subst("cublasZhemv", "hipblasZhemv_v2", "library"); - subst("cublasZhemv_64", "hipblasZhemv_v2_64", "library"); - subst("cublasZhemv_v2", "hipblasZhemv_v2", "library"); - subst("cublasZhemv_v2_64", "hipblasZhemv_v2_64", "library"); - subst("cublasZher", "hipblasZher_v2", "library"); - subst("cublasZher2", "hipblasZher2_v2", "library"); - subst("cublasZher2_64", "hipblasZher2_v2_64", "library"); - subst("cublasZher2_v2", "hipblasZher2_v2", "library"); - subst("cublasZher2_v2_64", "hipblasZher2_v2_64", "library"); - subst("cublasZher2k", "hipblasZher2k_v2", "library"); - subst("cublasZher2k_64", "hipblasZher2k_v2_64", "library"); - subst("cublasZher2k_v2", "hipblasZher2k_v2", "library"); - subst("cublasZher2k_v2_64", "hipblasZher2k_v2_64", "library"); - subst("cublasZher_64", "hipblasZher_v2_64", "library"); - subst("cublasZher_v2", "hipblasZher_v2", "library"); - subst("cublasZher_v2_64", "hipblasZher_v2_64", "library"); - subst("cublasZherk", "hipblasZherk_v2", "library"); - subst("cublasZherk_64", "hipblasZherk_v2_64", "library"); - subst("cublasZherk_v2", "hipblasZherk_v2", "library"); - subst("cublasZherk_v2_64", "hipblasZherk_v2_64", "library"); - subst("cublasZherkx", "hipblasZherkx_v2", "library"); - subst("cublasZherkx_64", "hipblasZherkx_v2_64", "library"); - subst("cublasZhpmv", "hipblasZhpmv_v2", "library"); - subst("cublasZhpmv_64", "hipblasZhpmv_v2_64", "library"); - subst("cublasZhpmv_v2", "hipblasZhpmv_v2", "library"); - subst("cublasZhpmv_v2_64", "hipblasZhpmv_v2_64", "library"); - subst("cublasZhpr", "hipblasZhpr_v2", "library"); - subst("cublasZhpr2", "hipblasZhpr2_v2", "library"); - subst("cublasZhpr2_64", "hipblasZhpr2_v2_64", "library"); - subst("cublasZhpr2_v2", "hipblasZhpr2_v2", "library"); - subst("cublasZhpr2_v2_64", "hipblasZhpr2_v2_64", "library"); - subst("cublasZhpr_64", "hipblasZhpr_v2_64", "library"); - subst("cublasZhpr_v2", "hipblasZhpr_v2", "library"); - subst("cublasZhpr_v2_64", "hipblasZhpr_v2_64", "library"); - subst("cublasZrot", "hipblasZrot_v2", "library"); - subst("cublasZrot_64", "hipblasZrot_v2_64", "library"); - subst("cublasZrot_v2", "hipblasZrot_v2", "library"); - subst("cublasZrot_v2_64", "hipblasZrot_v2_64", "library"); - subst("cublasZrotg", "hipblasZrotg_v2", "library"); - subst("cublasZrotg_v2", "hipblasZrotg_v2", "library"); - subst("cublasZscal", "hipblasZscal_v2", "library"); - subst("cublasZscal_64", "hipblasZscal_v2_64", "library"); - subst("cublasZscal_v2", "hipblasZscal_v2", "library"); - subst("cublasZscal_v2_64", "hipblasZscal_v2_64", "library"); - subst("cublasZswap", "hipblasZswap_v2", "library"); - subst("cublasZswap_64", "hipblasZswap_v2_64", "library"); - subst("cublasZswap_v2", "hipblasZswap_v2", "library"); - subst("cublasZswap_v2_64", "hipblasZswap_v2_64", "library"); - subst("cublasZsymm", "hipblasZsymm_v2", "library"); - subst("cublasZsymm_64", "hipblasZsymm_v2_64", "library"); - subst("cublasZsymm_v2", "hipblasZsymm_v2", "library"); - subst("cublasZsymm_v2_64", "hipblasZsymm_v2_64", "library"); - subst("cublasZsymv", "hipblasZsymv_v2", "library"); - subst("cublasZsymv_64", "hipblasZsymv_v2_64", "library"); - subst("cublasZsymv_v2", "hipblasZsymv_v2", "library"); - subst("cublasZsymv_v2_64", "hipblasZsymv_v2_64", "library"); - subst("cublasZsyr", "hipblasZsyr_v2", "library"); - subst("cublasZsyr2", "hipblasZsyr2_v2", "library"); - subst("cublasZsyr2_64", "hipblasZsyr2_v2_64", "library"); - subst("cublasZsyr2_v2", "hipblasZsyr2_v2", "library"); - subst("cublasZsyr2_v2_64", "hipblasZsyr2_v2_64", "library"); - subst("cublasZsyr2k", "hipblasZsyr2k_v2", "library"); - subst("cublasZsyr2k_64", "hipblasZsyr2k_v2_64", "library"); - subst("cublasZsyr2k_v2", "hipblasZsyr2k_v2", "library"); - subst("cublasZsyr2k_v2_64", "hipblasZsyr2k_v2_64", "library"); - subst("cublasZsyr_64", "hipblasZsyr_v2_64", "library"); - subst("cublasZsyr_v2", "hipblasZsyr_v2", "library"); - subst("cublasZsyr_v2_64", "hipblasZsyr_v2_64", "library"); - subst("cublasZsyrk", "hipblasZsyrk_v2", "library"); - subst("cublasZsyrk_64", "hipblasZsyrk_v2_64", "library"); - subst("cublasZsyrk_v2", "hipblasZsyrk_v2", "library"); - subst("cublasZsyrk_v2_64", "hipblasZsyrk_v2_64", "library"); - subst("cublasZsyrkx", "hipblasZsyrkx_v2", "library"); - subst("cublasZsyrkx_64", "hipblasZsyrkx_v2_64", "library"); - subst("cublasZtbmv", "hipblasZtbmv_v2", "library"); - subst("cublasZtbmv_64", "hipblasZtbmv_v2_64", "library"); - subst("cublasZtbmv_v2", "hipblasZtbmv_v2", "library"); - subst("cublasZtbmv_v2_64", "hipblasZtbmv_v2_64", "library"); - subst("cublasZtbsv", "hipblasZtbsv_v2", "library"); - subst("cublasZtbsv_64", "hipblasZtbsv_v2_64", "library"); - subst("cublasZtbsv_v2", "hipblasZtbsv_v2", "library"); - subst("cublasZtbsv_v2_64", "hipblasZtbsv_v2_64", "library"); - subst("cublasZtpmv", "hipblasZtpmv_v2", "library"); - subst("cublasZtpmv_64", "hipblasZtpmv_v2_64", "library"); - subst("cublasZtpmv_v2", "hipblasZtpmv_v2", "library"); - subst("cublasZtpmv_v2_64", "hipblasZtpmv_v2_64", "library"); - subst("cublasZtpsv", "hipblasZtpsv_v2", "library"); - subst("cublasZtpsv_64", "hipblasZtpsv_v2_64", "library"); - subst("cublasZtpsv_v2", "hipblasZtpsv_v2", "library"); - subst("cublasZtpsv_v2_64", "hipblasZtpsv_v2_64", "library"); - subst("cublasZtrmm", "hipblasZtrmm_v2", "library"); - subst("cublasZtrmm_64", "hipblasZtrmm_v2_64", "library"); - subst("cublasZtrmm_v2", "hipblasZtrmm_v2", "library"); - subst("cublasZtrmm_v2_64", "hipblasZtrmm_v2_64", "library"); - subst("cublasZtrmv", "hipblasZtrmv_v2", "library"); - subst("cublasZtrmv_64", "hipblasZtrmv_v2_64", "library"); - subst("cublasZtrmv_v2", "hipblasZtrmv_v2", "library"); - subst("cublasZtrmv_v2_64", "hipblasZtrmv_v2_64", "library"); - subst("cublasZtrsm", "hipblasZtrsm_v2", "library"); - subst("cublasZtrsmBatched", "hipblasZtrsmBatched_v2", "library"); - subst("cublasZtrsmBatched_64", "hipblasZtrsmBatched_v2_64", "library"); - subst("cublasZtrsm_64", "hipblasZtrsm_v2_64", "library"); - subst("cublasZtrsm_v2", "hipblasZtrsm_v2", "library"); - subst("cublasZtrsm_v2_64", "hipblasZtrsm_v2_64", "library"); - subst("cublasZtrsv", "hipblasZtrsv_v2", "library"); - subst("cublasZtrsv_64", "hipblasZtrsv_v2_64", "library"); - subst("cublasZtrsv_v2", "hipblasZtrsv_v2", "library"); - subst("cublasZtrsv_v2_64", "hipblasZtrsv_v2_64", "library"); - subst("cuda_stream", "hip_stream", "library"); - subst("cudnnActivationBackward", "hipdnnActivationBackward", "library"); - subst("cudnnActivationForward", "hipdnnActivationForward", "library"); - subst("cudnnAddTensor", "hipdnnAddTensor", "library"); - subst("cudnnBatchNormalizationBackward", "hipdnnBatchNormalizationBackward", "library"); - subst("cudnnBatchNormalizationForwardInference", "hipdnnBatchNormalizationForwardInference", "library"); - subst("cudnnBatchNormalizationForwardTraining", "hipdnnBatchNormalizationForwardTraining", "library"); - subst("cudnnConvolutionBackwardBias", "hipdnnConvolutionBackwardBias", "library"); - subst("cudnnConvolutionBackwardData", "hipdnnConvolutionBackwardData", "library"); - subst("cudnnConvolutionBackwardFilter", "hipdnnConvolutionBackwardFilter", "library"); - subst("cudnnConvolutionForward", "hipdnnConvolutionForward", "library"); - subst("cudnnCreate", "hipdnnCreate", "library"); - subst("cudnnCreateActivationDescriptor", "hipdnnCreateActivationDescriptor", "library"); - subst("cudnnCreateConvolutionDescriptor", "hipdnnCreateConvolutionDescriptor", "library"); - subst("cudnnCreateDropoutDescriptor", "hipdnnCreateDropoutDescriptor", "library"); - subst("cudnnCreateFilterDescriptor", "hipdnnCreateFilterDescriptor", "library"); - subst("cudnnCreateLRNDescriptor", "hipdnnCreateLRNDescriptor", "library"); - subst("cudnnCreateOpTensorDescriptor", "hipdnnCreateOpTensorDescriptor", "library"); - subst("cudnnCreatePersistentRNNPlan", "hipdnnCreatePersistentRNNPlan", "library"); - subst("cudnnCreatePoolingDescriptor", "hipdnnCreatePoolingDescriptor", "library"); - subst("cudnnCreateRNNDescriptor", "hipdnnCreateRNNDescriptor", "library"); - subst("cudnnCreateReduceTensorDescriptor", "hipdnnCreateReduceTensorDescriptor", "library"); - subst("cudnnCreateTensorDescriptor", "hipdnnCreateTensorDescriptor", "library"); - subst("cudnnDeriveBNTensorDescriptor", "hipdnnDeriveBNTensorDescriptor", "library"); - subst("cudnnDestroy", "hipdnnDestroy", "library"); - subst("cudnnDestroyActivationDescriptor", "hipdnnDestroyActivationDescriptor", "library"); - subst("cudnnDestroyConvolutionDescriptor", "hipdnnDestroyConvolutionDescriptor", "library"); - subst("cudnnDestroyDropoutDescriptor", "hipdnnDestroyDropoutDescriptor", "library"); - subst("cudnnDestroyFilterDescriptor", "hipdnnDestroyFilterDescriptor", "library"); - subst("cudnnDestroyLRNDescriptor", "hipdnnDestroyLRNDescriptor", "library"); - subst("cudnnDestroyOpTensorDescriptor", "hipdnnDestroyOpTensorDescriptor", "library"); - subst("cudnnDestroyPersistentRNNPlan", "hipdnnDestroyPersistentRNNPlan", "library"); - subst("cudnnDestroyPoolingDescriptor", "hipdnnDestroyPoolingDescriptor", "library"); - subst("cudnnDestroyRNNDescriptor", "hipdnnDestroyRNNDescriptor", "library"); - subst("cudnnDestroyReduceTensorDescriptor", "hipdnnDestroyReduceTensorDescriptor", "library"); - subst("cudnnDestroyTensorDescriptor", "hipdnnDestroyTensorDescriptor", "library"); - subst("cudnnDropoutGetStatesSize", "hipdnnDropoutGetStatesSize", "library"); - subst("cudnnFindConvolutionBackwardDataAlgorithm", "hipdnnFindConvolutionBackwardDataAlgorithm", "library"); - subst("cudnnFindConvolutionBackwardDataAlgorithmEx", "hipdnnFindConvolutionBackwardDataAlgorithmEx", "library"); - subst("cudnnFindConvolutionBackwardFilterAlgorithm", "hipdnnFindConvolutionBackwardFilterAlgorithm", "library"); - subst("cudnnFindConvolutionBackwardFilterAlgorithmEx", "hipdnnFindConvolutionBackwardFilterAlgorithmEx", "library"); - subst("cudnnFindConvolutionForwardAlgorithm", "hipdnnFindConvolutionForwardAlgorithm", "library"); - subst("cudnnFindConvolutionForwardAlgorithmEx", "hipdnnFindConvolutionForwardAlgorithmEx", "library"); - subst("cudnnGetActivationDescriptor", "hipdnnGetActivationDescriptor", "library"); - subst("cudnnGetConvolution2dDescriptor", "hipdnnGetConvolution2dDescriptor", "library"); - subst("cudnnGetConvolution2dForwardOutputDim", "hipdnnGetConvolution2dForwardOutputDim", "library"); - subst("cudnnGetConvolutionBackwardDataAlgorithm", "hipdnnGetConvolutionBackwardDataAlgorithm", "library"); - subst("cudnnGetConvolutionBackwardDataWorkspaceSize", "hipdnnGetConvolutionBackwardDataWorkspaceSize", "library"); - subst("cudnnGetConvolutionBackwardFilterAlgorithm", "hipdnnGetConvolutionBackwardFilterAlgorithm", "library"); - subst("cudnnGetConvolutionBackwardFilterWorkspaceSize", "hipdnnGetConvolutionBackwardFilterWorkspaceSize", "library"); - subst("cudnnGetConvolutionForwardAlgorithm", "hipdnnGetConvolutionForwardAlgorithm", "library"); - subst("cudnnGetConvolutionForwardWorkspaceSize", "hipdnnGetConvolutionForwardWorkspaceSize", "library"); - subst("cudnnGetErrorString", "hipdnnGetErrorString", "library"); - subst("cudnnGetFilter4dDescriptor", "hipdnnGetFilter4dDescriptor", "library"); - subst("cudnnGetFilterNdDescriptor", "hipdnnGetFilterNdDescriptor", "library"); - subst("cudnnGetLRNDescriptor", "hipdnnGetLRNDescriptor", "library"); - subst("cudnnGetOpTensorDescriptor", "hipdnnGetOpTensorDescriptor", "library"); - subst("cudnnGetPooling2dDescriptor", "hipdnnGetPooling2dDescriptor", "library"); - subst("cudnnGetPooling2dForwardOutputDim", "hipdnnGetPooling2dForwardOutputDim", "library"); - subst("cudnnGetRNNDescriptor", "hipdnnGetRNNDescriptor", "library"); - subst("cudnnGetRNNLinLayerBiasParams", "hipdnnGetRNNLinLayerBiasParams", "library"); - subst("cudnnGetRNNLinLayerMatrixParams", "hipdnnGetRNNLinLayerMatrixParams", "library"); - subst("cudnnGetRNNParamsSize", "hipdnnGetRNNParamsSize", "library"); - subst("cudnnGetRNNTrainingReserveSize", "hipdnnGetRNNTrainingReserveSize", "library"); - subst("cudnnGetRNNWorkspaceSize", "hipdnnGetRNNWorkspaceSize", "library"); - subst("cudnnGetReduceTensorDescriptor", "hipdnnGetReduceTensorDescriptor", "library"); - subst("cudnnGetReductionWorkspaceSize", "hipdnnGetReductionWorkspaceSize", "library"); - subst("cudnnGetStream", "hipdnnGetStream", "library"); - subst("cudnnGetTensor4dDescriptor", "hipdnnGetTensor4dDescriptor", "library"); - subst("cudnnGetTensorNdDescriptor", "hipdnnGetTensorNdDescriptor", "library"); - subst("cudnnGetVersion", "hipdnnGetVersion", "library"); - subst("cudnnLRNCrossChannelBackward", "hipdnnLRNCrossChannelBackward", "library"); - subst("cudnnLRNCrossChannelForward", "hipdnnLRNCrossChannelForward", "library"); - subst("cudnnOpTensor", "hipdnnOpTensor", "library"); - subst("cudnnPoolingBackward", "hipdnnPoolingBackward", "library"); - subst("cudnnPoolingForward", "hipdnnPoolingForward", "library"); - subst("cudnnRNNBackwardData", "hipdnnRNNBackwardData", "library"); - subst("cudnnRNNBackwardWeights", "hipdnnRNNBackwardWeights", "library"); - subst("cudnnRNNForwardInference", "hipdnnRNNForwardInference", "library"); - subst("cudnnRNNForwardTraining", "hipdnnRNNForwardTraining", "library"); - subst("cudnnReduceTensor", "hipdnnReduceTensor", "library"); - subst("cudnnScaleTensor", "hipdnnScaleTensor", "library"); - subst("cudnnSetActivationDescriptor", "hipdnnSetActivationDescriptor", "library"); - subst("cudnnSetConvolution2dDescriptor", "hipdnnSetConvolution2dDescriptor", "library"); - subst("cudnnSetConvolutionGroupCount", "hipdnnSetConvolutionGroupCount", "library"); - subst("cudnnSetConvolutionMathType", "hipdnnSetConvolutionMathType", "library"); - subst("cudnnSetConvolutionNdDescriptor", "hipdnnSetConvolutionNdDescriptor", "library"); - subst("cudnnSetDropoutDescriptor", "hipdnnSetDropoutDescriptor", "library"); - subst("cudnnSetFilter4dDescriptor", "hipdnnSetFilter4dDescriptor", "library"); - subst("cudnnSetFilterNdDescriptor", "hipdnnSetFilterNdDescriptor", "library"); - subst("cudnnSetLRNDescriptor", "hipdnnSetLRNDescriptor", "library"); - subst("cudnnSetOpTensorDescriptor", "hipdnnSetOpTensorDescriptor", "library"); - subst("cudnnSetPersistentRNNPlan", "hipdnnSetPersistentRNNPlan", "library"); - subst("cudnnSetPooling2dDescriptor", "hipdnnSetPooling2dDescriptor", "library"); - subst("cudnnSetPoolingNdDescriptor", "hipdnnSetPoolingNdDescriptor", "library"); - subst("cudnnSetRNNDescriptor", "hipdnnSetRNNDescriptor", "library"); - subst("cudnnSetRNNDescriptor_v5", "hipdnnSetRNNDescriptor_v5", "library"); - subst("cudnnSetRNNDescriptor_v6", "hipdnnSetRNNDescriptor_v6", "library"); - subst("cudnnSetReduceTensorDescriptor", "hipdnnSetReduceTensorDescriptor", "library"); - subst("cudnnSetStream", "hipdnnSetStream", "library"); - subst("cudnnSetTensor", "hipdnnSetTensor", "library"); - subst("cudnnSetTensor4dDescriptor", "hipdnnSetTensor4dDescriptor", "library"); - subst("cudnnSetTensor4dDescriptorEx", "hipdnnSetTensor4dDescriptorEx", "library"); - subst("cudnnSetTensorNdDescriptor", "hipdnnSetTensorNdDescriptor", "library"); - subst("cudnnSoftmaxBackward", "hipdnnSoftmaxBackward", "library"); - subst("cudnnSoftmaxForward", "hipdnnSoftmaxForward", "library"); - subst("cufftCallbackLoadC", "hipfftCallbackLoadC", "library"); - subst("cufftCallbackLoadD", "hipfftCallbackLoadD", "library"); - subst("cufftCallbackLoadR", "hipfftCallbackLoadR", "library"); - subst("cufftCallbackLoadZ", "hipfftCallbackLoadZ", "library"); - subst("cufftCallbackStoreC", "hipfftCallbackStoreC", "library"); - subst("cufftCallbackStoreD", "hipfftCallbackStoreD", "library"); - subst("cufftCallbackStoreR", "hipfftCallbackStoreR", "library"); - subst("cufftCallbackStoreZ", "hipfftCallbackStoreZ", "library"); - subst("cufftCreate", "hipfftCreate", "library"); - subst("cufftDestroy", "hipfftDestroy", "library"); - subst("cufftEstimate1d", "hipfftEstimate1d", "library"); - subst("cufftEstimate2d", "hipfftEstimate2d", "library"); - subst("cufftEstimate3d", "hipfftEstimate3d", "library"); - subst("cufftEstimateMany", "hipfftEstimateMany", "library"); - subst("cufftExecC2C", "hipfftExecC2C", "library"); - subst("cufftExecC2R", "hipfftExecC2R", "library"); - subst("cufftExecD2Z", "hipfftExecD2Z", "library"); - subst("cufftExecR2C", "hipfftExecR2C", "library"); - subst("cufftExecZ2D", "hipfftExecZ2D", "library"); - subst("cufftExecZ2Z", "hipfftExecZ2Z", "library"); - subst("cufftGetProperty", "hipfftGetProperty", "library"); - subst("cufftGetSize", "hipfftGetSize", "library"); - subst("cufftGetSize1d", "hipfftGetSize1d", "library"); - subst("cufftGetSize2d", "hipfftGetSize2d", "library"); - subst("cufftGetSize3d", "hipfftGetSize3d", "library"); - subst("cufftGetSizeMany", "hipfftGetSizeMany", "library"); - subst("cufftGetSizeMany64", "hipfftGetSizeMany64", "library"); - subst("cufftGetVersion", "hipfftGetVersion", "library"); - subst("cufftMakePlan1d", "hipfftMakePlan1d", "library"); - subst("cufftMakePlan2d", "hipfftMakePlan2d", "library"); - subst("cufftMakePlan3d", "hipfftMakePlan3d", "library"); - subst("cufftMakePlanMany", "hipfftMakePlanMany", "library"); - subst("cufftMakePlanMany64", "hipfftMakePlanMany64", "library"); - subst("cufftPlan1d", "hipfftPlan1d", "library"); - subst("cufftPlan2d", "hipfftPlan2d", "library"); - subst("cufftPlan3d", "hipfftPlan3d", "library"); - subst("cufftPlanMany", "hipfftPlanMany", "library"); - subst("cufftSetAutoAllocation", "hipfftSetAutoAllocation", "library"); - subst("cufftSetStream", "hipfftSetStream", "library"); - subst("cufftSetWorkArea", "hipfftSetWorkArea", "library"); - subst("cufftXtClearCallback", "hipfftXtClearCallback", "library"); - subst("cufftXtSetCallback", "hipfftXtSetCallback", "library"); - subst("cufftXtSetCallbackSharedSize", "hipfftXtSetCallbackSharedSize", "library"); - subst("curandCreateGenerator", "hiprandCreateGenerator", "library"); - subst("curandCreateGeneratorHost", "hiprandCreateGeneratorHost", "library"); - subst("curandCreatePoissonDistribution", "hiprandCreatePoissonDistribution", "library"); - subst("curandDestroyDistribution", "hiprandDestroyDistribution", "library"); - subst("curandDestroyGenerator", "hiprandDestroyGenerator", "library"); - subst("curandGenerate", "hiprandGenerate", "library"); - subst("curandGenerateLogNormal", "hiprandGenerateLogNormal", "library"); - subst("curandGenerateLogNormalDouble", "hiprandGenerateLogNormalDouble", "library"); - subst("curandGenerateLongLong", "hiprandGenerateLongLong", "library"); - subst("curandGenerateNormal", "hiprandGenerateNormal", "library"); - subst("curandGenerateNormalDouble", "hiprandGenerateNormalDouble", "library"); - subst("curandGeneratePoisson", "hiprandGeneratePoisson", "library"); - subst("curandGenerateSeeds", "hiprandGenerateSeeds", "library"); - subst("curandGenerateUniform", "hiprandGenerateUniform", "library"); - subst("curandGenerateUniformDouble", "hiprandGenerateUniformDouble", "library"); - subst("curandGetDirectionVectors32", "hiprandGetDirectionVectors32", "library"); - subst("curandGetDirectionVectors64", "hiprandGetDirectionVectors64", "library"); - subst("curandGetScrambleConstants32", "hiprandGetScrambleConstants32", "library"); - subst("curandGetScrambleConstants64", "hiprandGetScrambleConstants64", "library"); - subst("curandGetVersion", "hiprandGetVersion", "library"); - subst("curandMakeMTGP32Constants", "hiprandMakeMTGP32Constants", "library"); - subst("curandMakeMTGP32KernelState", "hiprandMakeMTGP32KernelState", "library"); - subst("curandSetGeneratorOffset", "hiprandSetGeneratorOffset", "library"); - subst("curandSetGeneratorOrdering", "hiprandSetGeneratorOrdering", "library"); - subst("curandSetPseudoRandomGeneratorSeed", "hiprandSetPseudoRandomGeneratorSeed", "library"); - subst("curandSetQuasiRandomGeneratorDimensions", "hiprandSetQuasiRandomGeneratorDimensions", "library"); - subst("curandSetStream", "hiprandSetStream", "library"); - subst("cusolverDnCCgels", "hipsolverDnCCgels", "library"); - subst("cusolverDnCCgels_bufferSize", "hipsolverDnCCgels_bufferSize", "library"); - subst("cusolverDnCCgesv", "hipsolverDnCCgesv", "library"); - subst("cusolverDnCCgesv_bufferSize", "hipsolverDnCCgesv_bufferSize", "library"); - subst("cusolverDnCgebrd", "hipsolverDnCgebrd", "library"); - subst("cusolverDnCgebrd_bufferSize", "hipsolverDnCgebrd_bufferSize", "library"); - subst("cusolverDnCgeqrf", "hipsolverDnCgeqrf", "library"); - subst("cusolverDnCgeqrf_bufferSize", "hipsolverDnCgeqrf_bufferSize", "library"); - subst("cusolverDnCgesvd", "hipsolverDnCgesvd", "library"); - subst("cusolverDnCgesvd_bufferSize", "hipsolverDnCgesvd_bufferSize", "library"); - subst("cusolverDnCgesvdaStridedBatched", "hipsolverDnCgesvdaStridedBatched", "library"); - subst("cusolverDnCgesvdaStridedBatched_bufferSize", "hipsolverDnCgesvdaStridedBatched_bufferSize", "library"); - subst("cusolverDnCgesvdj", "hipsolverDnCgesvdj", "library"); - subst("cusolverDnCgesvdjBatched", "hipsolverDnCgesvdjBatched", "library"); - subst("cusolverDnCgesvdjBatched_bufferSize", "hipsolverDnCgesvdjBatched_bufferSize", "library"); - subst("cusolverDnCgesvdj_bufferSize", "hipsolverDnCgesvdj_bufferSize", "library"); - subst("cusolverDnCgetrf", "hipsolverDnCgetrf", "library"); - subst("cusolverDnCgetrf_bufferSize", "hipsolverDnCgetrf_bufferSize", "library"); - subst("cusolverDnCgetrs", "hipsolverDnCgetrs", "library"); - subst("cusolverDnCheevd", "hipsolverDnCheevd", "library"); - subst("cusolverDnCheevd_bufferSize", "hipsolverDnCheevd_bufferSize", "library"); - subst("cusolverDnCheevdx", "hipsolverDnCheevdx", "library"); - subst("cusolverDnCheevdx_bufferSize", "hipsolverDnCheevdx_bufferSize", "library"); - subst("cusolverDnCheevj", "hipsolverDnCheevj", "library"); - subst("cusolverDnCheevjBatched", "hipsolverDnCheevjBatched", "library"); - subst("cusolverDnCheevjBatched_bufferSize", "hipsolverDnCheevjBatched_bufferSize", "library"); - subst("cusolverDnCheevj_bufferSize", "hipsolverDnCheevj_bufferSize", "library"); - subst("cusolverDnChegvd", "hipsolverDnChegvd", "library"); - subst("cusolverDnChegvd_bufferSize", "hipsolverDnChegvd_bufferSize", "library"); - subst("cusolverDnChegvdx", "hipsolverDnChegvdx", "library"); - subst("cusolverDnChegvdx_bufferSize", "hipsolverDnChegvdx_bufferSize", "library"); - subst("cusolverDnChegvj", "hipsolverDnChegvj", "library"); - subst("cusolverDnChegvj_bufferSize", "hipsolverDnChegvj_bufferSize", "library"); - subst("cusolverDnChetrd", "hipsolverDnChetrd", "library"); - subst("cusolverDnChetrd_bufferSize", "hipsolverDnChetrd_bufferSize", "library"); - subst("cusolverDnCpotrf", "hipsolverDnCpotrf", "library"); - subst("cusolverDnCpotrfBatched", "hipsolverDnCpotrfBatched", "library"); - subst("cusolverDnCpotrf_bufferSize", "hipsolverDnCpotrf_bufferSize", "library"); - subst("cusolverDnCpotri", "hipsolverDnCpotri", "library"); - subst("cusolverDnCpotri_bufferSize", "hipsolverDnCpotri_bufferSize", "library"); - subst("cusolverDnCpotrs", "hipsolverDnCpotrs", "library"); - subst("cusolverDnCpotrsBatched", "hipsolverDnCpotrsBatched", "library"); - subst("cusolverDnCreate", "hipsolverDnCreate", "library"); - subst("cusolverDnCreateGesvdjInfo", "hipsolverDnCreateGesvdjInfo", "library"); - subst("cusolverDnCreateParams", "hipsolverDnCreateParams", "library"); - subst("cusolverDnCreateSyevjInfo", "hipsolverDnCreateSyevjInfo", "library"); - subst("cusolverDnCsytrf", "hipsolverDnCsytrf", "library"); - subst("cusolverDnCsytrf_bufferSize", "hipsolverDnCsytrf_bufferSize", "library"); - subst("cusolverDnCungbr", "hipsolverDnCungbr", "library"); - subst("cusolverDnCungbr_bufferSize", "hipsolverDnCungbr_bufferSize", "library"); - subst("cusolverDnCungqr", "hipsolverDnCungqr", "library"); - subst("cusolverDnCungqr_bufferSize", "hipsolverDnCungqr_bufferSize", "library"); - subst("cusolverDnCungtr", "hipsolverDnCungtr", "library"); - subst("cusolverDnCungtr_bufferSize", "hipsolverDnCungtr_bufferSize", "library"); - subst("cusolverDnCunmqr", "hipsolverDnCunmqr", "library"); - subst("cusolverDnCunmqr_bufferSize", "hipsolverDnCunmqr_bufferSize", "library"); - subst("cusolverDnCunmtr", "hipsolverDnCunmtr", "library"); - subst("cusolverDnCunmtr_bufferSize", "hipsolverDnCunmtr_bufferSize", "library"); - subst("cusolverDnDDgels", "hipsolverDnDDgels", "library"); - subst("cusolverDnDDgels_bufferSize", "hipsolverDnDDgels_bufferSize", "library"); - subst("cusolverDnDDgesv", "hipsolverDnDDgesv", "library"); - subst("cusolverDnDDgesv_bufferSize", "hipsolverDnDDgesv_bufferSize", "library"); - subst("cusolverDnDestroy", "hipsolverDnDestroy", "library"); - subst("cusolverDnDestroyGesvdjInfo", "hipsolverDnDestroyGesvdjInfo", "library"); - subst("cusolverDnDestroyParams", "hipsolverDnDestroyParams", "library"); - subst("cusolverDnDestroySyevjInfo", "hipsolverDnDestroySyevjInfo", "library"); - subst("cusolverDnDgebrd", "hipsolverDnDgebrd", "library"); - subst("cusolverDnDgebrd_bufferSize", "hipsolverDnDgebrd_bufferSize", "library"); - subst("cusolverDnDgeqrf", "hipsolverDnDgeqrf", "library"); - subst("cusolverDnDgeqrf_bufferSize", "hipsolverDnDgeqrf_bufferSize", "library"); - subst("cusolverDnDgesvd", "hipsolverDnDgesvd", "library"); - subst("cusolverDnDgesvd_bufferSize", "hipsolverDnDgesvd_bufferSize", "library"); - subst("cusolverDnDgesvdaStridedBatched", "hipsolverDnDgesvdaStridedBatched", "library"); - subst("cusolverDnDgesvdaStridedBatched_bufferSize", "hipsolverDnDgesvdaStridedBatched_bufferSize", "library"); - subst("cusolverDnDgesvdj", "hipsolverDnDgesvdj", "library"); - subst("cusolverDnDgesvdjBatched", "hipsolverDnDgesvdjBatched", "library"); - subst("cusolverDnDgesvdjBatched_bufferSize", "hipsolverDnDgesvdjBatched_bufferSize", "library"); - subst("cusolverDnDgesvdj_bufferSize", "hipsolverDnDgesvdj_bufferSize", "library"); - subst("cusolverDnDgetrf", "hipsolverDnDgetrf", "library"); - subst("cusolverDnDgetrf_bufferSize", "hipsolverDnDgetrf_bufferSize", "library"); - subst("cusolverDnDgetrs", "hipsolverDnDgetrs", "library"); - subst("cusolverDnDorgbr", "hipsolverDnDorgbr", "library"); - subst("cusolverDnDorgbr_bufferSize", "hipsolverDnDorgbr_bufferSize", "library"); - subst("cusolverDnDorgqr", "hipsolverDnDorgqr", "library"); - subst("cusolverDnDorgqr_bufferSize", "hipsolverDnDorgqr_bufferSize", "library"); - subst("cusolverDnDorgtr", "hipsolverDnDorgtr", "library"); - subst("cusolverDnDorgtr_bufferSize", "hipsolverDnDorgtr_bufferSize", "library"); - subst("cusolverDnDormqr", "hipsolverDnDormqr", "library"); - subst("cusolverDnDormqr_bufferSize", "hipsolverDnDormqr_bufferSize", "library"); - subst("cusolverDnDormtr", "hipsolverDnDormtr", "library"); - subst("cusolverDnDormtr_bufferSize", "hipsolverDnDormtr_bufferSize", "library"); - subst("cusolverDnDpotrf", "hipsolverDnDpotrf", "library"); - subst("cusolverDnDpotrfBatched", "hipsolverDnDpotrfBatched", "library"); - subst("cusolverDnDpotrf_bufferSize", "hipsolverDnDpotrf_bufferSize", "library"); - subst("cusolverDnDpotri", "hipsolverDnDpotri", "library"); - subst("cusolverDnDpotri_bufferSize", "hipsolverDnDpotri_bufferSize", "library"); - subst("cusolverDnDpotrs", "hipsolverDnDpotrs", "library"); - subst("cusolverDnDpotrsBatched", "hipsolverDnDpotrsBatched", "library"); - subst("cusolverDnDsyevd", "hipsolverDnDsyevd", "library"); - subst("cusolverDnDsyevd_bufferSize", "hipsolverDnDsyevd_bufferSize", "library"); - subst("cusolverDnDsyevdx", "hipsolverDnDsyevdx", "library"); - subst("cusolverDnDsyevdx_bufferSize", "hipsolverDnDsyevdx_bufferSize", "library"); - subst("cusolverDnDsyevj", "hipsolverDnDsyevj", "library"); - subst("cusolverDnDsyevjBatched", "hipsolverDnDsyevjBatched", "library"); - subst("cusolverDnDsyevjBatched_bufferSize", "hipsolverDnDsyevjBatched_bufferSize", "library"); - subst("cusolverDnDsyevj_bufferSize", "hipsolverDnDsyevj_bufferSize", "library"); - subst("cusolverDnDsygvd", "hipsolverDnDsygvd", "library"); - subst("cusolverDnDsygvd_bufferSize", "hipsolverDnDsygvd_bufferSize", "library"); - subst("cusolverDnDsygvdx", "hipsolverDnDsygvdx", "library"); - subst("cusolverDnDsygvdx_bufferSize", "hipsolverDnDsygvdx_bufferSize", "library"); - subst("cusolverDnDsygvj", "hipsolverDnDsygvj", "library"); - subst("cusolverDnDsygvj_bufferSize", "hipsolverDnDsygvj_bufferSize", "library"); - subst("cusolverDnDsytrd", "hipsolverDnDsytrd", "library"); - subst("cusolverDnDsytrd_bufferSize", "hipsolverDnDsytrd_bufferSize", "library"); - subst("cusolverDnDsytrf", "hipsolverDnDsytrf", "library"); - subst("cusolverDnDsytrf_bufferSize", "hipsolverDnDsytrf_bufferSize", "library"); - subst("cusolverDnGetStream", "hipsolverGetStream", "library"); - subst("cusolverDnSSgels", "hipsolverDnSSgels", "library"); - subst("cusolverDnSSgels_bufferSize", "hipsolverDnSSgels_bufferSize", "library"); - subst("cusolverDnSSgesv", "hipsolverDnSSgesv", "library"); - subst("cusolverDnSSgesv_bufferSize", "hipsolverDnSSgesv_bufferSize", "library"); - subst("cusolverDnSetAdvOptions", "hipsolverDnSetAdvOptions", "library"); - subst("cusolverDnSetStream", "hipsolverSetStream", "library"); - subst("cusolverDnSgebrd", "hipsolverDnSgebrd", "library"); - subst("cusolverDnSgebrd_bufferSize", "hipsolverDnSgebrd_bufferSize", "library"); - subst("cusolverDnSgeqrf", "hipsolverDnSgeqrf", "library"); - subst("cusolverDnSgeqrf_bufferSize", "hipsolverDnSgeqrf_bufferSize", "library"); - subst("cusolverDnSgesvd", "hipsolverDnSgesvd", "library"); - subst("cusolverDnSgesvd_bufferSize", "hipsolverDnSgesvd_bufferSize", "library"); - subst("cusolverDnSgesvdaStridedBatched", "hipsolverDnSgesvdaStridedBatched", "library"); - subst("cusolverDnSgesvdaStridedBatched_bufferSize", "hipsolverDnSgesvdaStridedBatched_bufferSize", "library"); - subst("cusolverDnSgesvdj", "hipsolverDnSgesvdj", "library"); - subst("cusolverDnSgesvdjBatched", "hipsolverDnSgesvdjBatched", "library"); - subst("cusolverDnSgesvdjBatched_bufferSize", "hipsolverDnSgesvdjBatched_bufferSize", "library"); - subst("cusolverDnSgesvdj_bufferSize", "hipsolverDnSgesvdj_bufferSize", "library"); - subst("cusolverDnSgetrf", "hipsolverDnSgetrf", "library"); - subst("cusolverDnSgetrf_bufferSize", "hipsolverDnSgetrf_bufferSize", "library"); - subst("cusolverDnSgetrs", "hipsolverDnSgetrs", "library"); - subst("cusolverDnSorgbr", "hipsolverDnSorgbr", "library"); - subst("cusolverDnSorgbr_bufferSize", "hipsolverDnSorgbr_bufferSize", "library"); - subst("cusolverDnSorgqr", "hipsolverDnSorgqr", "library"); - subst("cusolverDnSorgqr_bufferSize", "hipsolverDnSorgqr_bufferSize", "library"); - subst("cusolverDnSorgtr", "hipsolverDnSorgtr", "library"); - subst("cusolverDnSorgtr_bufferSize", "hipsolverDnSorgtr_bufferSize", "library"); - subst("cusolverDnSormqr", "hipsolverDnSormqr", "library"); - subst("cusolverDnSormqr_bufferSize", "hipsolverDnSormqr_bufferSize", "library"); - subst("cusolverDnSormtr", "hipsolverDnSormtr", "library"); - subst("cusolverDnSormtr_bufferSize", "hipsolverDnSormtr_bufferSize", "library"); - subst("cusolverDnSpotrf", "hipsolverDnSpotrf", "library"); - subst("cusolverDnSpotrfBatched", "hipsolverDnSpotrfBatched", "library"); - subst("cusolverDnSpotrf_bufferSize", "hipsolverDnSpotrf_bufferSize", "library"); - subst("cusolverDnSpotri", "hipsolverDnSpotri", "library"); - subst("cusolverDnSpotri_bufferSize", "hipsolverDnSpotri_bufferSize", "library"); - subst("cusolverDnSpotrs", "hipsolverDnSpotrs", "library"); - subst("cusolverDnSpotrsBatched", "hipsolverDnSpotrsBatched", "library"); - subst("cusolverDnSsyevd", "hipsolverDnSsyevd", "library"); - subst("cusolverDnSsyevd_bufferSize", "hipsolverDnSsyevd_bufferSize", "library"); - subst("cusolverDnSsyevdx", "hipsolverDnSsyevdx", "library"); - subst("cusolverDnSsyevdx_bufferSize", "hipsolverDnSsyevdx_bufferSize", "library"); - subst("cusolverDnSsyevj", "hipsolverDnSsyevj", "library"); - subst("cusolverDnSsyevjBatched", "hipsolverDnSsyevjBatched", "library"); - subst("cusolverDnSsyevjBatched_bufferSize", "hipsolverDnSsyevjBatched_bufferSize", "library"); - subst("cusolverDnSsyevj_bufferSize", "hipsolverDnSsyevj_bufferSize", "library"); - subst("cusolverDnSsygvd", "hipsolverDnSsygvd", "library"); - subst("cusolverDnSsygvd_bufferSize", "hipsolverDnSsygvd_bufferSize", "library"); - subst("cusolverDnSsygvdx", "hipsolverDnSsygvdx", "library"); - subst("cusolverDnSsygvdx_bufferSize", "hipsolverDnSsygvdx_bufferSize", "library"); - subst("cusolverDnSsygvj", "hipsolverDnSsygvj", "library"); - subst("cusolverDnSsygvj_bufferSize", "hipsolverDnSsygvj_bufferSize", "library"); - subst("cusolverDnSsytrd", "hipsolverDnSsytrd", "library"); - subst("cusolverDnSsytrd_bufferSize", "hipsolverDnSsytrd_bufferSize", "library"); - subst("cusolverDnSsytrf", "hipsolverDnSsytrf", "library"); - subst("cusolverDnSsytrf_bufferSize", "hipsolverDnSsytrf_bufferSize", "library"); - subst("cusolverDnXgesvdjGetResidual", "hipsolverDnXgesvdjGetResidual", "library"); - subst("cusolverDnXgesvdjGetSweeps", "hipsolverDnXgesvdjGetSweeps", "library"); - subst("cusolverDnXgesvdjSetMaxSweeps", "hipsolverDnXgesvdjSetMaxSweeps", "library"); - subst("cusolverDnXgesvdjSetSortEig", "hipsolverDnXgesvdjSetSortEig", "library"); - subst("cusolverDnXgesvdjSetTolerance", "hipsolverDnXgesvdjSetTolerance", "library"); - subst("cusolverDnXgetrf", "hipsolverDnXgetrf", "library"); - subst("cusolverDnXgetrf_bufferSize", "hipsolverDnXgetrf_bufferSize", "library"); - subst("cusolverDnXgetrs", "hipsolverDnXgetrs", "library"); - subst("cusolverDnXsyevjGetResidual", "hipsolverDnXsyevjGetResidual", "library"); - subst("cusolverDnXsyevjGetSweeps", "hipsolverDnXsyevjGetSweeps", "library"); - subst("cusolverDnXsyevjSetMaxSweeps", "hipsolverDnXsyevjSetMaxSweeps", "library"); - subst("cusolverDnXsyevjSetSortEig", "hipsolverDnXsyevjSetSortEig", "library"); - subst("cusolverDnXsyevjSetTolerance", "hipsolverDnXsyevjSetTolerance", "library"); - subst("cusolverDnZZgels", "hipsolverDnZZgels", "library"); - subst("cusolverDnZZgels_bufferSize", "hipsolverDnZZgels_bufferSize", "library"); - subst("cusolverDnZZgesv", "hipsolverDnZZgesv", "library"); - subst("cusolverDnZZgesv_bufferSize", "hipsolverDnZZgesv_bufferSize", "library"); - subst("cusolverDnZgebrd", "hipsolverDnZgebrd", "library"); - subst("cusolverDnZgebrd_bufferSize", "hipsolverDnZgebrd_bufferSize", "library"); - subst("cusolverDnZgeqrf", "hipsolverDnZgeqrf", "library"); - subst("cusolverDnZgeqrf_bufferSize", "hipsolverDnZgeqrf_bufferSize", "library"); - subst("cusolverDnZgesvd", "hipsolverDnZgesvd", "library"); - subst("cusolverDnZgesvd_bufferSize", "hipsolverDnZgesvd_bufferSize", "library"); - subst("cusolverDnZgesvdaStridedBatched", "hipsolverDnZgesvdaStridedBatched", "library"); - subst("cusolverDnZgesvdaStridedBatched_bufferSize", "hipsolverDnZgesvdaStridedBatched_bufferSize", "library"); - subst("cusolverDnZgesvdj", "hipsolverDnZgesvdj", "library"); - subst("cusolverDnZgesvdjBatched", "hipsolverDnZgesvdjBatched", "library"); - subst("cusolverDnZgesvdjBatched_bufferSize", "hipsolverDnZgesvdjBatched_bufferSize", "library"); - subst("cusolverDnZgesvdj_bufferSize", "hipsolverDnZgesvdj_bufferSize", "library"); - subst("cusolverDnZgetrf", "hipsolverDnZgetrf", "library"); - subst("cusolverDnZgetrf_bufferSize", "hipsolverDnZgetrf_bufferSize", "library"); - subst("cusolverDnZgetrs", "hipsolverDnZgetrs", "library"); - subst("cusolverDnZheevd", "hipsolverDnZheevd", "library"); - subst("cusolverDnZheevd_bufferSize", "hipsolverDnZheevd_bufferSize", "library"); - subst("cusolverDnZheevdx", "hipsolverDnZheevdx", "library"); - subst("cusolverDnZheevdx_bufferSize", "hipsolverDnZheevdx_bufferSize", "library"); - subst("cusolverDnZheevj", "hipsolverDnZheevj", "library"); - subst("cusolverDnZheevjBatched", "hipsolverDnZheevjBatched", "library"); - subst("cusolverDnZheevjBatched_bufferSize", "hipsolverDnZheevjBatched_bufferSize", "library"); - subst("cusolverDnZheevj_bufferSize", "hipsolverDnZheevj_bufferSize", "library"); - subst("cusolverDnZhegvd", "hipsolverDnZhegvd", "library"); - subst("cusolverDnZhegvd_bufferSize", "hipsolverDnZhegvd_bufferSize", "library"); - subst("cusolverDnZhegvdx", "hipsolverDnZhegvdx", "library"); - subst("cusolverDnZhegvdx_bufferSize", "hipsolverDnZhegvdx_bufferSize", "library"); - subst("cusolverDnZhegvj", "hipsolverDnZhegvj", "library"); - subst("cusolverDnZhegvj_bufferSize", "hipsolverDnZhegvj_bufferSize", "library"); - subst("cusolverDnZhetrd", "hipsolverDnZhetrd", "library"); - subst("cusolverDnZhetrd_bufferSize", "hipsolverDnZhetrd_bufferSize", "library"); - subst("cusolverDnZpotrf", "hipsolverDnZpotrf", "library"); - subst("cusolverDnZpotrfBatched", "hipsolverDnZpotrfBatched", "library"); - subst("cusolverDnZpotrf_bufferSize", "hipsolverDnZpotrf_bufferSize", "library"); - subst("cusolverDnZpotri", "hipsolverDnZpotri", "library"); - subst("cusolverDnZpotri_bufferSize", "hipsolverDnZpotri_bufferSize", "library"); - subst("cusolverDnZpotrs", "hipsolverDnZpotrs", "library"); - subst("cusolverDnZpotrsBatched", "hipsolverDnZpotrsBatched", "library"); - subst("cusolverDnZsytrf", "hipsolverDnZsytrf", "library"); - subst("cusolverDnZsytrf_bufferSize", "hipsolverDnZsytrf_bufferSize", "library"); - subst("cusolverDnZungbr", "hipsolverDnZungbr", "library"); - subst("cusolverDnZungbr_bufferSize", "hipsolverDnZungbr_bufferSize", "library"); - subst("cusolverDnZungqr", "hipsolverDnZungqr", "library"); - subst("cusolverDnZungqr_bufferSize", "hipsolverDnZungqr_bufferSize", "library"); - subst("cusolverDnZungtr", "hipsolverDnZungtr", "library"); - subst("cusolverDnZungtr_bufferSize", "hipsolverDnZungtr_bufferSize", "library"); - subst("cusolverDnZunmqr", "hipsolverDnZunmqr", "library"); - subst("cusolverDnZunmqr_bufferSize", "hipsolverDnZunmqr_bufferSize", "library"); - subst("cusolverDnZunmtr", "hipsolverDnZunmtr", "library"); - subst("cusolverDnZunmtr_bufferSize", "hipsolverDnZunmtr_bufferSize", "library"); - subst("cusolverRfAccessBundledFactorsDevice", "hipsolverRfAccessBundledFactorsDevice", "library"); - subst("cusolverRfAnalyze", "hipsolverRfAnalyze", "library"); - subst("cusolverRfBatchAnalyze", "hipsolverRfBatchAnalyze", "library"); - subst("cusolverRfBatchRefactor", "hipsolverRfBatchRefactor", "library"); - subst("cusolverRfBatchResetValues", "hipsolverRfBatchResetValues", "library"); - subst("cusolverRfBatchSetupHost", "hipsolverRfBatchSetupHost", "library"); - subst("cusolverRfBatchSolve", "hipsolverRfBatchSolve", "library"); - subst("cusolverRfBatchZeroPivot", "hipsolverRfBatchZeroPivot", "library"); - subst("cusolverRfCreate", "hipsolverRfCreate", "library"); - subst("cusolverRfDestroy", "hipsolverRfDestroy", "library"); - subst("cusolverRfExtractBundledFactorsHost", "hipsolverRfExtractBundledFactorsHost", "library"); - subst("cusolverRfExtractSplitFactorsHost", "hipsolverRfExtractSplitFactorsHost", "library"); - subst("cusolverRfGetMatrixFormat", "hipsolverRfGetMatrixFormat", "library"); - subst("cusolverRfGetNumericBoostReport", "hipsolverRfGetNumericBoostReport", "library"); - subst("cusolverRfGetNumericProperties", "hipsolverRfGetNumericProperties", "library"); - subst("cusolverRfGetResetValuesFastMode", "hipsolverRfGetResetValuesFastMode", "library"); - subst("cusolverRfRefactor", "hipsolverRfRefactor", "library"); - subst("cusolverRfResetValues", "hipsolverRfResetValues", "library"); - subst("cusolverRfSetAlgs", "hipsolverRfSetAlgs", "library"); - subst("cusolverRfSetMatrixFormat", "hipsolverRfSetMatrixFormat", "library"); - subst("cusolverRfSetNumericProperties", "hipsolverRfSetNumericProperties", "library"); - subst("cusolverRfSetResetValuesFastMode", "hipsolverRfSetResetValuesFastMode", "library"); - subst("cusolverRfSetupDevice", "hipsolverRfSetupDevice", "library"); - subst("cusolverRfSetupHost", "hipsolverRfSetupHost", "library"); - subst("cusolverRfSolve", "hipsolverRfSolve", "library"); - subst("cusolverSpCreate", "hipsolverSpCreate", "library"); - subst("cusolverSpDcsrlsvchol", "hipsolverSpDcsrlsvchol", "library"); - subst("cusolverSpDcsrlsvcholHost", "hipsolverSpDcsrlsvcholHost", "library"); - subst("cusolverSpDestroy", "hipsolverSpDestroy", "library"); - subst("cusolverSpScsrlsvchol", "hipsolverSpScsrlsvchol", "library"); - subst("cusolverSpScsrlsvcholHost", "hipsolverSpScsrlsvcholHost", "library"); - subst("cusolverSpSetStream", "hipsolverSpSetStream", "library"); - subst("cusparseAxpby", "hipsparseAxpby", "library"); - subst("cusparseBlockedEllGet", "hipsparseBlockedEllGet", "library"); - subst("cusparseCaxpyi", "hipsparseCaxpyi", "library"); - subst("cusparseCbsr2csr", "hipsparseCbsr2csr", "library"); - subst("cusparseCbsric02", "hipsparseCbsric02", "library"); - subst("cusparseCbsric02_analysis", "hipsparseCbsric02_analysis", "library"); - subst("cusparseCbsric02_bufferSize", "hipsparseCbsric02_bufferSize", "library"); - subst("cusparseCbsrilu02", "hipsparseCbsrilu02", "library"); - subst("cusparseCbsrilu02_analysis", "hipsparseCbsrilu02_analysis", "library"); - subst("cusparseCbsrilu02_bufferSize", "hipsparseCbsrilu02_bufferSize", "library"); - subst("cusparseCbsrilu02_numericBoost", "hipsparseCbsrilu02_numericBoost", "library"); - subst("cusparseCbsrmm", "hipsparseCbsrmm", "library"); - subst("cusparseCbsrmv", "hipsparseCbsrmv", "library"); - subst("cusparseCbsrsm2_analysis", "hipsparseCbsrsm2_analysis", "library"); - subst("cusparseCbsrsm2_bufferSize", "hipsparseCbsrsm2_bufferSize", "library"); - subst("cusparseCbsrsm2_solve", "hipsparseCbsrsm2_solve", "library"); - subst("cusparseCbsrsv2_analysis", "hipsparseCbsrsv2_analysis", "library"); - subst("cusparseCbsrsv2_bufferSize", "hipsparseCbsrsv2_bufferSize", "library"); - subst("cusparseCbsrsv2_bufferSizeExt", "hipsparseCbsrsv2_bufferSizeExt", "library"); - subst("cusparseCbsrsv2_solve", "hipsparseCbsrsv2_solve", "library"); - subst("cusparseCbsrxmv", "hipsparseCbsrxmv", "library"); - subst("cusparseCcsc2dense", "hipsparseCcsc2dense", "library"); - subst("cusparseCcsr2bsr", "hipsparseCcsr2bsr", "library"); - subst("cusparseCcsr2csc", "hipsparseCcsr2csc", "library"); - subst("cusparseCcsr2csr_compress", "hipsparseCcsr2csr_compress", "library"); - subst("cusparseCcsr2csru", "hipsparseCcsr2csru", "library"); - subst("cusparseCcsr2dense", "hipsparseCcsr2dense", "library"); - subst("cusparseCcsr2gebsr", "hipsparseCcsr2gebsr", "library"); - subst("cusparseCcsr2gebsr_bufferSize", "hipsparseCcsr2gebsr_bufferSize", "library"); - subst("cusparseCcsr2hyb", "hipsparseCcsr2hyb", "library"); - subst("cusparseCcsrcolor", "hipsparseCcsrcolor", "library"); - subst("cusparseCcsrgeam", "hipsparseCcsrgeam", "library"); - subst("cusparseCcsrgeam2", "hipsparseCcsrgeam2", "library"); - subst("cusparseCcsrgeam2_bufferSizeExt", "hipsparseCcsrgeam2_bufferSizeExt", "library"); - subst("cusparseCcsrgemm", "hipsparseCcsrgemm", "library"); - subst("cusparseCcsrgemm2", "hipsparseCcsrgemm2", "library"); - subst("cusparseCcsrgemm2_bufferSizeExt", "hipsparseCcsrgemm2_bufferSizeExt", "library"); - subst("cusparseCcsric02", "hipsparseCcsric02", "library"); - subst("cusparseCcsric02_analysis", "hipsparseCcsric02_analysis", "library"); - subst("cusparseCcsric02_bufferSize", "hipsparseCcsric02_bufferSize", "library"); - subst("cusparseCcsric02_bufferSizeExt", "hipsparseCcsric02_bufferSizeExt", "library"); - subst("cusparseCcsrilu02", "hipsparseCcsrilu02", "library"); - subst("cusparseCcsrilu02_analysis", "hipsparseCcsrilu02_analysis", "library"); - subst("cusparseCcsrilu02_bufferSize", "hipsparseCcsrilu02_bufferSize", "library"); - subst("cusparseCcsrilu02_bufferSizeExt", "hipsparseCcsrilu02_bufferSizeExt", "library"); - subst("cusparseCcsrilu02_numericBoost", "hipsparseCcsrilu02_numericBoost", "library"); - subst("cusparseCcsrmm", "hipsparseCcsrmm", "library"); - subst("cusparseCcsrmm2", "hipsparseCcsrmm2", "library"); - subst("cusparseCcsrmv", "hipsparseCcsrmv", "library"); - subst("cusparseCcsrsm2_analysis", "hipsparseCcsrsm2_analysis", "library"); - subst("cusparseCcsrsm2_bufferSizeExt", "hipsparseCcsrsm2_bufferSizeExt", "library"); - subst("cusparseCcsrsm2_solve", "hipsparseCcsrsm2_solve", "library"); - subst("cusparseCcsrsv2_analysis", "hipsparseCcsrsv2_analysis", "library"); - subst("cusparseCcsrsv2_bufferSize", "hipsparseCcsrsv2_bufferSize", "library"); - subst("cusparseCcsrsv2_bufferSizeExt", "hipsparseCcsrsv2_bufferSizeExt", "library"); - subst("cusparseCcsrsv2_solve", "hipsparseCcsrsv2_solve", "library"); - subst("cusparseCcsru2csr", "hipsparseCcsru2csr", "library"); - subst("cusparseCcsru2csr_bufferSizeExt", "hipsparseCcsru2csr_bufferSizeExt", "library"); - subst("cusparseCdense2csc", "hipsparseCdense2csc", "library"); - subst("cusparseCdense2csr", "hipsparseCdense2csr", "library"); - subst("cusparseCdotci", "hipsparseCdotci", "library"); - subst("cusparseCdoti", "hipsparseCdoti", "library"); - subst("cusparseCgebsr2csr", "hipsparseCgebsr2csr", "library"); - subst("cusparseCgebsr2gebsc", "hipsparseCgebsr2gebsc", "library"); - subst("cusparseCgebsr2gebsc_bufferSize", "hipsparseCgebsr2gebsc_bufferSize", "library"); - subst("cusparseCgebsr2gebsr", "hipsparseCgebsr2gebsr", "library"); - subst("cusparseCgebsr2gebsr_bufferSize", "hipsparseCgebsr2gebsr_bufferSize", "library"); - subst("cusparseCgemmi", "hipsparseCgemmi", "library"); - subst("cusparseCgemvi", "hipsparseCgemvi", "library"); - subst("cusparseCgemvi_bufferSize", "hipsparseCgemvi_bufferSize", "library"); - subst("cusparseCgpsvInterleavedBatch", "hipsparseCgpsvInterleavedBatch", "library"); - subst("cusparseCgpsvInterleavedBatch_bufferSizeExt", "hipsparseCgpsvInterleavedBatch_bufferSizeExt", "library"); - subst("cusparseCgthr", "hipsparseCgthr", "library"); - subst("cusparseCgthrz", "hipsparseCgthrz", "library"); - subst("cusparseCgtsv2", "hipsparseCgtsv2", "library"); - subst("cusparseCgtsv2StridedBatch", "hipsparseCgtsv2StridedBatch", "library"); - subst("cusparseCgtsv2StridedBatch_bufferSizeExt", "hipsparseCgtsv2StridedBatch_bufferSizeExt", "library"); - subst("cusparseCgtsv2_bufferSizeExt", "hipsparseCgtsv2_bufferSizeExt", "library"); - subst("cusparseCgtsv2_nopivot", "hipsparseCgtsv2_nopivot", "library"); - subst("cusparseCgtsv2_nopivot_bufferSizeExt", "hipsparseCgtsv2_nopivot_bufferSizeExt", "library"); - subst("cusparseCgtsvInterleavedBatch", "hipsparseCgtsvInterleavedBatch", "library"); - subst("cusparseCgtsvInterleavedBatch_bufferSizeExt", "hipsparseCgtsvInterleavedBatch_bufferSizeExt", "library"); - subst("cusparseChyb2csr", "hipsparseChyb2csr", "library"); - subst("cusparseChybmv", "hipsparseChybmv", "library"); - subst("cusparseCnnz", "hipsparseCnnz", "library"); - subst("cusparseCnnz_compress", "hipsparseCnnz_compress", "library"); - subst("cusparseConstBlockedEllGet", "hipsparseConstBlockedEllGet", "library"); - subst("cusparseConstCooGet", "hipsparseConstCooGet", "library"); - subst("cusparseConstCscGet", "hipsparseConstCscGet", "library"); - subst("cusparseConstCsrGet", "hipsparseConstCsrGet", "library"); - subst("cusparseConstDnMatGet", "hipsparseConstDnMatGet", "library"); - subst("cusparseConstDnMatGetValues", "hipsparseConstDnMatGetValues", "library"); - subst("cusparseConstDnVecGet", "hipsparseConstDnVecGet", "library"); - subst("cusparseConstDnVecGetValues", "hipsparseConstDnVecGetValues", "library"); - subst("cusparseConstSpMatGetValues", "hipsparseConstSpMatGetValues", "library"); - subst("cusparseConstSpVecGet", "hipsparseConstSpVecGet", "library"); - subst("cusparseConstSpVecGetValues", "hipsparseConstSpVecGetValues", "library"); - subst("cusparseCooAoSGet", "hipsparseCooAoSGet", "library"); - subst("cusparseCooGet", "hipsparseCooGet", "library"); - subst("cusparseCooSetPointers", "hipsparseCooSetPointers", "library"); - subst("cusparseCooSetStridedBatch", "hipsparseCooSetStridedBatch", "library"); - subst("cusparseCopyMatDescr", "hipsparseCopyMatDescr", "library"); - subst("cusparseCreate", "hipsparseCreate", "library"); - subst("cusparseCreateBlockedEll", "hipsparseCreateBlockedEll", "library"); - subst("cusparseCreateBsric02Info", "hipsparseCreateBsric02Info", "library"); - subst("cusparseCreateBsrilu02Info", "hipsparseCreateBsrilu02Info", "library"); - subst("cusparseCreateBsrsm2Info", "hipsparseCreateBsrsm2Info", "library"); - subst("cusparseCreateBsrsv2Info", "hipsparseCreateBsrsv2Info", "library"); - subst("cusparseCreateColorInfo", "hipsparseCreateColorInfo", "library"); - subst("cusparseCreateConstBlockedEll", "hipsparseCreateConstBlockedEll", "library"); - subst("cusparseCreateConstCoo", "hipsparseCreateConstCoo", "library"); - subst("cusparseCreateConstCsc", "hipsparseCreateConstCsc", "library"); - subst("cusparseCreateConstCsr", "hipsparseCreateConstCsr", "library"); - subst("cusparseCreateConstDnMat", "hipsparseCreateConstDnMat", "library"); - subst("cusparseCreateConstDnVec", "hipsparseCreateConstDnVec", "library"); - subst("cusparseCreateConstSpVec", "hipsparseCreateConstSpVec", "library"); - subst("cusparseCreateCoo", "hipsparseCreateCoo", "library"); - subst("cusparseCreateCooAoS", "hipsparseCreateCooAoS", "library"); - subst("cusparseCreateCsc", "hipsparseCreateCsc", "library"); - subst("cusparseCreateCsr", "hipsparseCreateCsr", "library"); - subst("cusparseCreateCsrgemm2Info", "hipsparseCreateCsrgemm2Info", "library"); - subst("cusparseCreateCsric02Info", "hipsparseCreateCsric02Info", "library"); - subst("cusparseCreateCsrilu02Info", "hipsparseCreateCsrilu02Info", "library"); - subst("cusparseCreateCsrsm2Info", "hipsparseCreateCsrsm2Info", "library"); - subst("cusparseCreateCsrsv2Info", "hipsparseCreateCsrsv2Info", "library"); - subst("cusparseCreateCsru2csrInfo", "hipsparseCreateCsru2csrInfo", "library"); - subst("cusparseCreateDnMat", "hipsparseCreateDnMat", "library"); - subst("cusparseCreateDnVec", "hipsparseCreateDnVec", "library"); - subst("cusparseCreateHybMat", "hipsparseCreateHybMat", "library"); - subst("cusparseCreateIdentityPermutation", "hipsparseCreateIdentityPermutation", "library"); - subst("cusparseCreateMatDescr", "hipsparseCreateMatDescr", "library"); - subst("cusparseCreatePruneInfo", "hipsparseCreatePruneInfo", "library"); - subst("cusparseCreateSpVec", "hipsparseCreateSpVec", "library"); - subst("cusparseCscGet", "hipsparseCscGet", "library"); - subst("cusparseCscSetPointers", "hipsparseCscSetPointers", "library"); - subst("cusparseCsctr", "hipsparseCsctr", "library"); - subst("cusparseCsr2cscEx2", "hipsparseCsr2cscEx2", "library"); - subst("cusparseCsr2cscEx2_bufferSize", "hipsparseCsr2cscEx2_bufferSize", "library"); - subst("cusparseCsrGet", "hipsparseCsrGet", "library"); - subst("cusparseCsrSetPointers", "hipsparseCsrSetPointers", "library"); - subst("cusparseCsrSetStridedBatch", "hipsparseCsrSetStridedBatch", "library"); - subst("cusparseDaxpyi", "hipsparseDaxpyi", "library"); - subst("cusparseDbsr2csr", "hipsparseDbsr2csr", "library"); - subst("cusparseDbsric02", "hipsparseDbsric02", "library"); - subst("cusparseDbsric02_analysis", "hipsparseDbsric02_analysis", "library"); - subst("cusparseDbsric02_bufferSize", "hipsparseDbsric02_bufferSize", "library"); - subst("cusparseDbsrilu02", "hipsparseDbsrilu02", "library"); - subst("cusparseDbsrilu02_analysis", "hipsparseDbsrilu02_analysis", "library"); - subst("cusparseDbsrilu02_bufferSize", "hipsparseDbsrilu02_bufferSize", "library"); - subst("cusparseDbsrilu02_numericBoost", "hipsparseDbsrilu02_numericBoost", "library"); - subst("cusparseDbsrmm", "hipsparseDbsrmm", "library"); - subst("cusparseDbsrmv", "hipsparseDbsrmv", "library"); - subst("cusparseDbsrsm2_analysis", "hipsparseDbsrsm2_analysis", "library"); - subst("cusparseDbsrsm2_bufferSize", "hipsparseDbsrsm2_bufferSize", "library"); - subst("cusparseDbsrsm2_solve", "hipsparseDbsrsm2_solve", "library"); - subst("cusparseDbsrsv2_analysis", "hipsparseDbsrsv2_analysis", "library"); - subst("cusparseDbsrsv2_bufferSize", "hipsparseDbsrsv2_bufferSize", "library"); - subst("cusparseDbsrsv2_bufferSizeExt", "hipsparseDbsrsv2_bufferSizeExt", "library"); - subst("cusparseDbsrsv2_solve", "hipsparseDbsrsv2_solve", "library"); - subst("cusparseDbsrxmv", "hipsparseDbsrxmv", "library"); - subst("cusparseDcsc2dense", "hipsparseDcsc2dense", "library"); - subst("cusparseDcsr2bsr", "hipsparseDcsr2bsr", "library"); - subst("cusparseDcsr2csc", "hipsparseDcsr2csc", "library"); - subst("cusparseDcsr2csr_compress", "hipsparseDcsr2csr_compress", "library"); - subst("cusparseDcsr2csru", "hipsparseDcsr2csru", "library"); - subst("cusparseDcsr2dense", "hipsparseDcsr2dense", "library"); - subst("cusparseDcsr2gebsr", "hipsparseDcsr2gebsr", "library"); - subst("cusparseDcsr2gebsr_bufferSize", "hipsparseDcsr2gebsr_bufferSize", "library"); - subst("cusparseDcsr2hyb", "hipsparseDcsr2hyb", "library"); - subst("cusparseDcsrcolor", "hipsparseDcsrcolor", "library"); - subst("cusparseDcsrgeam", "hipsparseDcsrgeam", "library"); - subst("cusparseDcsrgeam2", "hipsparseDcsrgeam2", "library"); - subst("cusparseDcsrgeam2_bufferSizeExt", "hipsparseDcsrgeam2_bufferSizeExt", "library"); - subst("cusparseDcsrgemm", "hipsparseDcsrgemm", "library"); - subst("cusparseDcsrgemm2", "hipsparseDcsrgemm2", "library"); - subst("cusparseDcsrgemm2_bufferSizeExt", "hipsparseDcsrgemm2_bufferSizeExt", "library"); - subst("cusparseDcsric02", "hipsparseDcsric02", "library"); - subst("cusparseDcsric02_analysis", "hipsparseDcsric02_analysis", "library"); - subst("cusparseDcsric02_bufferSize", "hipsparseDcsric02_bufferSize", "library"); - subst("cusparseDcsric02_bufferSizeExt", "hipsparseDcsric02_bufferSizeExt", "library"); - subst("cusparseDcsrilu02", "hipsparseDcsrilu02", "library"); - subst("cusparseDcsrilu02_analysis", "hipsparseDcsrilu02_analysis", "library"); - subst("cusparseDcsrilu02_bufferSize", "hipsparseDcsrilu02_bufferSize", "library"); - subst("cusparseDcsrilu02_bufferSizeExt", "hipsparseDcsrilu02_bufferSizeExt", "library"); - subst("cusparseDcsrilu02_numericBoost", "hipsparseDcsrilu02_numericBoost", "library"); - subst("cusparseDcsrmm", "hipsparseDcsrmm", "library"); - subst("cusparseDcsrmm2", "hipsparseDcsrmm2", "library"); - subst("cusparseDcsrmv", "hipsparseDcsrmv", "library"); - subst("cusparseDcsrsm2_analysis", "hipsparseDcsrsm2_analysis", "library"); - subst("cusparseDcsrsm2_bufferSizeExt", "hipsparseDcsrsm2_bufferSizeExt", "library"); - subst("cusparseDcsrsm2_solve", "hipsparseDcsrsm2_solve", "library"); - subst("cusparseDcsrsv2_analysis", "hipsparseDcsrsv2_analysis", "library"); - subst("cusparseDcsrsv2_bufferSize", "hipsparseDcsrsv2_bufferSize", "library"); - subst("cusparseDcsrsv2_bufferSizeExt", "hipsparseDcsrsv2_bufferSizeExt", "library"); - subst("cusparseDcsrsv2_solve", "hipsparseDcsrsv2_solve", "library"); - subst("cusparseDcsru2csr", "hipsparseDcsru2csr", "library"); - subst("cusparseDcsru2csr_bufferSizeExt", "hipsparseDcsru2csr_bufferSizeExt", "library"); - subst("cusparseDdense2csc", "hipsparseDdense2csc", "library"); - subst("cusparseDdense2csr", "hipsparseDdense2csr", "library"); - subst("cusparseDdoti", "hipsparseDdoti", "library"); - subst("cusparseDenseToSparse_analysis", "hipsparseDenseToSparse_analysis", "library"); - subst("cusparseDenseToSparse_bufferSize", "hipsparseDenseToSparse_bufferSize", "library"); - subst("cusparseDenseToSparse_convert", "hipsparseDenseToSparse_convert", "library"); - subst("cusparseDestroy", "hipsparseDestroy", "library"); - subst("cusparseDestroyBsric02Info", "hipsparseDestroyBsric02Info", "library"); - subst("cusparseDestroyBsrilu02Info", "hipsparseDestroyBsrilu02Info", "library"); - subst("cusparseDestroyBsrsm2Info", "hipsparseDestroyBsrsm2Info", "library"); - subst("cusparseDestroyBsrsv2Info", "hipsparseDestroyBsrsv2Info", "library"); - subst("cusparseDestroyColorInfo", "hipsparseDestroyColorInfo", "library"); - subst("cusparseDestroyCsrgemm2Info", "hipsparseDestroyCsrgemm2Info", "library"); - subst("cusparseDestroyCsric02Info", "hipsparseDestroyCsric02Info", "library"); - subst("cusparseDestroyCsrilu02Info", "hipsparseDestroyCsrilu02Info", "library"); - subst("cusparseDestroyCsrsm2Info", "hipsparseDestroyCsrsm2Info", "library"); - subst("cusparseDestroyCsrsv2Info", "hipsparseDestroyCsrsv2Info", "library"); - subst("cusparseDestroyCsru2csrInfo", "hipsparseDestroyCsru2csrInfo", "library"); - subst("cusparseDestroyDnMat", "hipsparseDestroyDnMat", "library"); - subst("cusparseDestroyDnVec", "hipsparseDestroyDnVec", "library"); - subst("cusparseDestroyHybMat", "hipsparseDestroyHybMat", "library"); - subst("cusparseDestroyMatDescr", "hipsparseDestroyMatDescr", "library"); - subst("cusparseDestroyPruneInfo", "hipsparseDestroyPruneInfo", "library"); - subst("cusparseDestroySpMat", "hipsparseDestroySpMat", "library"); - subst("cusparseDestroySpVec", "hipsparseDestroySpVec", "library"); - subst("cusparseDgebsr2csr", "hipsparseDgebsr2csr", "library"); - subst("cusparseDgebsr2gebsc", "hipsparseDgebsr2gebsc", "library"); - subst("cusparseDgebsr2gebsc_bufferSize", "hipsparseDgebsr2gebsc_bufferSize", "library"); - subst("cusparseDgebsr2gebsr", "hipsparseDgebsr2gebsr", "library"); - subst("cusparseDgebsr2gebsr_bufferSize", "hipsparseDgebsr2gebsr_bufferSize", "library"); - subst("cusparseDgemmi", "hipsparseDgemmi", "library"); - subst("cusparseDgemvi", "hipsparseDgemvi", "library"); - subst("cusparseDgemvi_bufferSize", "hipsparseDgemvi_bufferSize", "library"); - subst("cusparseDgpsvInterleavedBatch", "hipsparseDgpsvInterleavedBatch", "library"); - subst("cusparseDgpsvInterleavedBatch_bufferSizeExt", "hipsparseDgpsvInterleavedBatch_bufferSizeExt", "library"); - subst("cusparseDgthr", "hipsparseDgthr", "library"); - subst("cusparseDgthrz", "hipsparseDgthrz", "library"); - subst("cusparseDgtsv2", "hipsparseDgtsv2", "library"); - subst("cusparseDgtsv2StridedBatch", "hipsparseDgtsv2StridedBatch", "library"); - subst("cusparseDgtsv2StridedBatch_bufferSizeExt", "hipsparseDgtsv2StridedBatch_bufferSizeExt", "library"); - subst("cusparseDgtsv2_bufferSizeExt", "hipsparseDgtsv2_bufferSizeExt", "library"); - subst("cusparseDgtsv2_nopivot", "hipsparseDgtsv2_nopivot", "library"); - subst("cusparseDgtsv2_nopivot_bufferSizeExt", "hipsparseDgtsv2_nopivot_bufferSizeExt", "library"); - subst("cusparseDgtsvInterleavedBatch", "hipsparseDgtsvInterleavedBatch", "library"); - subst("cusparseDgtsvInterleavedBatch_bufferSizeExt", "hipsparseDgtsvInterleavedBatch_bufferSizeExt", "library"); - subst("cusparseDhyb2csr", "hipsparseDhyb2csr", "library"); - subst("cusparseDhybmv", "hipsparseDhybmv", "library"); - subst("cusparseDnMatGet", "hipsparseDnMatGet", "library"); - subst("cusparseDnMatGetStridedBatch", "hipsparseDnMatGetStridedBatch", "library"); - subst("cusparseDnMatGetValues", "hipsparseDnMatGetValues", "library"); - subst("cusparseDnMatSetStridedBatch", "hipsparseDnMatSetStridedBatch", "library"); - subst("cusparseDnMatSetValues", "hipsparseDnMatSetValues", "library"); - subst("cusparseDnVecGet", "hipsparseDnVecGet", "library"); - subst("cusparseDnVecGetValues", "hipsparseDnVecGetValues", "library"); - subst("cusparseDnVecSetValues", "hipsparseDnVecSetValues", "library"); - subst("cusparseDnnz", "hipsparseDnnz", "library"); - subst("cusparseDnnz_compress", "hipsparseDnnz_compress", "library"); - subst("cusparseDpruneCsr2csr", "hipsparseDpruneCsr2csr", "library"); - subst("cusparseDpruneCsr2csrByPercentage", "hipsparseDpruneCsr2csrByPercentage", "library"); - subst("cusparseDpruneCsr2csrByPercentage_bufferSizeExt", "hipsparseDpruneCsr2csrByPercentage_bufferSizeExt", "library"); - subst("cusparseDpruneCsr2csrNnz", "hipsparseDpruneCsr2csrNnz", "library"); - subst("cusparseDpruneCsr2csrNnzByPercentage", "hipsparseDpruneCsr2csrNnzByPercentage", "library"); - subst("cusparseDpruneCsr2csr_bufferSizeExt", "hipsparseDpruneCsr2csr_bufferSizeExt", "library"); - subst("cusparseDpruneDense2csr", "hipsparseDpruneDense2csr", "library"); - subst("cusparseDpruneDense2csrByPercentage", "hipsparseDpruneDense2csrByPercentage", "library"); - subst("cusparseDpruneDense2csrByPercentage_bufferSizeExt", "hipsparseDpruneDense2csrByPercentage_bufferSizeExt", "library"); - subst("cusparseDpruneDense2csrNnz", "hipsparseDpruneDense2csrNnz", "library"); - subst("cusparseDpruneDense2csrNnzByPercentage", "hipsparseDpruneDense2csrNnzByPercentage", "library"); - subst("cusparseDpruneDense2csr_bufferSizeExt", "hipsparseDpruneDense2csr_bufferSizeExt", "library"); - subst("cusparseDroti", "hipsparseDroti", "library"); - subst("cusparseDsctr", "hipsparseDsctr", "library"); - subst("cusparseGather", "hipsparseGather", "library"); - subst("cusparseGetErrorName", "hipsparseGetErrorName", "library"); - subst("cusparseGetErrorString", "hipsparseGetErrorString", "library"); - subst("cusparseGetMatDiagType", "hipsparseGetMatDiagType", "library"); - subst("cusparseGetMatFillMode", "hipsparseGetMatFillMode", "library"); - subst("cusparseGetMatIndexBase", "hipsparseGetMatIndexBase", "library"); - subst("cusparseGetMatType", "hipsparseGetMatType", "library"); - subst("cusparseGetPointerMode", "hipsparseGetPointerMode", "library"); - subst("cusparseGetStream", "hipsparseGetStream", "library"); - subst("cusparseGetVersion", "hipsparseGetVersion", "library"); - subst("cusparseRot", "hipsparseRot", "library"); - subst("cusparseSDDMM", "hipsparseSDDMM", "library"); - subst("cusparseSDDMM_bufferSize", "hipsparseSDDMM_bufferSize", "library"); - subst("cusparseSDDMM_preprocess", "hipsparseSDDMM_preprocess", "library"); - subst("cusparseSaxpyi", "hipsparseSaxpyi", "library"); - subst("cusparseSbsr2csr", "hipsparseSbsr2csr", "library"); - subst("cusparseSbsric02", "hipsparseSbsric02", "library"); - subst("cusparseSbsric02_analysis", "hipsparseSbsric02_analysis", "library"); - subst("cusparseSbsric02_bufferSize", "hipsparseSbsric02_bufferSize", "library"); - subst("cusparseSbsrilu02", "hipsparseSbsrilu02", "library"); - subst("cusparseSbsrilu02_analysis", "hipsparseSbsrilu02_analysis", "library"); - subst("cusparseSbsrilu02_bufferSize", "hipsparseSbsrilu02_bufferSize", "library"); - subst("cusparseSbsrilu02_numericBoost", "hipsparseSbsrilu02_numericBoost", "library"); - subst("cusparseSbsrmm", "hipsparseSbsrmm", "library"); - subst("cusparseSbsrmv", "hipsparseSbsrmv", "library"); - subst("cusparseSbsrsm2_analysis", "hipsparseSbsrsm2_analysis", "library"); - subst("cusparseSbsrsm2_bufferSize", "hipsparseSbsrsm2_bufferSize", "library"); - subst("cusparseSbsrsm2_solve", "hipsparseSbsrsm2_solve", "library"); - subst("cusparseSbsrsv2_analysis", "hipsparseSbsrsv2_analysis", "library"); - subst("cusparseSbsrsv2_bufferSize", "hipsparseSbsrsv2_bufferSize", "library"); - subst("cusparseSbsrsv2_bufferSizeExt", "hipsparseSbsrsv2_bufferSizeExt", "library"); - subst("cusparseSbsrsv2_solve", "hipsparseSbsrsv2_solve", "library"); - subst("cusparseSbsrxmv", "hipsparseSbsrxmv", "library"); - subst("cusparseScatter", "hipsparseScatter", "library"); - subst("cusparseScsc2dense", "hipsparseScsc2dense", "library"); - subst("cusparseScsr2bsr", "hipsparseScsr2bsr", "library"); - subst("cusparseScsr2csc", "hipsparseScsr2csc", "library"); - subst("cusparseScsr2csr_compress", "hipsparseScsr2csr_compress", "library"); - subst("cusparseScsr2csru", "hipsparseScsr2csru", "library"); - subst("cusparseScsr2dense", "hipsparseScsr2dense", "library"); - subst("cusparseScsr2gebsr", "hipsparseScsr2gebsr", "library"); - subst("cusparseScsr2gebsr_bufferSize", "hipsparseScsr2gebsr_bufferSize", "library"); - subst("cusparseScsr2hyb", "hipsparseScsr2hyb", "library"); - subst("cusparseScsrcolor", "hipsparseScsrcolor", "library"); - subst("cusparseScsrgeam", "hipsparseScsrgeam", "library"); - subst("cusparseScsrgeam2", "hipsparseScsrgeam2", "library"); - subst("cusparseScsrgeam2_bufferSizeExt", "hipsparseScsrgeam2_bufferSizeExt", "library"); - subst("cusparseScsrgemm", "hipsparseScsrgemm", "library"); - subst("cusparseScsrgemm2", "hipsparseScsrgemm2", "library"); - subst("cusparseScsrgemm2_bufferSizeExt", "hipsparseScsrgemm2_bufferSizeExt", "library"); - subst("cusparseScsric02", "hipsparseScsric02", "library"); - subst("cusparseScsric02_analysis", "hipsparseScsric02_analysis", "library"); - subst("cusparseScsric02_bufferSize", "hipsparseScsric02_bufferSize", "library"); - subst("cusparseScsric02_bufferSizeExt", "hipsparseScsric02_bufferSizeExt", "library"); - subst("cusparseScsrilu02", "hipsparseScsrilu02", "library"); - subst("cusparseScsrilu02_analysis", "hipsparseScsrilu02_analysis", "library"); - subst("cusparseScsrilu02_bufferSize", "hipsparseScsrilu02_bufferSize", "library"); - subst("cusparseScsrilu02_bufferSizeExt", "hipsparseScsrilu02_bufferSizeExt", "library"); - subst("cusparseScsrilu02_numericBoost", "hipsparseScsrilu02_numericBoost", "library"); - subst("cusparseScsrmm", "hipsparseScsrmm", "library"); - subst("cusparseScsrmm2", "hipsparseScsrmm2", "library"); - subst("cusparseScsrmv", "hipsparseScsrmv", "library"); - subst("cusparseScsrsm2_analysis", "hipsparseScsrsm2_analysis", "library"); - subst("cusparseScsrsm2_bufferSizeExt", "hipsparseScsrsm2_bufferSizeExt", "library"); - subst("cusparseScsrsm2_solve", "hipsparseScsrsm2_solve", "library"); - subst("cusparseScsrsv2_analysis", "hipsparseScsrsv2_analysis", "library"); - subst("cusparseScsrsv2_bufferSize", "hipsparseScsrsv2_bufferSize", "library"); - subst("cusparseScsrsv2_bufferSizeExt", "hipsparseScsrsv2_bufferSizeExt", "library"); - subst("cusparseScsrsv2_solve", "hipsparseScsrsv2_solve", "library"); - subst("cusparseScsru2csr", "hipsparseScsru2csr", "library"); - subst("cusparseScsru2csr_bufferSizeExt", "hipsparseScsru2csr_bufferSizeExt", "library"); - subst("cusparseSdense2csc", "hipsparseSdense2csc", "library"); - subst("cusparseSdense2csr", "hipsparseSdense2csr", "library"); - subst("cusparseSdoti", "hipsparseSdoti", "library"); - subst("cusparseSetMatDiagType", "hipsparseSetMatDiagType", "library"); - subst("cusparseSetMatFillMode", "hipsparseSetMatFillMode", "library"); - subst("cusparseSetMatIndexBase", "hipsparseSetMatIndexBase", "library"); - subst("cusparseSetMatType", "hipsparseSetMatType", "library"); - subst("cusparseSetPointerMode", "hipsparseSetPointerMode", "library"); - subst("cusparseSetStream", "hipsparseSetStream", "library"); - subst("cusparseSgebsr2csr", "hipsparseSgebsr2csr", "library"); - subst("cusparseSgebsr2gebsc", "hipsparseSgebsr2gebsc", "library"); - subst("cusparseSgebsr2gebsc_bufferSize", "hipsparseSgebsr2gebsc_bufferSize", "library"); - subst("cusparseSgebsr2gebsr", "hipsparseSgebsr2gebsr", "library"); - subst("cusparseSgebsr2gebsr_bufferSize", "hipsparseSgebsr2gebsr_bufferSize", "library"); - subst("cusparseSgemmi", "hipsparseSgemmi", "library"); - subst("cusparseSgemvi", "hipsparseSgemvi", "library"); - subst("cusparseSgemvi_bufferSize", "hipsparseSgemvi_bufferSize", "library"); - subst("cusparseSgpsvInterleavedBatch", "hipsparseSgpsvInterleavedBatch", "library"); - subst("cusparseSgpsvInterleavedBatch_bufferSizeExt", "hipsparseSgpsvInterleavedBatch_bufferSizeExt", "library"); - subst("cusparseSgthr", "hipsparseSgthr", "library"); - subst("cusparseSgthrz", "hipsparseSgthrz", "library"); - subst("cusparseSgtsv2", "hipsparseSgtsv2", "library"); - subst("cusparseSgtsv2StridedBatch", "hipsparseSgtsv2StridedBatch", "library"); - subst("cusparseSgtsv2StridedBatch_bufferSizeExt", "hipsparseSgtsv2StridedBatch_bufferSizeExt", "library"); - subst("cusparseSgtsv2_bufferSizeExt", "hipsparseSgtsv2_bufferSizeExt", "library"); - subst("cusparseSgtsv2_nopivot", "hipsparseSgtsv2_nopivot", "library"); - subst("cusparseSgtsv2_nopivot_bufferSizeExt", "hipsparseSgtsv2_nopivot_bufferSizeExt", "library"); - subst("cusparseSgtsvInterleavedBatch", "hipsparseSgtsvInterleavedBatch", "library"); - subst("cusparseSgtsvInterleavedBatch_bufferSizeExt", "hipsparseSgtsvInterleavedBatch_bufferSizeExt", "library"); - subst("cusparseShyb2csr", "hipsparseShyb2csr", "library"); - subst("cusparseShybmv", "hipsparseShybmv", "library"); - subst("cusparseSnnz", "hipsparseSnnz", "library"); - subst("cusparseSnnz_compress", "hipsparseSnnz_compress", "library"); - subst("cusparseSpGEMM_compute", "hipsparseSpGEMM_compute", "library"); - subst("cusparseSpGEMM_copy", "hipsparseSpGEMM_copy", "library"); - subst("cusparseSpGEMM_createDescr", "hipsparseSpGEMM_createDescr", "library"); - subst("cusparseSpGEMM_destroyDescr", "hipsparseSpGEMM_destroyDescr", "library"); - subst("cusparseSpGEMM_workEstimation", "hipsparseSpGEMM_workEstimation", "library"); - subst("cusparseSpGEMMreuse_compute", "hipsparseSpGEMMreuse_compute", "library"); - subst("cusparseSpGEMMreuse_copy", "hipsparseSpGEMMreuse_copy", "library"); - subst("cusparseSpGEMMreuse_nnz", "hipsparseSpGEMMreuse_nnz", "library"); - subst("cusparseSpGEMMreuse_workEstimation", "hipsparseSpGEMMreuse_workEstimation", "library"); - subst("cusparseSpMM", "hipsparseSpMM", "library"); - subst("cusparseSpMM_bufferSize", "hipsparseSpMM_bufferSize", "library"); - subst("cusparseSpMM_preprocess", "hipsparseSpMM_preprocess", "library"); - subst("cusparseSpMV", "hipsparseSpMV", "library"); - subst("cusparseSpMV_bufferSize", "hipsparseSpMV_bufferSize", "library"); - subst("cusparseSpMV_preprocess", "hipsparseSpMV_preprocess", "library"); - subst("cusparseSpMatGetAttribute", "hipsparseSpMatGetAttribute", "library"); - subst("cusparseSpMatGetFormat", "hipsparseSpMatGetFormat", "library"); - subst("cusparseSpMatGetIndexBase", "hipsparseSpMatGetIndexBase", "library"); - subst("cusparseSpMatGetSize", "hipsparseSpMatGetSize", "library"); - subst("cusparseSpMatGetStridedBatch", "hipsparseSpMatGetStridedBatch", "library"); - subst("cusparseSpMatGetValues", "hipsparseSpMatGetValues", "library"); - subst("cusparseSpMatSetAttribute", "hipsparseSpMatSetAttribute", "library"); - subst("cusparseSpMatSetStridedBatch", "hipsparseSpMatSetStridedBatch", "library"); - subst("cusparseSpMatSetValues", "hipsparseSpMatSetValues", "library"); - subst("cusparseSpSM_analysis", "hipsparseSpSM_analysis", "library"); - subst("cusparseSpSM_bufferSize", "hipsparseSpSM_bufferSize", "library"); - subst("cusparseSpSM_createDescr", "hipsparseSpSM_createDescr", "library"); - subst("cusparseSpSM_destroyDescr", "hipsparseSpSM_destroyDescr", "library"); - subst("cusparseSpSM_solve", "hipsparseSpSM_solve", "library"); - subst("cusparseSpSV_analysis", "hipsparseSpSV_analysis", "library"); - subst("cusparseSpSV_bufferSize", "hipsparseSpSV_bufferSize", "library"); - subst("cusparseSpSV_createDescr", "hipsparseSpSV_createDescr", "library"); - subst("cusparseSpSV_destroyDescr", "hipsparseSpSV_destroyDescr", "library"); - subst("cusparseSpSV_solve", "hipsparseSpSV_solve", "library"); - subst("cusparseSpVV", "hipsparseSpVV", "library"); - subst("cusparseSpVV_bufferSize", "hipsparseSpVV_bufferSize", "library"); - subst("cusparseSpVecGet", "hipsparseSpVecGet", "library"); - subst("cusparseSpVecGetIndexBase", "hipsparseSpVecGetIndexBase", "library"); - subst("cusparseSpVecGetValues", "hipsparseSpVecGetValues", "library"); - subst("cusparseSpVecSetValues", "hipsparseSpVecSetValues", "library"); - subst("cusparseSparseToDense", "hipsparseSparseToDense", "library"); - subst("cusparseSparseToDense_bufferSize", "hipsparseSparseToDense_bufferSize", "library"); - subst("cusparseSpruneCsr2csr", "hipsparseSpruneCsr2csr", "library"); - subst("cusparseSpruneCsr2csrByPercentage", "hipsparseSpruneCsr2csrByPercentage", "library"); - subst("cusparseSpruneCsr2csrByPercentage_bufferSizeExt", "hipsparseSpruneCsr2csrByPercentage_bufferSizeExt", "library"); - subst("cusparseSpruneCsr2csrNnz", "hipsparseSpruneCsr2csrNnz", "library"); - subst("cusparseSpruneCsr2csrNnzByPercentage", "hipsparseSpruneCsr2csrNnzByPercentage", "library"); - subst("cusparseSpruneCsr2csr_bufferSizeExt", "hipsparseSpruneCsr2csr_bufferSizeExt", "library"); - subst("cusparseSpruneDense2csr", "hipsparseSpruneDense2csr", "library"); - subst("cusparseSpruneDense2csrByPercentage", "hipsparseSpruneDense2csrByPercentage", "library"); - subst("cusparseSpruneDense2csrByPercentage_bufferSizeExt", "hipsparseSpruneDense2csrByPercentage_bufferSizeExt", "library"); - subst("cusparseSpruneDense2csrNnz", "hipsparseSpruneDense2csrNnz", "library"); - subst("cusparseSpruneDense2csrNnzByPercentage", "hipsparseSpruneDense2csrNnzByPercentage", "library"); - subst("cusparseSpruneDense2csr_bufferSizeExt", "hipsparseSpruneDense2csr_bufferSizeExt", "library"); - subst("cusparseSroti", "hipsparseSroti", "library"); - subst("cusparseSsctr", "hipsparseSsctr", "library"); - subst("cusparseXbsric02_zeroPivot", "hipsparseXbsric02_zeroPivot", "library"); - subst("cusparseXbsrilu02_zeroPivot", "hipsparseXbsrilu02_zeroPivot", "library"); - subst("cusparseXbsrsm2_zeroPivot", "hipsparseXbsrsm2_zeroPivot", "library"); - subst("cusparseXbsrsv2_zeroPivot", "hipsparseXbsrsv2_zeroPivot", "library"); - subst("cusparseXcoo2csr", "hipsparseXcoo2csr", "library"); - subst("cusparseXcoosortByColumn", "hipsparseXcoosortByColumn", "library"); - subst("cusparseXcoosortByRow", "hipsparseXcoosortByRow", "library"); - subst("cusparseXcoosort_bufferSizeExt", "hipsparseXcoosort_bufferSizeExt", "library"); - subst("cusparseXcscsort", "hipsparseXcscsort", "library"); - subst("cusparseXcscsort_bufferSizeExt", "hipsparseXcscsort_bufferSizeExt", "library"); - subst("cusparseXcsr2bsrNnz", "hipsparseXcsr2bsrNnz", "library"); - subst("cusparseXcsr2coo", "hipsparseXcsr2coo", "library"); - subst("cusparseXcsr2gebsrNnz", "hipsparseXcsr2gebsrNnz", "library"); - subst("cusparseXcsrgeam2Nnz", "hipsparseXcsrgeam2Nnz", "library"); - subst("cusparseXcsrgeamNnz", "hipsparseXcsrgeamNnz", "library"); - subst("cusparseXcsrgemm2Nnz", "hipsparseXcsrgemm2Nnz", "library"); - subst("cusparseXcsrgemmNnz", "hipsparseXcsrgemmNnz", "library"); - subst("cusparseXcsric02_zeroPivot", "hipsparseXcsric02_zeroPivot", "library"); - subst("cusparseXcsrilu02_zeroPivot", "hipsparseXcsrilu02_zeroPivot", "library"); - subst("cusparseXcsrsm2_zeroPivot", "hipsparseXcsrsm2_zeroPivot", "library"); - subst("cusparseXcsrsort", "hipsparseXcsrsort", "library"); - subst("cusparseXcsrsort_bufferSizeExt", "hipsparseXcsrsort_bufferSizeExt", "library"); - subst("cusparseXcsrsv2_zeroPivot", "hipsparseXcsrsv2_zeroPivot", "library"); - subst("cusparseXgebsr2gebsrNnz", "hipsparseXgebsr2gebsrNnz", "library"); - subst("cusparseZaxpyi", "hipsparseZaxpyi", "library"); - subst("cusparseZbsr2csr", "hipsparseZbsr2csr", "library"); - subst("cusparseZbsric02", "hipsparseZbsric02", "library"); - subst("cusparseZbsric02_analysis", "hipsparseZbsric02_analysis", "library"); - subst("cusparseZbsric02_bufferSize", "hipsparseZbsric02_bufferSize", "library"); - subst("cusparseZbsrilu02", "hipsparseZbsrilu02", "library"); - subst("cusparseZbsrilu02_analysis", "hipsparseZbsrilu02_analysis", "library"); - subst("cusparseZbsrilu02_bufferSize", "hipsparseZbsrilu02_bufferSize", "library"); - subst("cusparseZbsrilu02_numericBoost", "hipsparseZbsrilu02_numericBoost", "library"); - subst("cusparseZbsrmm", "hipsparseZbsrmm", "library"); - subst("cusparseZbsrmv", "hipsparseZbsrmv", "library"); - subst("cusparseZbsrsm2_analysis", "hipsparseZbsrsm2_analysis", "library"); - subst("cusparseZbsrsm2_bufferSize", "hipsparseZbsrsm2_bufferSize", "library"); - subst("cusparseZbsrsm2_solve", "hipsparseZbsrsm2_solve", "library"); - subst("cusparseZbsrsv2_analysis", "hipsparseZbsrsv2_analysis", "library"); - subst("cusparseZbsrsv2_bufferSize", "hipsparseZbsrsv2_bufferSize", "library"); - subst("cusparseZbsrsv2_bufferSizeExt", "hipsparseZbsrsv2_bufferSizeExt", "library"); - subst("cusparseZbsrsv2_solve", "hipsparseZbsrsv2_solve", "library"); - subst("cusparseZbsrxmv", "hipsparseZbsrxmv", "library"); - subst("cusparseZcsc2dense", "hipsparseZcsc2dense", "library"); - subst("cusparseZcsr2bsr", "hipsparseZcsr2bsr", "library"); - subst("cusparseZcsr2csc", "hipsparseZcsr2csc", "library"); - subst("cusparseZcsr2csr_compress", "hipsparseZcsr2csr_compress", "library"); - subst("cusparseZcsr2csru", "hipsparseZcsr2csru", "library"); - subst("cusparseZcsr2dense", "hipsparseZcsr2dense", "library"); - subst("cusparseZcsr2gebsr", "hipsparseZcsr2gebsr", "library"); - subst("cusparseZcsr2gebsr_bufferSize", "hipsparseZcsr2gebsr_bufferSize", "library"); - subst("cusparseZcsr2hyb", "hipsparseZcsr2hyb", "library"); - subst("cusparseZcsrcolor", "hipsparseZcsrcolor", "library"); - subst("cusparseZcsrgeam", "hipsparseZcsrgeam", "library"); - subst("cusparseZcsrgeam2", "hipsparseZcsrgeam2", "library"); - subst("cusparseZcsrgeam2_bufferSizeExt", "hipsparseZcsrgeam2_bufferSizeExt", "library"); - subst("cusparseZcsrgemm", "hipsparseZcsrgemm", "library"); - subst("cusparseZcsrgemm2", "hipsparseZcsrgemm2", "library"); - subst("cusparseZcsrgemm2_bufferSizeExt", "hipsparseZcsrgemm2_bufferSizeExt", "library"); - subst("cusparseZcsric02", "hipsparseZcsric02", "library"); - subst("cusparseZcsric02_analysis", "hipsparseZcsric02_analysis", "library"); - subst("cusparseZcsric02_bufferSize", "hipsparseZcsric02_bufferSize", "library"); - subst("cusparseZcsric02_bufferSizeExt", "hipsparseZcsric02_bufferSizeExt", "library"); - subst("cusparseZcsrilu02", "hipsparseZcsrilu02", "library"); - subst("cusparseZcsrilu02_analysis", "hipsparseZcsrilu02_analysis", "library"); - subst("cusparseZcsrilu02_bufferSize", "hipsparseZcsrilu02_bufferSize", "library"); - subst("cusparseZcsrilu02_bufferSizeExt", "hipsparseZcsrilu02_bufferSizeExt", "library"); - subst("cusparseZcsrilu02_numericBoost", "hipsparseZcsrilu02_numericBoost", "library"); - subst("cusparseZcsrmm", "hipsparseZcsrmm", "library"); - subst("cusparseZcsrmm2", "hipsparseZcsrmm2", "library"); - subst("cusparseZcsrmv", "hipsparseZcsrmv", "library"); - subst("cusparseZcsrsm2_analysis", "hipsparseZcsrsm2_analysis", "library"); - subst("cusparseZcsrsm2_bufferSizeExt", "hipsparseZcsrsm2_bufferSizeExt", "library"); - subst("cusparseZcsrsm2_solve", "hipsparseZcsrsm2_solve", "library"); - subst("cusparseZcsrsv2_analysis", "hipsparseZcsrsv2_analysis", "library"); - subst("cusparseZcsrsv2_bufferSize", "hipsparseZcsrsv2_bufferSize", "library"); - subst("cusparseZcsrsv2_bufferSizeExt", "hipsparseZcsrsv2_bufferSizeExt", "library"); - subst("cusparseZcsrsv2_solve", "hipsparseZcsrsv2_solve", "library"); - subst("cusparseZcsru2csr", "hipsparseZcsru2csr", "library"); - subst("cusparseZcsru2csr_bufferSizeExt", "hipsparseZcsru2csr_bufferSizeExt", "library"); - subst("cusparseZdense2csc", "hipsparseZdense2csc", "library"); - subst("cusparseZdense2csr", "hipsparseZdense2csr", "library"); - subst("cusparseZdotci", "hipsparseZdotci", "library"); - subst("cusparseZdoti", "hipsparseZdoti", "library"); - subst("cusparseZgebsr2csr", "hipsparseZgebsr2csr", "library"); - subst("cusparseZgebsr2gebsc", "hipsparseZgebsr2gebsc", "library"); - subst("cusparseZgebsr2gebsc_bufferSize", "hipsparseZgebsr2gebsc_bufferSize", "library"); - subst("cusparseZgebsr2gebsr", "hipsparseZgebsr2gebsr", "library"); - subst("cusparseZgebsr2gebsr_bufferSize", "hipsparseZgebsr2gebsr_bufferSize", "library"); - subst("cusparseZgemmi", "hipsparseZgemmi", "library"); - subst("cusparseZgemvi", "hipsparseZgemvi", "library"); - subst("cusparseZgemvi_bufferSize", "hipsparseZgemvi_bufferSize", "library"); - subst("cusparseZgpsvInterleavedBatch", "hipsparseZgpsvInterleavedBatch", "library"); - subst("cusparseZgpsvInterleavedBatch_bufferSizeExt", "hipsparseZgpsvInterleavedBatch_bufferSizeExt", "library"); - subst("cusparseZgthr", "hipsparseZgthr", "library"); - subst("cusparseZgthrz", "hipsparseZgthrz", "library"); - subst("cusparseZgtsv2", "hipsparseZgtsv2", "library"); - subst("cusparseZgtsv2StridedBatch", "hipsparseZgtsv2StridedBatch", "library"); - subst("cusparseZgtsv2StridedBatch_bufferSizeExt", "hipsparseZgtsv2StridedBatch_bufferSizeExt", "library"); - subst("cusparseZgtsv2_bufferSizeExt", "hipsparseZgtsv2_bufferSizeExt", "library"); - subst("cusparseZgtsv2_nopivot", "hipsparseZgtsv2_nopivot", "library"); - subst("cusparseZgtsv2_nopivot_bufferSizeExt", "hipsparseZgtsv2_nopivot_bufferSizeExt", "library"); - subst("cusparseZgtsvInterleavedBatch", "hipsparseZgtsvInterleavedBatch", "library"); - subst("cusparseZgtsvInterleavedBatch_bufferSizeExt", "hipsparseZgtsvInterleavedBatch_bufferSizeExt", "library"); - subst("cusparseZhyb2csr", "hipsparseZhyb2csr", "library"); - subst("cusparseZhybmv", "hipsparseZhybmv", "library"); - subst("cusparseZnnz", "hipsparseZnnz", "library"); - subst("cusparseZnnz_compress", "hipsparseZnnz_compress", "library"); - subst("cusparseZsctr", "hipsparseZsctr", "library"); - subst("nvrtcAddNameExpression", "hiprtcAddNameExpression", "library"); - subst("nvrtcCompileProgram", "hiprtcCompileProgram", "library"); - subst("nvrtcCreateProgram", "hiprtcCreateProgram", "library"); - subst("nvrtcDestroyProgram", "hiprtcDestroyProgram", "library"); - subst("nvrtcGetCUBIN", "hiprtcGetBitcode", "library"); - subst("nvrtcGetCUBINSize", "hiprtcGetBitcodeSize", "library"); - subst("nvrtcGetErrorString", "hiprtcGetErrorString", "library"); - subst("nvrtcGetLoweredName", "hiprtcGetLoweredName", "library"); - subst("nvrtcGetPTX", "hiprtcGetCode", "library"); - subst("nvrtcGetPTXSize", "hiprtcGetCodeSize", "library"); - subst("nvrtcGetProgramLog", "hiprtcGetProgramLog", "library"); - subst("nvrtcGetProgramLogSize", "hiprtcGetProgramLogSize", "library"); - subst("nvrtcVersion", "hiprtcVersion", "library"); - subst("curand", "hiprand", "device_library"); - subst("curand_discrete", "hiprand_discrete", "device_library"); - subst("curand_discrete4", "hiprand_discrete4", "device_library"); - subst("curand_init", "hiprand_init", "device_library"); - subst("curand_log_normal", "hiprand_log_normal", "device_library"); - subst("curand_log_normal2", "hiprand_log_normal2", "device_library"); - subst("curand_log_normal2_double", "hiprand_log_normal2_double", "device_library"); - subst("curand_log_normal4", "hiprand_log_normal4", "device_library"); - subst("curand_log_normal4_double", "hiprand_log_normal4_double", "device_library"); - subst("curand_log_normal_double", "hiprand_log_normal_double", "device_library"); - subst("curand_normal", "hiprand_normal", "device_library"); - subst("curand_normal2", "hiprand_normal2", "device_library"); - subst("curand_normal2_double", "hiprand_normal2_double", "device_library"); - subst("curand_normal4", "hiprand_normal4", "device_library"); - subst("curand_normal4_double", "hiprand_normal4_double", "device_library"); - subst("curand_normal_double", "hiprand_normal_double", "device_library"); - subst("curand_poisson", "hiprand_poisson", "device_library"); - subst("curand_poisson4", "hiprand_poisson4", "device_library"); - subst("curand_uniform", "hiprand_uniform", "device_library"); - subst("curand_uniform2_double", "hiprand_uniform2_double", "device_library"); - subst("curand_uniform4", "hiprand_uniform4", "device_library"); - subst("curand_uniform4_double", "hiprand_uniform4_double", "device_library"); - subst("curand_uniform_double", "hiprand_uniform_double", "device_library"); - subst("__half", "__half", "device_type"); - subst("__half2", "__half2", "device_type"); - subst("__half2_raw", "__half2_raw", "device_type"); - subst("__half_raw", "__half_raw", "device_type"); - subst("__nv_bfloat16", "hip_bfloat16", "device_type"); - subst("caffe2\/core\/common_cudnn.h", "caffe2\/core\/hip\/common_miopen.h", "include"); - subst("caffe2\/operators\/spatial_batch_norm_op.h", "caffe2\/operators\/hip\/spatial_batch_norm_op_miopen.hip", "include"); - subst("channel_descriptor.h", "hip\/channel_descriptor.h", "include"); - subst("cooperative_groups.h", "hip\/hip_cooperative_groups.h", "include"); - subst("cublasLt.h", "hipblaslt.h", "include"); - subst("cublas_api.h", "hipblas.h", "include"); - subst("cuda_fp16.h", "hip\/hip_fp16.h", "include"); - subst("cuda_profiler_api.h", "hip\/hip_runtime_api.h", "include"); - subst("cuda_runtime_api.h", "hip\/hip_runtime_api.h", "include"); - subst("cuda_texture_types.h", "hip\/hip_texture_types.h", "include"); - subst("cufftXt.h", "hipfft\/hipfftXt.h", "include"); - subst("curand_discrete.h", "hiprand\/hiprand_kernel.h", "include"); - subst("curand_discrete2.h", "hiprand\/hiprand_kernel.h", "include"); - subst("curand_globals.h", "hiprand\/hiprand_kernel.h", "include"); - subst("curand_kernel.h", "hiprand\/hiprand_kernel.h", "include"); - subst("curand_lognormal.h", "hiprand\/hiprand_kernel.h", "include"); - subst("curand_mrg32k3a.h", "hiprand\/hiprand_kernel.h", "include"); - subst("curand_mtgp32.h", "hiprand\/hiprand_kernel.h", "include"); - subst("curand_mtgp32_host.h", "hiprand\/hiprand_mtgp32_host.h", "include"); - subst("curand_mtgp32_kernel.h", "hiprand\/hiprand_kernel.h", "include"); - subst("curand_mtgp32dc_p_11213.h", "rocrand\/rocrand_mtgp32_11213.h", "include"); - subst("curand_normal.h", "hiprand\/hiprand_kernel.h", "include"); - subst("curand_normal_static.h", "hiprand\/hiprand_kernel.h", "include"); - subst("curand_philox4x32_x.h", "hiprand\/hiprand_kernel.h", "include"); - subst("curand_poisson.h", "hiprand\/hiprand_kernel.h", "include"); - subst("curand_precalc.h", "hiprand\/hiprand_kernel.h", "include"); - subst("curand_uniform.h", "hiprand\/hiprand_kernel.h", "include"); - subst("device_functions.h", "hip\/device_functions.h", "include"); - subst("device_launch_parameters.h", "", "include"); - subst("driver_types.h", "hip\/driver_types.h", "include"); - subst("library_types.h", "hip\/library_types.h", "include"); - subst("math_constants.h", "hip\/hip_math_constants.h", "include"); - subst("texture_fetch_functions.h", "", "include"); - subst("vector_types.h", "hip\/hip_vector_types.h", "include"); - subst("cuComplex.h", "hip\/hip_complex.h", "include_cuda_main_header"); - subst("cub\/cub.cuh", "hipcub\/hipcub.hpp", "include_cuda_main_header"); - subst("cublas.h", "hipblas.h", "include_cuda_main_header"); - subst("cuda.h", "hip\/hip_runtime.h", "include_cuda_main_header"); - subst("cuda_runtime.h", "hip\/hip_runtime.h", "include_cuda_main_header"); - subst("cudnn.h", "hipDNN.h", "include_cuda_main_header"); - subst("cufft.h", "hipfft\/hipfft.h", "include_cuda_main_header"); - subst("curand.h", "hiprand\/hiprand.h", "include_cuda_main_header"); - subst("cusolverDn.h", "hipsolver.h", "include_cuda_main_header"); - subst("cusolverMg.h", "hipsolver.h", "include_cuda_main_header"); - subst("cusolverRf.h", "hipsolver.h", "include_cuda_main_header"); - subst("cusolverSp.h", "hipsolver.h", "include_cuda_main_header"); - subst("cusolverSp_LOWLEVEL_PREVIEW.h", "hipsolver.h", "include_cuda_main_header"); - subst("cusolver_common.h", "hipsolver.h", "include_cuda_main_header"); - subst("cusparse.h", "hipsparse.h", "include_cuda_main_header"); - subst("nvrtc.h", "hiprtc.h", "include_cuda_main_header"); - subst("cublas_v2.h", "hipblas.h", "include_cuda_main_header_v2"); - subst("cusparse_v2.h", "hipsparse.h", "include_cuda_main_header_v2"); - subst("CUDAContext", "HIPContext", "type"); - subst("CUDA_ARRAY3D_DESCRIPTOR", "HIP_ARRAY3D_DESCRIPTOR", "type"); - subst("CUDA_ARRAY3D_DESCRIPTOR_st", "HIP_ARRAY3D_DESCRIPTOR", "type"); - subst("CUDA_ARRAY3D_DESCRIPTOR_v2", "HIP_ARRAY3D_DESCRIPTOR", "type"); - subst("CUDA_ARRAY_DESCRIPTOR", "HIP_ARRAY_DESCRIPTOR", "type"); - subst("CUDA_ARRAY_DESCRIPTOR_st", "HIP_ARRAY_DESCRIPTOR", "type"); - subst("CUDA_ARRAY_DESCRIPTOR_v1", "HIP_ARRAY_DESCRIPTOR", "type"); - subst("CUDA_ARRAY_DESCRIPTOR_v1_st", "HIP_ARRAY_DESCRIPTOR", "type"); - subst("CUDA_ARRAY_DESCRIPTOR_v2", "HIP_ARRAY_DESCRIPTOR", "type"); - subst("CUDA_CHILD_GRAPH_NODE_PARAMS", "hipChildGraphNodeParams", "type"); - subst("CUDA_CHILD_GRAPH_NODE_PARAMS_st", "hipChildGraphNodeParams", "type"); - subst("CUDA_EVENT_RECORD_NODE_PARAMS", "hipEventRecordNodeParams", "type"); - subst("CUDA_EVENT_RECORD_NODE_PARAMS_st", "hipEventRecordNodeParams", "type"); - subst("CUDA_EVENT_WAIT_NODE_PARAMS", "hipEventWaitNodeParams", "type"); - subst("CUDA_EVENT_WAIT_NODE_PARAMS_st", "hipEventWaitNodeParams", "type"); - subst("CUDA_EXTERNAL_MEMORY_BUFFER_DESC", "hipExternalMemoryBufferDesc", "type"); - subst("CUDA_EXTERNAL_MEMORY_BUFFER_DESC_st", "hipExternalMemoryBufferDesc_st", "type"); - subst("CUDA_EXTERNAL_MEMORY_BUFFER_DESC_v1", "hipExternalMemoryBufferDesc", "type"); - subst("CUDA_EXTERNAL_MEMORY_HANDLE_DESC", "hipExternalMemoryHandleDesc", "type"); - subst("CUDA_EXTERNAL_MEMORY_HANDLE_DESC_st", "hipExternalMemoryHandleDesc_st", "type"); - subst("CUDA_EXTERNAL_MEMORY_HANDLE_DESC_v1", "hipExternalMemoryHandleDesc", "type"); - subst("CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC", "hipExternalSemaphoreHandleDesc", "type"); - subst("CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_st", "hipExternalSemaphoreHandleDesc_st", "type"); - subst("CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC_v1", "hipExternalSemaphoreHandleDesc", "type"); - subst("CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS", "hipExternalSemaphoreSignalParams", "type"); - subst("CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_st", "hipExternalSemaphoreSignalParams_st", "type"); - subst("CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS_v1", "hipExternalSemaphoreSignalParams", "type"); - subst("CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS", "hipExternalSemaphoreWaitParams", "type"); - subst("CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_st", "hipExternalSemaphoreWaitParams_st", "type"); - subst("CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS_v1", "hipExternalSemaphoreWaitParams", "type"); - subst("CUDA_EXT_SEM_SIGNAL_NODE_PARAMS", "hipExternalSemaphoreSignalNodeParams", "type"); - subst("CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_st", "hipExternalSemaphoreSignalNodeParams", "type"); - subst("CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v1", "hipExternalSemaphoreSignalNodeParams", "type"); - subst("CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v2", "hipExternalSemaphoreSignalNodeParams", "type"); - subst("CUDA_EXT_SEM_SIGNAL_NODE_PARAMS_v2_st", "hipExternalSemaphoreSignalNodeParams", "type"); - subst("CUDA_EXT_SEM_WAIT_NODE_PARAMS", "hipExternalSemaphoreWaitNodeParams", "type"); - subst("CUDA_EXT_SEM_WAIT_NODE_PARAMS_st", "hipExternalSemaphoreWaitNodeParams", "type"); - subst("CUDA_EXT_SEM_WAIT_NODE_PARAMS_v1", "hipExternalSemaphoreWaitNodeParams", "type"); - subst("CUDA_EXT_SEM_WAIT_NODE_PARAMS_v2", "hipExternalSemaphoreWaitNodeParams", "type"); - subst("CUDA_EXT_SEM_WAIT_NODE_PARAMS_v2_st", "hipExternalSemaphoreWaitNodeParams", "type"); - subst("CUDA_GRAPH_INSTANTIATE_PARAMS", "hipGraphInstantiateParams", "type"); - subst("CUDA_GRAPH_INSTANTIATE_PARAMS_st", "hipGraphInstantiateParams", "type"); - subst("CUDA_HOST_NODE_PARAMS", "hipHostNodeParams", "type"); - subst("CUDA_HOST_NODE_PARAMS_st", "hipHostNodeParams", "type"); - subst("CUDA_HOST_NODE_PARAMS_v1", "hipHostNodeParams", "type"); - subst("CUDA_KERNEL_NODE_PARAMS", "hipKernelNodeParams", "type"); - subst("CUDA_KERNEL_NODE_PARAMS_st", "hipKernelNodeParams", "type"); - subst("CUDA_KERNEL_NODE_PARAMS_v1", "hipKernelNodeParams", "type"); - subst("CUDA_LAUNCH_PARAMS", "hipFunctionLaunchParams", "type"); - subst("CUDA_LAUNCH_PARAMS_st", "hipFunctionLaunchParams_t", "type"); - subst("CUDA_LAUNCH_PARAMS_v1", "hipFunctionLaunchParams", "type"); - subst("CUDA_MEMCPY2D", "hip_Memcpy2D", "type"); - subst("CUDA_MEMCPY2D_st", "hip_Memcpy2D", "type"); - subst("CUDA_MEMCPY2D_v1", "hip_Memcpy2D", "type"); - subst("CUDA_MEMCPY2D_v1_st", "hip_Memcpy2D", "type"); - subst("CUDA_MEMCPY2D_v2", "hip_Memcpy2D", "type"); - subst("CUDA_MEMCPY3D", "HIP_MEMCPY3D", "type"); - subst("CUDA_MEMCPY3D_st", "HIP_MEMCPY3D", "type"); - subst("CUDA_MEMCPY3D_v1", "HIP_MEMCPY3D", "type"); - subst("CUDA_MEMCPY3D_v1_st", "HIP_MEMCPY3D", "type"); - subst("CUDA_MEMCPY3D_v2", "HIP_MEMCPY3D", "type"); - subst("CUDA_MEMCPY_NODE_PARAMS", "hipMemcpyNodeParams", "type"); - subst("CUDA_MEMCPY_NODE_PARAMS_st", "hipMemcpyNodeParams", "type"); - subst("CUDA_MEMSET_NODE_PARAMS", "HIP_MEMSET_NODE_PARAMS", "type"); - subst("CUDA_MEMSET_NODE_PARAMS_st", "HIP_MEMSET_NODE_PARAMS", "type"); - subst("CUDA_MEMSET_NODE_PARAMS_v1", "HIP_MEMSET_NODE_PARAMS", "type"); - subst("CUDA_MEM_ALLOC_NODE_PARAMS", "hipMemAllocNodeParams", "type"); - subst("CUDA_MEM_ALLOC_NODE_PARAMS_st", "hipMemAllocNodeParams", "type"); - subst("CUDA_MEM_ALLOC_NODE_PARAMS_v1", "hipMemAllocNodeParams", "type"); - subst("CUDA_MEM_ALLOC_NODE_PARAMS_v1_st", "hipMemAllocNodeParams", "type"); - subst("CUDA_MEM_FREE_NODE_PARAMS", "hipMemFreeNodeParams", "type"); - subst("CUDA_MEM_FREE_NODE_PARAMS_st", "hipMemFreeNodeParams", "type"); - subst("CUDA_RESOURCE_DESC", "HIP_RESOURCE_DESC", "type"); - subst("CUDA_RESOURCE_DESC_st", "HIP_RESOURCE_DESC_st", "type"); - subst("CUDA_RESOURCE_DESC_v1", "HIP_RESOURCE_DESC", "type"); - subst("CUDA_RESOURCE_VIEW_DESC", "HIP_RESOURCE_VIEW_DESC", "type"); - subst("CUDA_RESOURCE_VIEW_DESC_st", "HIP_RESOURCE_VIEW_DESC_st", "type"); - subst("CUDA_RESOURCE_VIEW_DESC_v1", "HIP_RESOURCE_VIEW_DESC", "type"); - subst("CUDA_TEXTURE_DESC", "HIP_TEXTURE_DESC", "type"); - subst("CUDA_TEXTURE_DESC_st", "HIP_TEXTURE_DESC_st", "type"); - subst("CUDA_TEXTURE_DESC_v1", "HIP_TEXTURE_DESC", "type"); - subst("CUGLDeviceList", "hipGLDeviceList", "type"); - subst("CUGLDeviceList_enum", "hipGLDeviceList", "type"); - subst("CUGPUDirectRDMAWritesOrdering", "hipGPUDirectRDMAWritesOrdering", "type"); - subst("CUGPUDirectRDMAWritesOrdering_enum", "hipGPUDirectRDMAWritesOrdering", "type"); - subst("CUaccessPolicyWindow", "hipAccessPolicyWindow", "type"); - subst("CUaccessPolicyWindow_st", "hipAccessPolicyWindow", "type"); - subst("CUaccessProperty", "hipAccessProperty", "type"); - subst("CUaccessProperty_enum", "hipAccessProperty", "type"); - subst("CUaddress_mode", "HIPaddress_mode", "type"); - subst("CUaddress_mode_enum", "HIPaddress_mode_enum", "type"); - subst("CUarray", "hipArray_t", "type"); - subst("CUarrayMapInfo", "hipArrayMapInfo", "type"); - subst("CUarrayMapInfo_st", "hipArrayMapInfo", "type"); - subst("CUarrayMapInfo_v1", "hipArrayMapInfo", "type"); - subst("CUarraySparseSubresourceType", "hipArraySparseSubresourceType", "type"); - subst("CUarraySparseSubresourceType_enum", "hipArraySparseSubresourceType", "type"); - subst("CUarray_format", "hipArray_Format", "type"); - subst("CUarray_format_enum", "hipArray_Format", "type"); - subst("CUarray_st", "hipArray", "type"); - subst("CUcomputemode", "hipComputeMode", "type"); - subst("CUcomputemode_enum", "hipComputeMode", "type"); - subst("CUcontext", "hipCtx_t", "type"); - subst("CUctx_st", "ihipCtx_t", "type"); - subst("CUdevice", "hipDevice_t", "type"); - subst("CUdevice_P2PAttribute", "hipDeviceP2PAttr", "type"); - subst("CUdevice_P2PAttribute_enum", "hipDeviceP2PAttr", "type"); - subst("CUdevice_attribute", "hipDeviceAttribute_t", "type"); - subst("CUdevice_attribute_enum", "hipDeviceAttribute_t", "type"); - subst("CUdevice_v1", "hipDevice_t", "type"); - subst("CUdeviceptr", "hipDeviceptr_t", "type"); - subst("CUdeviceptr_v1", "hipDeviceptr_t", "type"); - subst("CUdeviceptr_v2", "hipDeviceptr_t", "type"); - subst("CUdriverProcAddressQueryResult", "hipDriverProcAddressQueryResult", "type"); - subst("CUdriverProcAddressQueryResult_enum", "hipDriverProcAddressQueryResult", "type"); - subst("CUevent", "hipEvent_t", "type"); - subst("CUevent_st", "ihipEvent_t", "type"); - subst("CUexternalMemory", "hipExternalMemory_t", "type"); - subst("CUexternalMemoryHandleType", "hipExternalMemoryHandleType", "type"); - subst("CUexternalMemoryHandleType_enum", "hipExternalMemoryHandleType_enum", "type"); - subst("CUexternalSemaphore", "hipExternalSemaphore_t", "type"); - subst("CUexternalSemaphoreHandleType", "hipExternalSemaphoreHandleType", "type"); - subst("CUexternalSemaphoreHandleType_enum", "hipExternalSemaphoreHandleType_enum", "type"); - subst("CUfilter_mode", "HIPfilter_mode", "type"); - subst("CUfilter_mode_enum", "HIPfilter_mode_enum", "type"); - subst("CUflushGPUDirectRDMAWritesOptions", "hipFlushGPUDirectRDMAWritesOptions", "type"); - subst("CUflushGPUDirectRDMAWritesOptions_enum", "hipFlushGPUDirectRDMAWritesOptions", "type"); - subst("CUfunc_cache", "hipFuncCache_t", "type"); - subst("CUfunc_cache_enum", "hipFuncCache_t", "type"); - subst("CUfunc_st", "ihipModuleSymbol_t", "type"); - subst("CUfunction", "hipFunction_t", "type"); - subst("CUfunction_attribute", "hipFunction_attribute", "type"); - subst("CUfunction_attribute_enum", "hipFunction_attribute", "type"); - subst("CUgraph", "hipGraph_t", "type"); - subst("CUgraphDebugDot_flags", "hipGraphDebugDotFlags", "type"); - subst("CUgraphDebugDot_flags_enum", "hipGraphDebugDotFlags", "type"); - subst("CUgraphDependencyType", "hipGraphDependencyType", "type"); - subst("CUgraphDependencyType_enum", "hipGraphDependencyType", "type"); - subst("CUgraphEdgeData", "hipGraphEdgeData", "type"); - subst("CUgraphEdgeData_st", "hipGraphEdgeData", "type"); - subst("CUgraphExec", "hipGraphExec_t", "type"); - subst("CUgraphExecUpdateResult", "hipGraphExecUpdateResult", "type"); - subst("CUgraphExecUpdateResult_enum", "hipGraphExecUpdateResult", "type"); - subst("CUgraphExec_st", "hipGraphExec", "type"); - subst("CUgraphInstantiateResult", "hipGraphInstantiateResult", "type"); - subst("CUgraphInstantiateResult_enum", "hipGraphInstantiateResult", "type"); - subst("CUgraphInstantiate_flags", "hipGraphInstantiateFlags", "type"); - subst("CUgraphInstantiate_flags_enum", "hipGraphInstantiateFlags", "type"); - subst("CUgraphMem_attribute", "hipGraphMemAttributeType", "type"); - subst("CUgraphMem_attribute_enum", "hipGraphMemAttributeType", "type"); - subst("CUgraphNode", "hipGraphNode_t", "type"); - subst("CUgraphNodeParams", "hipGraphNodeParams", "type"); - subst("CUgraphNodeParams_st", "hipGraphNodeParams", "type"); - subst("CUgraphNodeType", "hipGraphNodeType", "type"); - subst("CUgraphNodeType_enum", "hipGraphNodeType", "type"); - subst("CUgraphNode_st", "hipGraphNode", "type"); - subst("CUgraph_st", "ihipGraph", "type"); - subst("CUgraphicsRegisterFlags", "hipGraphicsRegisterFlags", "type"); - subst("CUgraphicsRegisterFlags_enum", "hipGraphicsRegisterFlags", "type"); - subst("CUgraphicsResource", "hipGraphicsResource_t", "type"); - subst("CUgraphicsResource_st", "hipGraphicsResource", "type"); - subst("CUhostFn", "hipHostFn_t", "type"); - subst("CUipcEventHandle", "hipIpcEventHandle_t", "type"); - subst("CUipcEventHandle_st", "hipIpcEventHandle_st", "type"); - subst("CUipcEventHandle_v1", "hipIpcEventHandle_t", "type"); - subst("CUipcMemHandle", "hipIpcMemHandle_t", "type"); - subst("CUipcMemHandle_st", "hipIpcMemHandle_st", "type"); - subst("CUipcMemHandle_v1", "hipIpcMemHandle_t", "type"); - subst("CUjitInputType", "hiprtcJITInputType", "type"); - subst("CUjitInputType_enum", "hiprtcJITInputType", "type"); - subst("CUjit_option", "hipJitOption", "type"); - subst("CUjit_option_enum", "hipJitOption", "type"); - subst("CUkernelNodeAttrID", "hipKernelNodeAttrID", "type"); - subst("CUkernelNodeAttrID_enum", "hipKernelNodeAttrID", "type"); - subst("CUkernelNodeAttrValue", "hipKernelNodeAttrValue", "type"); - subst("CUkernelNodeAttrValue_union", "hipKernelNodeAttrValue", "type"); - subst("CUkernelNodeAttrValue_v1", "hipKernelNodeAttrValue", "type"); - subst("CUlaunchAttributeID", "hipLaunchAttributeID", "type"); - subst("CUlaunchAttributeID_enum", "hipLaunchAttributeID", "type"); - subst("CUlaunchAttributeValue", "hipLaunchAttributeValue", "type"); - subst("CUlaunchAttributeValue_union", "hipLaunchAttributeValue", "type"); - subst("CUlimit", "hipLimit_t", "type"); - subst("CUlimit_enum", "hipLimit_t", "type"); - subst("CUlinkState", "hiprtcLinkState", "type"); - subst("CUlinkState_st", "ihiprtcLinkState", "type"); - subst("CUmemAccessDesc", "hipMemAccessDesc", "type"); - subst("CUmemAccessDesc_st", "hipMemAccessDesc", "type"); - subst("CUmemAccessDesc_v1", "hipMemAccessDesc", "type"); - subst("CUmemAccess_flags", "hipMemAccessFlags", "type"); - subst("CUmemAccess_flags_enum", "hipMemAccessFlags", "type"); - subst("CUmemAllocationGranularity_flags", "hipMemAllocationGranularity_flags", "type"); - subst("CUmemAllocationGranularity_flags_enum", "hipMemAllocationGranularity_flags", "type"); - subst("CUmemAllocationHandleType", "hipMemAllocationHandleType", "type"); - subst("CUmemAllocationHandleType_enum", "hipMemAllocationHandleType", "type"); - subst("CUmemAllocationProp", "hipMemAllocationProp", "type"); - subst("CUmemAllocationProp_st", "hipMemAllocationProp", "type"); - subst("CUmemAllocationProp_v1", "hipMemAllocationProp", "type"); - subst("CUmemAllocationType", "hipMemAllocationType", "type"); - subst("CUmemAllocationType_enum", "hipMemAllocationType", "type"); - subst("CUmemGenericAllocationHandle", "hipMemGenericAllocationHandle_t", "type"); - subst("CUmemGenericAllocationHandle_v1", "hipMemGenericAllocationHandle_t", "type"); - subst("CUmemHandleType", "hipMemHandleType", "type"); - subst("CUmemHandleType_enum", "hipMemHandleType", "type"); - subst("CUmemLocation", "hipMemLocation", "type"); - subst("CUmemLocationType", "hipMemLocationType", "type"); - subst("CUmemLocationType_enum", "hipMemLocationType", "type"); - subst("CUmemLocation_st", "hipMemLocation", "type"); - subst("CUmemLocation_v1", "hipMemLocation", "type"); - subst("CUmemOperationType", "hipMemOperationType", "type"); - subst("CUmemOperationType_enum", "hipMemOperationType", "type"); - subst("CUmemPoolHandle_st", "ihipMemPoolHandle_t", "type"); - subst("CUmemPoolProps", "hipMemPoolProps", "type"); - subst("CUmemPoolProps_st", "hipMemPoolProps", "type"); - subst("CUmemPoolProps_v1", "hipMemPoolProps", "type"); - subst("CUmemPoolPtrExportData", "hipMemPoolPtrExportData", "type"); - subst("CUmemPoolPtrExportData_st", "hipMemPoolPtrExportData", "type"); - subst("CUmemPoolPtrExportData_v1", "hipMemPoolPtrExportData", "type"); - subst("CUmemPool_attribute", "hipMemPoolAttr", "type"); - subst("CUmemPool_attribute_enum", "hipMemPoolAttr", "type"); - subst("CUmem_advise", "hipMemoryAdvise", "type"); - subst("CUmem_advise_enum", "hipMemoryAdvise", "type"); - subst("CUmem_range_attribute", "hipMemRangeAttribute", "type"); - subst("CUmem_range_attribute_enum", "hipMemRangeAttribute", "type"); - subst("CUmemoryPool", "hipMemPool_t", "type"); - subst("CUmemorytype", "hipMemoryType", "type"); - subst("CUmemorytype_enum", "hipMemoryType", "type"); - subst("CUmipmappedArray", "hipMipmappedArray_t", "type"); - subst("CUmipmappedArray_st", "hipMipmappedArray", "type"); - subst("CUmod_st", "ihipModule_t", "type"); - subst("CUmodule", "hipModule_t", "type"); - subst("CUoccupancyB2DSize", "void*", "type"); - subst("CUpointer_attribute", "hipPointer_attribute", "type"); - subst("CUpointer_attribute_enum", "hipPointer_attribute", "type"); - subst("CUresourceViewFormat", "HIPresourceViewFormat", "type"); - subst("CUresourceViewFormat_enum", "HIPresourceViewFormat_enum", "type"); - subst("CUresourcetype", "HIPresourcetype", "type"); - subst("CUresourcetype_enum", "HIPresourcetype_enum", "type"); - subst("CUresult", "hipError_t", "type"); - subst("CUsharedconfig", "hipSharedMemConfig", "type"); - subst("CUsharedconfig_enum", "hipSharedMemConfig", "type"); - subst("CUstream", "hipStream_t", "type"); - subst("CUstreamCallback", "hipStreamCallback_t", "type"); - subst("CUstreamCaptureMode", "hipStreamCaptureMode", "type"); - subst("CUstreamCaptureMode_enum", "hipStreamCaptureMode", "type"); - subst("CUstreamCaptureStatus", "hipStreamCaptureStatus", "type"); - subst("CUstreamCaptureStatus_enum", "hipStreamCaptureStatus", "type"); - subst("CUstreamUpdateCaptureDependencies_flags", "hipStreamUpdateCaptureDependenciesFlags", "type"); - subst("CUstreamUpdateCaptureDependencies_flags_enum", "hipStreamUpdateCaptureDependenciesFlags", "type"); - subst("CUstream_st", "ihipStream_t", "type"); - subst("CUsurfObject", "hipSurfaceObject_t", "type"); - subst("CUsurfObject_v1", "hipSurfaceObject_t", "type"); - subst("CUtexObject", "hipTextureObject_t", "type"); - subst("CUtexObject_v1", "hipTextureObject_t", "type"); - subst("CUtexref", "hipTexRef", "type"); - subst("CUtexref_st", "textureReference", "type"); - subst("CUuserObject", "hipUserObject_t", "type"); - subst("CUuserObjectRetain_flags", "hipUserObjectRetainFlags", "type"); - subst("CUuserObjectRetain_flags_enum", "hipUserObjectRetainFlags", "type"); - subst("CUuserObject_flags", "hipUserObjectFlags", "type"); - subst("CUuserObject_flags_enum", "hipUserObjectFlags", "type"); - subst("CUuserObject_st", "hipUserObject", "type"); - subst("CUuuid", "hipUUID", "type"); - subst("CUuuid_st", "hipUUID_t", "type"); - subst("GLenum", "GLenum", "type"); - subst("GLuint", "GLuint", "type"); - subst("bsric02Info", "bsric02Info", "type"); - subst("bsric02Info_t", "bsric02Info_t", "type"); - subst("bsrilu02Info", "bsrilu02Info", "type"); - subst("bsrilu02Info_t", "bsrilu02Info_t", "type"); - subst("bsrsm2Info", "bsrsm2Info", "type"); - subst("bsrsm2Info_t", "bsrsm2Info_t", "type"); - subst("bsrsv2Info", "bsrsv2Info", "type"); - subst("bsrsv2Info_t", "bsrsv2Info_t", "type"); - subst("csrgemm2Info", "csrgemm2Info", "type"); - subst("csrgemm2Info_t", "csrgemm2Info_t", "type"); - subst("csric02Info", "csric02Info", "type"); - subst("csric02Info_t", "csric02Info_t", "type"); - subst("csrilu02Info", "csrilu02Info", "type"); - subst("csrilu02Info_t", "csrilu02Info_t", "type"); - subst("csrsm2Info_t", "csrsm2Info_t", "type"); - subst("csrsv2Info_t", "csrsv2Info_t", "type"); - subst("csru2csrInfo", "csru2csrInfo", "type"); - subst("csru2csrInfo_t", "csru2csrInfo_t", "type"); - subst("cuComplex", "hipComplex", "type"); - subst("cuDoubleComplex", "hipDoubleComplex", "type"); - subst("cuFloatComplex", "hipFloatComplex", "type"); - subst("cublasAtomicsMode_t", "hipblasAtomicsMode_t", "type"); - subst("cublasComputeType_t", "hipblasComputeType_t", "type"); - subst("cublasDataType_t", "hipDataType", "type"); - subst("cublasDiagType_t", "hipblasDiagType_t", "type"); - subst("cublasFillMode_t", "hipblasFillMode_t", "type"); - subst("cublasGemmAlgo_t", "hipblasGemmAlgo_t", "type"); - subst("cublasHandle_t", "hipblasHandle_t", "type"); - subst("cublasLtEpilogue_t", "hipblasLtEpilogue_t", "type"); - subst("cublasLtHandle_t", "hipblasLtHandle_t", "type"); - subst("cublasLtMatmulAlgo_t", "hipblasLtMatmulAlgo_t", "type"); - subst("cublasLtMatmulDescAttributes_t", "hipblasLtMatmulDescAttributes_t", "type"); - subst("cublasLtMatmulDescOpaque_t", "hipblasLtMatmulDescOpaque_t", "type"); - subst("cublasLtMatmulDesc_t", "hipblasLtMatmulDesc_t", "type"); - subst("cublasLtMatmulHeuristicResult_t", "hipblasLtMatmulHeuristicResult_t", "type"); - subst("cublasLtMatmulPreferenceAttributes_t", "hipblasLtMatmulPreferenceAttributes_t", "type"); - subst("cublasLtMatmulPreferenceOpaque_t", "hipblasLtMatmulPreferenceOpaque_t", "type"); - subst("cublasLtMatmulPreference_t", "hipblasLtMatmulPreference_t", "type"); - subst("cublasLtMatrixLayoutAttribute_t", "hipblasLtMatrixLayoutAttribute_t", "type"); - subst("cublasLtMatrixLayoutOpaque_t", "hipblasLtMatrixLayoutOpaque_t", "type"); - subst("cublasLtMatrixLayoutStruct", "hipblasLtMatrixLayoutOpaque_t", "type"); - subst("cublasLtMatrixLayout_t", "hipblasLtMatrixLayout_t", "type"); - subst("cublasLtMatrixTransformDescAttributes_t", "hipblasLtMatrixTransformDescAttributes_t", "type"); - subst("cublasLtMatrixTransformDescOpaque_t", "hipblasLtMatrixTransformDescOpaque_t", "type"); - subst("cublasLtMatrixTransformDesc_t", "hipblasLtMatrixTransformDesc_t", "type"); - subst("cublasLtPointerMode_t", "hipblasLtPointerMode_t", "type"); - subst("cublasMath_t", "hipblasMath_t", "type"); - subst("cublasOperation_t", "hipblasOperation_t", "type"); - subst("cublasPointerMode_t", "hipblasPointerMode_t", "type"); - subst("cublasSideMode_t", "hipblasSideMode_t", "type"); - subst("cublasStatus", "hipblasStatus_t", "type"); - subst("cublasStatus_t", "hipblasStatus_t", "type"); - subst("cudaAccessPolicyWindow", "hipAccessPolicyWindow", "type"); - subst("cudaAccessProperty", "hipAccessProperty", "type"); - subst("cudaArray", "hipArray", "type"); - subst("cudaArray_const_t", "hipArray_const_t", "type"); - subst("cudaArray_t", "hipArray_t", "type"); - subst("cudaChannelFormatDesc", "hipChannelFormatDesc", "type"); - subst("cudaChannelFormatKind", "hipChannelFormatKind", "type"); - subst("cudaChildGraphNodeParams", "hipChildGraphNodeParams", "type"); - subst("cudaComputeMode", "hipComputeMode", "type"); - subst("cudaDataType", "hipDataType", "type"); - subst("cudaDataType_t", "hipDataType", "type"); - subst("cudaDeviceAttr", "hipDeviceAttribute_t", "type"); - subst("cudaDeviceP2PAttr", "hipDeviceP2PAttr", "type"); - subst("cudaDeviceProp", "hipDeviceProp_t", "type"); - subst("cudaDriverEntryPointQueryResult", "hipDriverProcAddressQueryResult", "type"); - subst("cudaError", "hipError_t", "type"); - subst("cudaError_enum", "hipError_t", "type"); - subst("cudaError_t", "hipError_t", "type"); - subst("cudaEventRecordNodeParams", "hipEventRecordNodeParams", "type"); - subst("cudaEventWaitNodeParams", "hipEventWaitNodeParams", "type"); - subst("cudaEvent_t", "hipEvent_t", "type"); - subst("cudaExtent", "hipExtent", "type"); - subst("cudaExternalMemoryBufferDesc", "hipExternalMemoryBufferDesc", "type"); - subst("cudaExternalMemoryHandleDesc", "hipExternalMemoryHandleDesc", "type"); - subst("cudaExternalMemoryHandleType", "hipExternalMemoryHandleType", "type"); - subst("cudaExternalMemory_t", "hipExternalMemory_t", "type"); - subst("cudaExternalSemaphoreHandleDesc", "hipExternalSemaphoreHandleDesc", "type"); - subst("cudaExternalSemaphoreHandleType", "hipExternalSemaphoreHandleType", "type"); - subst("cudaExternalSemaphoreSignalNodeParams", "hipExternalSemaphoreSignalNodeParams", "type"); - subst("cudaExternalSemaphoreSignalNodeParamsV2", "hipExternalSemaphoreSignalNodeParams", "type"); - subst("cudaExternalSemaphoreSignalParams", "hipExternalSemaphoreSignalParams", "type"); - subst("cudaExternalSemaphoreSignalParams_v1", "hipExternalSemaphoreSignalParams", "type"); - subst("cudaExternalSemaphoreWaitNodeParams", "hipExternalSemaphoreWaitNodeParams", "type"); - subst("cudaExternalSemaphoreWaitNodeParamsV2", "hipExternalSemaphoreWaitNodeParams", "type"); - subst("cudaExternalSemaphoreWaitParams", "hipExternalSemaphoreWaitParams", "type"); - subst("cudaExternalSemaphoreWaitParams_v1", "hipExternalSemaphoreWaitParams", "type"); - subst("cudaExternalSemaphore_t", "hipExternalSemaphore_t", "type"); - subst("cudaFlushGPUDirectRDMAWritesOptions", "hipFlushGPUDirectRDMAWritesOptions", "type"); - subst("cudaFuncAttribute", "hipFuncAttribute", "type"); - subst("cudaFuncAttributes", "hipFuncAttributes", "type"); - subst("cudaFuncCache", "hipFuncCache_t", "type"); - subst("cudaFunction_t", "hipFunction_t", "type"); - subst("cudaGLDeviceList", "hipGLDeviceList", "type"); - subst("cudaGPUDirectRDMAWritesOrdering", "hipGPUDirectRDMAWritesOrdering", "type"); - subst("cudaGraphDebugDotFlags", "hipGraphDebugDotFlags", "type"); - subst("cudaGraphDependencyType", "hipGraphDependencyType", "type"); - subst("cudaGraphDependencyType_enum", "hipGraphDependencyType", "type"); - subst("cudaGraphEdgeData", "hipGraphEdgeData", "type"); - subst("cudaGraphEdgeData_st", "hipGraphEdgeData", "type"); - subst("cudaGraphExecUpdateResult", "hipGraphExecUpdateResult", "type"); - subst("cudaGraphExec_t", "hipGraphExec_t", "type"); - subst("cudaGraphInstantiateFlags", "hipGraphInstantiateFlags", "type"); - subst("cudaGraphInstantiateParams", "hipGraphInstantiateParams", "type"); - subst("cudaGraphInstantiateParams_st", "hipGraphInstantiateParams", "type"); - subst("cudaGraphInstantiateResult", "hipGraphInstantiateResult", "type"); - subst("cudaGraphMemAttributeType", "hipGraphMemAttributeType", "type"); - subst("cudaGraphNodeParams", "hipGraphNodeParams", "type"); - subst("cudaGraphNodeType", "hipGraphNodeType", "type"); - subst("cudaGraphNode_t", "hipGraphNode_t", "type"); - subst("cudaGraph_t", "hipGraph_t", "type"); - subst("cudaGraphicsRegisterFlags", "hipGraphicsRegisterFlags", "type"); - subst("cudaGraphicsResource", "hipGraphicsResource", "type"); - subst("cudaGraphicsResource_t", "hipGraphicsResource_t", "type"); - subst("cudaHostFn_t", "hipHostFn_t", "type"); - subst("cudaHostNodeParams", "hipHostNodeParams", "type"); - subst("cudaIpcEventHandle_st", "hipIpcEventHandle_st", "type"); - subst("cudaIpcEventHandle_t", "hipIpcEventHandle_t", "type"); - subst("cudaIpcMemHandle_st", "hipIpcMemHandle_st", "type"); - subst("cudaIpcMemHandle_t", "hipIpcMemHandle_t", "type"); - subst("cudaKernelNodeAttrID", "hipKernelNodeAttrID", "type"); - subst("cudaKernelNodeAttrValue", "hipKernelNodeAttrValue", "type"); - subst("cudaKernelNodeParams", "hipKernelNodeParams", "type"); - subst("cudaLaunchAttributeID", "hipLaunchAttributeID", "type"); - subst("cudaLaunchAttributeValue", "hipLaunchAttributeValue", "type"); - subst("cudaLaunchParams", "hipLaunchParams", "type"); - subst("cudaLimit", "hipLimit_t", "type"); - subst("cudaMemAccessDesc", "hipMemAccessDesc", "type"); - subst("cudaMemAccessFlags", "hipMemAccessFlags", "type"); - subst("cudaMemAllocNodeParams", "hipMemAllocNodeParams", "type"); - subst("cudaMemAllocationHandleType", "hipMemAllocationHandleType", "type"); - subst("cudaMemAllocationType", "hipMemAllocationType", "type"); - subst("cudaMemFreeNodeParams", "hipMemFreeNodeParams", "type"); - subst("cudaMemLocation", "hipMemLocation", "type"); - subst("cudaMemLocationType", "hipMemLocationType", "type"); - subst("cudaMemPoolAttr", "hipMemPoolAttr", "type"); - subst("cudaMemPoolProps", "hipMemPoolProps", "type"); - subst("cudaMemPoolPtrExportData", "hipMemPoolPtrExportData", "type"); - subst("cudaMemPool_t", "hipMemPool_t", "type"); - subst("cudaMemRangeAttribute", "hipMemRangeAttribute", "type"); - subst("cudaMemcpy3DParms", "hipMemcpy3DParms", "type"); - subst("cudaMemcpyKind", "hipMemcpyKind", "type"); - subst("cudaMemcpyNodeParams", "hipMemcpyNodeParams", "type"); - subst("cudaMemoryAdvise", "hipMemoryAdvise", "type"); - subst("cudaMemoryType", "hipMemoryType", "type"); - subst("cudaMemsetParams", "hipMemsetParams", "type"); - subst("cudaMipmappedArray", "hipMipmappedArray", "type"); - subst("cudaMipmappedArray_const_t", "hipMipmappedArray_const_t", "type"); - subst("cudaMipmappedArray_t", "hipMipmappedArray_t", "type"); - subst("cudaPitchedPtr", "hipPitchedPtr", "type"); - subst("cudaPointerAttributes", "hipPointerAttribute_t", "type"); - subst("cudaPos", "hipPos", "type"); - subst("cudaResourceDesc", "hipResourceDesc", "type"); - subst("cudaResourceType", "hipResourceType", "type"); - subst("cudaResourceViewDesc", "hipResourceViewDesc", "type"); - subst("cudaResourceViewFormat", "hipResourceViewFormat", "type"); - subst("cudaSharedMemConfig", "hipSharedMemConfig", "type"); - subst("cudaStreamCallback_t", "hipStreamCallback_t", "type"); - subst("cudaStreamCaptureMode", "hipStreamCaptureMode", "type"); - subst("cudaStreamCaptureStatus", "hipStreamCaptureStatus", "type"); - subst("cudaStreamUpdateCaptureDependenciesFlags", "hipStreamUpdateCaptureDependenciesFlags", "type"); - subst("cudaStream_t", "hipStream_t", "type"); - subst("cudaSurfaceBoundaryMode", "hipSurfaceBoundaryMode", "type"); - subst("cudaSurfaceObject_t", "hipSurfaceObject_t", "type"); - subst("cudaTextureAddressMode", "hipTextureAddressMode", "type"); - subst("cudaTextureDesc", "hipTextureDesc", "type"); - subst("cudaTextureFilterMode", "hipTextureFilterMode", "type"); - subst("cudaTextureObject_t", "hipTextureObject_t", "type"); - subst("cudaTextureReadMode", "hipTextureReadMode", "type"); - subst("cudaUUID_t", "hipUUID", "type"); - subst("cudaUserObjectFlags", "hipUserObjectFlags", "type"); - subst("cudaUserObjectRetainFlags", "hipUserObjectRetainFlags", "type"); - subst("cudaUserObject_t", "hipUserObject_t", "type"); - subst("cudnnActivationDescriptor_t", "hipdnnActivationDescriptor_t", "type"); - subst("cudnnActivationMode_t", "hipdnnActivationMode_t", "type"); - subst("cudnnBatchNormMode_t", "hipdnnBatchNormMode_t", "type"); - subst("cudnnConvolutionBwdDataAlgoPerfStruct", "hipdnnConvolutionBwdDataAlgoPerf_t", "type"); - subst("cudnnConvolutionBwdDataAlgoPerf_t", "hipdnnConvolutionBwdDataAlgoPerf_t", "type"); - subst("cudnnConvolutionBwdDataAlgo_t", "hipdnnConvolutionBwdDataAlgo_t", "type"); - subst("cudnnConvolutionBwdDataPreference_t", "hipdnnConvolutionBwdDataPreference_t", "type"); - subst("cudnnConvolutionBwdFilterAlgoPerfStruct", "hipdnnConvolutionBwdFilterAlgoPerf_t", "type"); - subst("cudnnConvolutionBwdFilterAlgoPerf_t", "hipdnnConvolutionBwdFilterAlgoPerf_t", "type"); - subst("cudnnConvolutionBwdFilterAlgo_t", "hipdnnConvolutionBwdFilterAlgo_t", "type"); - subst("cudnnConvolutionBwdFilterPreference_t", "hipdnnConvolutionBwdFilterPreference_t", "type"); - subst("cudnnConvolutionDescriptor_t", "hipdnnConvolutionDescriptor_t", "type"); - subst("cudnnConvolutionFwdAlgoPerfStruct", "hipdnnConvolutionFwdAlgoPerf_t", "type"); - subst("cudnnConvolutionFwdAlgoPerf_t", "hipdnnConvolutionFwdAlgoPerf_t", "type"); - subst("cudnnConvolutionFwdAlgo_t", "hipdnnConvolutionFwdAlgo_t", "type"); - subst("cudnnConvolutionFwdPreference_t", "hipdnnConvolutionFwdPreference_t", "type"); - subst("cudnnConvolutionMode_t", "hipdnnConvolutionMode_t", "type"); - subst("cudnnDataType_t", "hipdnnDataType_t", "type"); - subst("cudnnDirectionMode_t", "hipdnnDirectionMode_t", "type"); - subst("cudnnDropoutDescriptor_t", "hipdnnDropoutDescriptor_t", "type"); - subst("cudnnFilterDescriptor_t", "hipdnnFilterDescriptor_t", "type"); - subst("cudnnHandle_t", "hipdnnHandle_t", "type"); - subst("cudnnIndicesType_t", "hipdnnIndicesType_t", "type"); - subst("cudnnLRNDescriptor_t", "hipdnnLRNDescriptor_t", "type"); - subst("cudnnLRNMode_t", "hipdnnLRNMode_t", "type"); - subst("cudnnMathType_t", "hipdnnMathType_t", "type"); - subst("cudnnNanPropagation_t", "hipdnnNanPropagation_t", "type"); - subst("cudnnOpTensorDescriptor_t", "hipdnnOpTensorDescriptor_t", "type"); - subst("cudnnOpTensorOp_t", "hipdnnOpTensorOp_t", "type"); - subst("cudnnPersistentRNNPlan_t", "hipdnnPersistentRNNPlan_t", "type"); - subst("cudnnPoolingDescriptor_t", "hipdnnPoolingDescriptor_t", "type"); - subst("cudnnPoolingMode_t", "hipdnnPoolingMode_t", "type"); - subst("cudnnRNNAlgo_t", "hipdnnRNNAlgo_t", "type"); - subst("cudnnRNNBiasMode_t", "hipdnnRNNBiasMode_t", "type"); - subst("cudnnRNNDescriptor_t", "hipdnnRNNDescriptor_t", "type"); - subst("cudnnRNNInputMode_t", "hipdnnRNNInputMode_t", "type"); - subst("cudnnRNNMode_t", "hipdnnRNNMode_t", "type"); - subst("cudnnReduceTensorDescriptor_t", "hipdnnReduceTensorDescriptor_t", "type"); - subst("cudnnReduceTensorIndices_t", "hipdnnReduceTensorIndices_t", "type"); - subst("cudnnReduceTensorOp_t", "hipdnnReduceTensorOp_t", "type"); - subst("cudnnSoftmaxAlgorithm_t", "hipdnnSoftmaxAlgorithm_t", "type"); - subst("cudnnSoftmaxMode_t", "hipdnnSoftmaxMode_t", "type"); - subst("cudnnStatus_t", "hipdnnStatus_t", "type"); - subst("cudnnTensorDescriptor_t", "hipdnnTensorDescriptor_t", "type"); - subst("cudnnTensorFormat_t", "hipdnnTensorFormat_t", "type"); - subst("cufftComplex", "hipfftComplex", "type"); - subst("cufftDoubleComplex", "hipfftDoubleComplex", "type"); - subst("cufftDoubleReal", "hipfftDoubleReal", "type"); - subst("cufftHandle", "hipfftHandle", "type"); - subst("cufftReal", "hipfftReal", "type"); - subst("cufftResult", "hipfftResult", "type"); - subst("cufftResult_t", "hipfftResult_t", "type"); - subst("cufftType", "hipfftType", "type"); - subst("cufftType_t", "hipfftType_t", "type"); - subst("cufftXtCallbackType", "hipfftXtCallbackType", "type"); - subst("cufftXtCallbackType_t", "hipfftXtCallbackType_t", "type"); - subst("curandDirectionVectorSet", "hiprandDirectionVectorSet_t", "type"); - subst("curandDirectionVectorSet_t", "hiprandDirectionVectorSet_t", "type"); - subst("curandDirectionVectors32_t", "hiprandDirectionVectors32_t", "type"); - subst("curandDirectionVectors64_t", "hiprandDirectionVectors64_t", "type"); - subst("curandDiscreteDistribution_st", "hiprandDiscreteDistribution_st", "type"); - subst("curandDiscreteDistribution_t", "hiprandDiscreteDistribution_t", "type"); - subst("curandGenerator_st", "hiprandGenerator_st", "type"); - subst("curandGenerator_t", "hiprandGenerator_t", "type"); - subst("curandOrdering", "hiprandOrdering", "type"); - subst("curandOrdering_t", "hiprandOrdering_t", "type"); - subst("curandRngType", "hiprandRngType_t", "type"); - subst("curandRngType_t", "hiprandRngType_t", "type"); - subst("curandState", "hiprandState", "type"); - subst("curandStateMRG32k3a", "hiprandStateMRG32k3a", "type"); - subst("curandStateMRG32k3a_t", "hiprandStateMRG32k3a_t", "type"); - subst("curandStateMtgp32", "hiprandStateMtgp32", "type"); - subst("curandStateMtgp32_t", "hiprandStateMtgp32_t", "type"); - subst("curandStatePhilox4_32_10", "hiprandStatePhilox4_32_10", "type"); - subst("curandStatePhilox4_32_10_t", "hiprandStatePhilox4_32_10_t", "type"); - subst("curandStateScrambledSobol32", "hiprandStateScrambledSobol32", "type"); - subst("curandStateScrambledSobol32_t", "hiprandStateScrambledSobol32_t", "type"); - subst("curandStateScrambledSobol64", "hiprandStateScrambledSobol64", "type"); - subst("curandStateScrambledSobol64_t", "hiprandStateScrambledSobol64_t", "type"); - subst("curandStateSobol32", "hiprandStateSobol32", "type"); - subst("curandStateSobol32_t", "hiprandStateSobol32_t", "type"); - subst("curandStateSobol64", "hiprandStateSobol64", "type"); - subst("curandStateSobol64_t", "hiprandStateSobol64_t", "type"); - subst("curandStateXORWOW", "hiprandStateXORWOW", "type"); - subst("curandStateXORWOW_t", "hiprandStateXORWOW_t", "type"); - subst("curandState_t", "hiprandState_t", "type"); - subst("curandStatus", "hiprandStatus", "type"); - subst("curandStatus_t", "hiprandStatus_t", "type"); - subst("cusolverAlgMode_t", "hipsolverAlgMode_t", "type"); - subst("cusolverDeterministicMode_t", "hipsolverDeterministicMode_t", "type"); - subst("cusolverDnFunction_t", "hipsolverDnFunction_t", "type"); - subst("cusolverDnHandle_t", "hipsolverHandle_t", "type"); - subst("cusolverDnParams_t", "hipsolverDnParams_t", "type"); - subst("cusolverEigMode_t", "hipsolverEigMode_t", "type"); - subst("cusolverEigRange_t", "hipsolverEigRange_t", "type"); - subst("cusolverEigType_t", "hipsolverEigType_t", "type"); - subst("cusolverRfFactorization_t", "hipsolverRfFactorization_t", "type"); - subst("cusolverRfHandle_t", "hipsolverRfHandle_t", "type"); - subst("cusolverRfMatrixFormat_t", "hipsolverRfMatrixFormat_t", "type"); - subst("cusolverRfNumericBoostReport_t", "hipsolverRfNumericBoostReport_t", "type"); - subst("cusolverRfResetValuesFastMode_t", "hipsolverRfResetValuesFastMode_t", "type"); - subst("cusolverRfTriangularSolve_t", "hipsolverRfTriangularSolve_t", "type"); - subst("cusolverRfUnitDiagonal_t", "hipsolverRfUnitDiagonal_t", "type"); - subst("cusolverSpHandle_t", "hipsolverSpHandle_t", "type"); - subst("cusolverStatus_t", "hipsolverStatus_t", "type"); - subst("cusparseAction_t", "hipsparseAction_t", "type"); - subst("cusparseColorInfo_t", "hipsparseColorInfo_t", "type"); - subst("cusparseConstDnMatDescr_t", "hipsparseConstDnMatDescr_t", "type"); - subst("cusparseConstDnVecDescr_t", "hipsparseConstDnVecDescr_t", "type"); - subst("cusparseConstSpMatDescr_t", "hipsparseConstSpMatDescr_t", "type"); - subst("cusparseConstSpVecDescr_t", "hipsparseConstSpVecDescr_t", "type"); - subst("cusparseCsr2CscAlg_t", "hipsparseCsr2CscAlg_t", "type"); - subst("cusparseDenseToSparseAlg_t", "hipsparseDenseToSparseAlg_t", "type"); - subst("cusparseDiagType_t", "hipsparseDiagType_t", "type"); - subst("cusparseDirection_t", "hipsparseDirection_t", "type"); - subst("cusparseDnMatDescr_t", "hipsparseDnMatDescr_t", "type"); - subst("cusparseDnVecDescr_t", "hipsparseDnVecDescr_t", "type"); - subst("cusparseFillMode_t", "hipsparseFillMode_t", "type"); - subst("cusparseFormat_t", "hipsparseFormat_t", "type"); - subst("cusparseHandle_t", "hipsparseHandle_t", "type"); - subst("cusparseHybMat_t", "hipsparseHybMat_t", "type"); - subst("cusparseHybPartition_t", "hipsparseHybPartition_t", "type"); - subst("cusparseIndexBase_t", "hipsparseIndexBase_t", "type"); - subst("cusparseIndexType_t", "hipsparseIndexType_t", "type"); - subst("cusparseMatDescr_t", "hipsparseMatDescr_t", "type"); - subst("cusparseMatrixType_t", "hipsparseMatrixType_t", "type"); - subst("cusparseOperation_t", "hipsparseOperation_t", "type"); - subst("cusparseOrder_t", "hipsparseOrder_t", "type"); - subst("cusparsePointerMode_t", "hipsparsePointerMode_t", "type"); - subst("cusparseSDDMMAlg_t", "hipsparseSDDMMAlg_t", "type"); - subst("cusparseSolvePolicy_t", "hipsparseSolvePolicy_t", "type"); - subst("cusparseSpGEMMAlg_t", "hipsparseSpGEMMAlg_t", "type"); - subst("cusparseSpGEMMDescr", "hipsparseSpGEMMDescr", "type"); - subst("cusparseSpGEMMDescr_t", "hipsparseSpGEMMDescr_t", "type"); - subst("cusparseSpMMAlg_t", "hipsparseSpMMAlg_t", "type"); - subst("cusparseSpMVAlg_t", "hipsparseSpMVAlg_t", "type"); - subst("cusparseSpMatAttribute_t", "hipsparseSpMatAttribute_t", "type"); - subst("cusparseSpMatDescr_t", "hipsparseSpMatDescr_t", "type"); - subst("cusparseSpSMAlg_t", "hipsparseSpSMAlg_t", "type"); - subst("cusparseSpSMDescr", "hipsparseSpSMDescr", "type"); - subst("cusparseSpSMDescr_t", "hipsparseSpSMDescr_t", "type"); - subst("cusparseSpSVAlg_t", "hipsparseSpSVAlg_t", "type"); - subst("cusparseSpSVDescr", "hipsparseSpSVDescr", "type"); - subst("cusparseSpSVDescr_t", "hipsparseSpSVDescr_t", "type"); - subst("cusparseSpVecDescr_t", "hipsparseSpVecDescr_t", "type"); - subst("cusparseSparseToDenseAlg_t", "hipsparseSparseToDenseAlg_t", "type"); - subst("cusparseStatus_t", "hipsparseStatus_t", "type"); - subst("gesvdjInfo_t", "hipsolverGesvdjInfo_t", "type"); - subst("nvrtcProgram", "hiprtcProgram", "type"); - subst("nvrtcResult", "hiprtcResult", "type"); - subst("pruneInfo", "pruneInfo", "type"); - subst("pruneInfo_t", "pruneInfo_t", "type"); - subst("surfaceReference", "surfaceReference", "type"); - subst("syevjInfo_t", "hipsolverSyevjInfo_t", "type"); - subst("texture", "texture", "type"); - subst("textureReference", "textureReference", "type"); - subst("CUBLASLT_EPILOGUE_BGRADA", "HIPBLASLT_EPILOGUE_BGRADA", "numeric_literal"); - subst("CUBLASLT_EPILOGUE_BGRADB", "HIPBLASLT_EPILOGUE_BGRADB", "numeric_literal"); - subst("CUBLASLT_EPILOGUE_BIAS", "HIPBLASLT_EPILOGUE_BIAS", "numeric_literal"); - subst("CUBLASLT_EPILOGUE_DEFAULT", "HIPBLASLT_EPILOGUE_DEFAULT", "numeric_literal"); - subst("CUBLASLT_EPILOGUE_DGELU", "HIPBLASLT_EPILOGUE_DGELU", "numeric_literal"); - subst("CUBLASLT_EPILOGUE_DGELU_BGRAD", "HIPBLASLT_EPILOGUE_DGELU_BGRAD", "numeric_literal"); - subst("CUBLASLT_EPILOGUE_GELU", "HIPBLASLT_EPILOGUE_GELU", "numeric_literal"); - subst("CUBLASLT_EPILOGUE_GELU_AUX", "HIPBLASLT_EPILOGUE_GELU_AUX", "numeric_literal"); - subst("CUBLASLT_EPILOGUE_GELU_AUX_BIAS", "HIPBLASLT_EPILOGUE_GELU_AUX_BIAS", "numeric_literal"); - subst("CUBLASLT_EPILOGUE_GELU_BIAS", "HIPBLASLT_EPILOGUE_GELU_BIAS", "numeric_literal"); - subst("CUBLASLT_EPILOGUE_RELU", "HIPBLASLT_EPILOGUE_RELU", "numeric_literal"); - subst("CUBLASLT_EPILOGUE_RELU_BIAS", "HIPBLASLT_EPILOGUE_RELU_BIAS", "numeric_literal"); - subst("CUBLASLT_MATMUL_DESC_AMAX_D_POINTER", "HIPBLASLT_MATMUL_DESC_AMAX_D_POINTER", "numeric_literal"); - subst("CUBLASLT_MATMUL_DESC_A_SCALE_POINTER", "HIPBLASLT_MATMUL_DESC_A_SCALE_POINTER", "numeric_literal"); - subst("CUBLASLT_MATMUL_DESC_BIAS_DATA_TYPE", "HIPBLASLT_MATMUL_DESC_BIAS_DATA_TYPE", "numeric_literal"); - subst("CUBLASLT_MATMUL_DESC_BIAS_POINTER", "HIPBLASLT_MATMUL_DESC_BIAS_POINTER", "numeric_literal"); - subst("CUBLASLT_MATMUL_DESC_B_SCALE_POINTER", "HIPBLASLT_MATMUL_DESC_B_SCALE_POINTER", "numeric_literal"); - subst("CUBLASLT_MATMUL_DESC_C_SCALE_POINTER", "HIPBLASLT_MATMUL_DESC_C_SCALE_POINTER", "numeric_literal"); - subst("CUBLASLT_MATMUL_DESC_D_SCALE_POINTER", "HIPBLASLT_MATMUL_DESC_D_SCALE_POINTER", "numeric_literal"); - subst("CUBLASLT_MATMUL_DESC_EPILOGUE", "HIPBLASLT_MATMUL_DESC_EPILOGUE", "numeric_literal"); - subst("CUBLASLT_MATMUL_DESC_EPILOGUE_AUX_BATCH_STRIDE", "HIPBLASLT_MATMUL_DESC_EPILOGUE_AUX_BATCH_STRIDE", "numeric_literal"); - subst("CUBLASLT_MATMUL_DESC_EPILOGUE_AUX_LD", "HIPBLASLT_MATMUL_DESC_EPILOGUE_AUX_LD", "numeric_literal"); - subst("CUBLASLT_MATMUL_DESC_EPILOGUE_AUX_POINTER", "HIPBLASLT_MATMUL_DESC_EPILOGUE_AUX_POINTER", "numeric_literal"); - subst("CUBLASLT_MATMUL_DESC_EPILOGUE_AUX_SCALE_POINTER", "HIPBLASLT_MATMUL_DESC_EPILOGUE_AUX_SCALE_POINTER", "numeric_literal"); - subst("CUBLASLT_MATMUL_DESC_POINTER_MODE", "HIPBLASLT_MATMUL_DESC_POINTER_MODE", "numeric_literal"); - subst("CUBLASLT_MATMUL_DESC_TRANSA", "HIPBLASLT_MATMUL_DESC_TRANSA", "numeric_literal"); - subst("CUBLASLT_MATMUL_DESC_TRANSB", "HIPBLASLT_MATMUL_DESC_TRANSB", "numeric_literal"); - subst("CUBLASLT_MATMUL_PREF_MAX_WORKSPACE_BYTES", "HIPBLASLT_MATMUL_PREF_MAX_WORKSPACE_BYTES", "numeric_literal"); - subst("CUBLASLT_MATMUL_PREF_SEARCH_MODE", "HIPBLASLT_MATMUL_PREF_SEARCH_MODE", "numeric_literal"); - subst("CUBLASLT_MATRIX_LAYOUT_BATCH_COUNT", "HIPBLASLT_MATRIX_LAYOUT_BATCH_COUNT", "numeric_literal"); - subst("CUBLASLT_MATRIX_LAYOUT_COLS", "HIPBLASLT_MATRIX_LAYOUT_COLS", "numeric_literal"); - subst("CUBLASLT_MATRIX_LAYOUT_LD", "HIPBLASLT_MATRIX_LAYOUT_LD", "numeric_literal"); - subst("CUBLASLT_MATRIX_LAYOUT_ORDER", "HIPBLASLT_MATRIX_LAYOUT_ORDER", "numeric_literal"); - subst("CUBLASLT_MATRIX_LAYOUT_ROWS", "HIPBLASLT_MATRIX_LAYOUT_ROWS", "numeric_literal"); - subst("CUBLASLT_MATRIX_LAYOUT_STRIDED_BATCH_OFFSET", "HIPBLASLT_MATRIX_LAYOUT_STRIDED_BATCH_OFFSET", "numeric_literal"); - subst("CUBLASLT_MATRIX_LAYOUT_TYPE", "HIPBLASLT_MATRIX_LAYOUT_TYPE", "numeric_literal"); - subst("CUBLASLT_MATRIX_TRANSFORM_DESC_POINTER_MODE", "HIPBLASLT_MATRIX_TRANSFORM_DESC_POINTER_MODE", "numeric_literal"); - subst("CUBLASLT_MATRIX_TRANSFORM_DESC_SCALE_TYPE", "HIPBLASLT_MATRIX_TRANSFORM_DESC_SCALE_TYPE", "numeric_literal"); - subst("CUBLASLT_MATRIX_TRANSFORM_DESC_TRANSA", "HIPBLASLT_MATRIX_TRANSFORM_DESC_TRANSA", "numeric_literal"); - subst("CUBLASLT_MATRIX_TRANSFORM_DESC_TRANSB", "HIPBLASLT_MATRIX_TRANSFORM_DESC_TRANSB", "numeric_literal"); - subst("CUBLASLT_ORDER_COL", "HIPBLASLT_ORDER_COL", "numeric_literal"); - subst("CUBLASLT_ORDER_ROW", "HIPBLASLT_ORDER_ROW", "numeric_literal"); - subst("CUBLASLT_POINTER_MODE_ALPHA_DEVICE_VECTOR_BETA_HOST", "HIPBLASLT_POINTER_MODE_ALPHA_DEVICE_VECTOR_BETA_HOST", "numeric_literal"); - subst("CUBLASLT_POINTER_MODE_DEVICE", "HIPBLASLT_POINTER_MODE_DEVICE", "numeric_literal"); - subst("CUBLASLT_POINTER_MODE_HOST", "HIPBLASLT_POINTER_MODE_HOST", "numeric_literal"); - subst("CUBLAS_ATOMICS_ALLOWED", "HIPBLAS_ATOMICS_ALLOWED", "numeric_literal"); - subst("CUBLAS_ATOMICS_NOT_ALLOWED", "HIPBLAS_ATOMICS_NOT_ALLOWED", "numeric_literal"); - subst("CUBLAS_COMPUTE_16F", "HIPBLAS_COMPUTE_16F", "numeric_literal"); - subst("CUBLAS_COMPUTE_16F_PEDANTIC", "HIPBLAS_COMPUTE_16F_PEDANTIC", "numeric_literal"); - subst("CUBLAS_COMPUTE_32F", "HIPBLAS_COMPUTE_32F", "numeric_literal"); - subst("CUBLAS_COMPUTE_32F_FAST_16BF", "HIPBLAS_COMPUTE_32F_FAST_16BF", "numeric_literal"); - subst("CUBLAS_COMPUTE_32F_FAST_16F", "HIPBLAS_COMPUTE_32F_FAST_16F", "numeric_literal"); - subst("CUBLAS_COMPUTE_32F_FAST_TF32", "HIPBLAS_COMPUTE_32F_FAST_TF32", "numeric_literal"); - subst("CUBLAS_COMPUTE_32F_PEDANTIC", "HIPBLAS_COMPUTE_32F_PEDANTIC", "numeric_literal"); - subst("CUBLAS_COMPUTE_32I", "HIPBLAS_COMPUTE_32I", "numeric_literal"); - subst("CUBLAS_COMPUTE_32I_PEDANTIC", "HIPBLAS_COMPUTE_32I_PEDANTIC", "numeric_literal"); - subst("CUBLAS_COMPUTE_64F", "HIPBLAS_COMPUTE_64F", "numeric_literal"); - subst("CUBLAS_COMPUTE_64F_PEDANTIC", "HIPBLAS_COMPUTE_64F_PEDANTIC", "numeric_literal"); - subst("CUBLAS_DEFAULT_MATH", "HIPBLAS_DEFAULT_MATH", "numeric_literal"); - subst("CUBLAS_DIAG_NON_UNIT", "HIPBLAS_DIAG_NON_UNIT", "numeric_literal"); - subst("CUBLAS_DIAG_UNIT", "HIPBLAS_DIAG_UNIT", "numeric_literal"); - subst("CUBLAS_FILL_MODE_FULL", "HIPBLAS_FILL_MODE_FULL", "numeric_literal"); - subst("CUBLAS_FILL_MODE_LOWER", "HIPBLAS_FILL_MODE_LOWER", "numeric_literal"); - subst("CUBLAS_FILL_MODE_UPPER", "HIPBLAS_FILL_MODE_UPPER", "numeric_literal"); - subst("CUBLAS_GEMM_DEFAULT", "HIPBLAS_GEMM_DEFAULT", "numeric_literal"); - subst("CUBLAS_GEMM_DFALT", "HIPBLAS_GEMM_DEFAULT", "numeric_literal"); - subst("CUBLAS_MATH_DISALLOW_REDUCED_PRECISION_REDUCTION", "HIPBLAS_MATH_DISALLOW_REDUCED_PRECISION_REDUCTION", "numeric_literal"); - subst("CUBLAS_OP_C", "HIPBLAS_OP_C", "numeric_literal"); - subst("CUBLAS_OP_HERMITAN", "HIPBLAS_OP_C", "numeric_literal"); - subst("CUBLAS_OP_N", "HIPBLAS_OP_N", "numeric_literal"); - subst("CUBLAS_OP_T", "HIPBLAS_OP_T", "numeric_literal"); - subst("CUBLAS_PEDANTIC_MATH", "HIPBLAS_PEDANTIC_MATH", "numeric_literal"); - subst("CUBLAS_POINTER_MODE_DEVICE", "HIPBLAS_POINTER_MODE_DEVICE", "numeric_literal"); - subst("CUBLAS_POINTER_MODE_HOST", "HIPBLAS_POINTER_MODE_HOST", "numeric_literal"); - subst("CUBLAS_SIDE_LEFT", "HIPBLAS_SIDE_LEFT", "numeric_literal"); - subst("CUBLAS_SIDE_RIGHT", "HIPBLAS_SIDE_RIGHT", "numeric_literal"); - subst("CUBLAS_STATUS_ALLOC_FAILED", "HIPBLAS_STATUS_ALLOC_FAILED", "numeric_literal"); - subst("CUBLAS_STATUS_ARCH_MISMATCH", "HIPBLAS_STATUS_ARCH_MISMATCH", "numeric_literal"); - subst("CUBLAS_STATUS_EXECUTION_FAILED", "HIPBLAS_STATUS_EXECUTION_FAILED", "numeric_literal"); - subst("CUBLAS_STATUS_INTERNAL_ERROR", "HIPBLAS_STATUS_INTERNAL_ERROR", "numeric_literal"); - subst("CUBLAS_STATUS_INVALID_VALUE", "HIPBLAS_STATUS_INVALID_VALUE", "numeric_literal"); - subst("CUBLAS_STATUS_LICENSE_ERROR", "HIPBLAS_STATUS_UNKNOWN", "numeric_literal"); - subst("CUBLAS_STATUS_MAPPING_ERROR", "HIPBLAS_STATUS_MAPPING_ERROR", "numeric_literal"); - subst("CUBLAS_STATUS_NOT_INITIALIZED", "HIPBLAS_STATUS_NOT_INITIALIZED", "numeric_literal"); - subst("CUBLAS_STATUS_NOT_SUPPORTED", "HIPBLAS_STATUS_NOT_SUPPORTED", "numeric_literal"); - subst("CUBLAS_STATUS_SUCCESS", "HIPBLAS_STATUS_SUCCESS", "numeric_literal"); - subst("CUBLAS_TENSOR_OP_MATH", "HIPBLAS_TENSOR_OP_MATH", "numeric_literal"); - subst("CUBLAS_TF32_TENSOR_OP_MATH", "HIPBLAS_TF32_TENSOR_OP_MATH", "numeric_literal"); - subst("CUDA_C_16BF", "HIP_C_16BF", "numeric_literal"); - subst("CUDA_C_16F", "HIP_C_16F", "numeric_literal"); - subst("CUDA_C_32F", "HIP_C_32F", "numeric_literal"); - subst("CUDA_C_32I", "HIP_C_32I", "numeric_literal"); - subst("CUDA_C_32U", "HIP_C_32U", "numeric_literal"); - subst("CUDA_C_64F", "HIP_C_64F", "numeric_literal"); - subst("CUDA_C_8I", "HIP_C_8I", "numeric_literal"); - subst("CUDA_C_8U", "HIP_C_8U", "numeric_literal"); - subst("CUDA_ERROR_ALREADY_ACQUIRED", "hipErrorAlreadyAcquired", "numeric_literal"); - subst("CUDA_ERROR_ALREADY_MAPPED", "hipErrorAlreadyMapped", "numeric_literal"); - subst("CUDA_ERROR_ARRAY_IS_MAPPED", "hipErrorArrayIsMapped", "numeric_literal"); - subst("CUDA_ERROR_ASSERT", "hipErrorAssert", "numeric_literal"); - subst("CUDA_ERROR_CAPTURED_EVENT", "hipErrorCapturedEvent", "numeric_literal"); - subst("CUDA_ERROR_CONTEXT_ALREADY_CURRENT", "hipErrorContextAlreadyCurrent", "numeric_literal"); - subst("CUDA_ERROR_CONTEXT_ALREADY_IN_USE", "hipErrorContextAlreadyInUse", "numeric_literal"); - subst("CUDA_ERROR_CONTEXT_IS_DESTROYED", "hipErrorContextIsDestroyed", "numeric_literal"); - subst("CUDA_ERROR_COOPERATIVE_LAUNCH_TOO_LARGE", "hipErrorCooperativeLaunchTooLarge", "numeric_literal"); - subst("CUDA_ERROR_DEINITIALIZED", "hipErrorDeinitialized", "numeric_literal"); - subst("CUDA_ERROR_ECC_UNCORRECTABLE", "hipErrorECCNotCorrectable", "numeric_literal"); - subst("CUDA_ERROR_FILE_NOT_FOUND", "hipErrorFileNotFound", "numeric_literal"); - subst("CUDA_ERROR_GRAPH_EXEC_UPDATE_FAILURE", "hipErrorGraphExecUpdateFailure", "numeric_literal"); - subst("CUDA_ERROR_HOST_MEMORY_ALREADY_REGISTERED", "hipErrorHostMemoryAlreadyRegistered", "numeric_literal"); - subst("CUDA_ERROR_HOST_MEMORY_NOT_REGISTERED", "hipErrorHostMemoryNotRegistered", "numeric_literal"); - subst("CUDA_ERROR_ILLEGAL_ADDRESS", "hipErrorIllegalAddress", "numeric_literal"); - subst("CUDA_ERROR_ILLEGAL_STATE", "hipErrorIllegalState", "numeric_literal"); - subst("CUDA_ERROR_INVALID_CONTEXT", "hipErrorInvalidContext", "numeric_literal"); - subst("CUDA_ERROR_INVALID_DEVICE", "hipErrorInvalidDevice", "numeric_literal"); - subst("CUDA_ERROR_INVALID_GRAPHICS_CONTEXT", "hipErrorInvalidGraphicsContext", "numeric_literal"); - subst("CUDA_ERROR_INVALID_HANDLE", "hipErrorInvalidHandle", "numeric_literal"); - subst("CUDA_ERROR_INVALID_IMAGE", "hipErrorInvalidImage", "numeric_literal"); - subst("CUDA_ERROR_INVALID_PTX", "hipErrorInvalidKernelFile", "numeric_literal"); - subst("CUDA_ERROR_INVALID_SOURCE", "hipErrorInvalidSource", "numeric_literal"); - subst("CUDA_ERROR_INVALID_VALUE", "hipErrorInvalidValue", "numeric_literal"); - subst("CUDA_ERROR_LAUNCH_FAILED", "hipErrorLaunchFailure", "numeric_literal"); - subst("CUDA_ERROR_LAUNCH_OUT_OF_RESOURCES", "hipErrorLaunchOutOfResources", "numeric_literal"); - subst("CUDA_ERROR_LAUNCH_TIMEOUT", "hipErrorLaunchTimeOut", "numeric_literal"); - subst("CUDA_ERROR_MAP_FAILED", "hipErrorMapFailed", "numeric_literal"); - subst("CUDA_ERROR_NOT_FOUND", "hipErrorNotFound", "numeric_literal"); - subst("CUDA_ERROR_NOT_INITIALIZED", "hipErrorNotInitialized", "numeric_literal"); - subst("CUDA_ERROR_NOT_MAPPED", "hipErrorNotMapped", "numeric_literal"); - subst("CUDA_ERROR_NOT_MAPPED_AS_ARRAY", "hipErrorNotMappedAsArray", "numeric_literal"); - subst("CUDA_ERROR_NOT_MAPPED_AS_POINTER", "hipErrorNotMappedAsPointer", "numeric_literal"); - subst("CUDA_ERROR_NOT_READY", "hipErrorNotReady", "numeric_literal"); - subst("CUDA_ERROR_NOT_SUPPORTED", "hipErrorNotSupported", "numeric_literal"); - subst("CUDA_ERROR_NO_BINARY_FOR_GPU", "hipErrorNoBinaryForGpu", "numeric_literal"); - subst("CUDA_ERROR_NO_DEVICE", "hipErrorNoDevice", "numeric_literal"); - subst("CUDA_ERROR_OPERATING_SYSTEM", "hipErrorOperatingSystem", "numeric_literal"); - subst("CUDA_ERROR_OUT_OF_MEMORY", "hipErrorOutOfMemory", "numeric_literal"); - subst("CUDA_ERROR_PEER_ACCESS_ALREADY_ENABLED", "hipErrorPeerAccessAlreadyEnabled", "numeric_literal"); - subst("CUDA_ERROR_PEER_ACCESS_NOT_ENABLED", "hipErrorPeerAccessNotEnabled", "numeric_literal"); - subst("CUDA_ERROR_PEER_ACCESS_UNSUPPORTED", "hipErrorPeerAccessUnsupported", "numeric_literal"); - subst("CUDA_ERROR_PRIMARY_CONTEXT_ACTIVE", "hipErrorSetOnActiveProcess", "numeric_literal"); - subst("CUDA_ERROR_PROFILER_ALREADY_STARTED", "hipErrorProfilerAlreadyStarted", "numeric_literal"); - subst("CUDA_ERROR_PROFILER_ALREADY_STOPPED", "hipErrorProfilerAlreadyStopped", "numeric_literal"); - subst("CUDA_ERROR_PROFILER_DISABLED", "hipErrorProfilerDisabled", "numeric_literal"); - subst("CUDA_ERROR_PROFILER_NOT_INITIALIZED", "hipErrorProfilerNotInitialized", "numeric_literal"); - subst("CUDA_ERROR_SHARED_OBJECT_INIT_FAILED", "hipErrorSharedObjectInitFailed", "numeric_literal"); - subst("CUDA_ERROR_SHARED_OBJECT_SYMBOL_NOT_FOUND", "hipErrorSharedObjectSymbolNotFound", "numeric_literal"); - subst("CUDA_ERROR_STREAM_CAPTURE_IMPLICIT", "hipErrorStreamCaptureImplicit", "numeric_literal"); - subst("CUDA_ERROR_STREAM_CAPTURE_INVALIDATED", "hipErrorStreamCaptureInvalidated", "numeric_literal"); - subst("CUDA_ERROR_STREAM_CAPTURE_ISOLATION", "hipErrorStreamCaptureIsolation", "numeric_literal"); - subst("CUDA_ERROR_STREAM_CAPTURE_MERGE", "hipErrorStreamCaptureMerge", "numeric_literal"); - subst("CUDA_ERROR_STREAM_CAPTURE_UNJOINED", "hipErrorStreamCaptureUnjoined", "numeric_literal"); - subst("CUDA_ERROR_STREAM_CAPTURE_UNMATCHED", "hipErrorStreamCaptureUnmatched", "numeric_literal"); - subst("CUDA_ERROR_STREAM_CAPTURE_UNSUPPORTED", "hipErrorStreamCaptureUnsupported", "numeric_literal"); - subst("CUDA_ERROR_STREAM_CAPTURE_WRONG_THREAD", "hipErrorStreamCaptureWrongThread", "numeric_literal"); - subst("CUDA_ERROR_UNKNOWN", "hipErrorUnknown", "numeric_literal"); - subst("CUDA_ERROR_UNMAP_FAILED", "hipErrorUnmapFailed", "numeric_literal"); - subst("CUDA_ERROR_UNSUPPORTED_LIMIT", "hipErrorUnsupportedLimit", "numeric_literal"); - subst("CUDA_GRAPH_INSTANTIATE_ERROR", "hipGraphInstantiateError", "numeric_literal"); - subst("CUDA_GRAPH_INSTANTIATE_FLAG_AUTO_FREE_ON_LAUNCH", "hipGraphInstantiateFlagAutoFreeOnLaunch", "numeric_literal"); - subst("CUDA_GRAPH_INSTANTIATE_FLAG_DEVICE_LAUNCH", "hipGraphInstantiateFlagDeviceLaunch", "numeric_literal"); - subst("CUDA_GRAPH_INSTANTIATE_FLAG_UPLOAD", "hipGraphInstantiateFlagUpload", "numeric_literal"); - subst("CUDA_GRAPH_INSTANTIATE_FLAG_USE_NODE_PRIORITY", "hipGraphInstantiateFlagUseNodePriority", "numeric_literal"); - subst("CUDA_GRAPH_INSTANTIATE_INVALID_STRUCTURE", "hipGraphInstantiateInvalidStructure", "numeric_literal"); - subst("CUDA_GRAPH_INSTANTIATE_MULTIPLE_CTXS_NOT_SUPPORTED", "hipGraphInstantiateMultipleDevicesNotSupported", "numeric_literal"); - subst("CUDA_GRAPH_INSTANTIATE_NODE_OPERATION_NOT_SUPPORTED", "hipGraphInstantiateNodeOperationNotSupported", "numeric_literal"); - subst("CUDA_GRAPH_INSTANTIATE_SUCCESS", "hipGraphInstantiateSuccess", "numeric_literal"); - subst("CUDA_R_16BF", "HIP_R_16BF", "numeric_literal"); - subst("CUDA_R_16F", "HIP_R_16F", "numeric_literal"); - subst("CUDA_R_32F", "HIP_R_32F", "numeric_literal"); - subst("CUDA_R_32I", "HIP_R_32I", "numeric_literal"); - subst("CUDA_R_32U", "HIP_R_32U", "numeric_literal"); - subst("CUDA_R_64F", "HIP_R_64F", "numeric_literal"); - subst("CUDA_R_8I", "HIP_R_8I", "numeric_literal"); - subst("CUDA_R_8U", "HIP_R_8U", "numeric_literal"); - subst("CUDA_SUCCESS", "hipSuccess", "numeric_literal"); - subst("CUDNN_16BIT_INDICES", "HIPDNN_16BIT_INDICES", "numeric_literal"); - subst("CUDNN_32BIT_INDICES", "HIPDNN_32BIT_INDICES", "numeric_literal"); - subst("CUDNN_64BIT_INDICES", "HIPDNN_64BIT_INDICES", "numeric_literal"); - subst("CUDNN_8BIT_INDICES", "HIPDNN_8BIT_INDICES", "numeric_literal"); - subst("CUDNN_ACTIVATION_CLIPPED_RELU", "HIPDNN_ACTIVATION_CLIPPED_RELU", "numeric_literal"); - subst("CUDNN_ACTIVATION_ELU", "HIPDNN_ACTIVATION_ELU", "numeric_literal"); - subst("CUDNN_ACTIVATION_IDENTITY", "HIPDNN_ACTIVATION_PATHTRU", "numeric_literal"); - subst("CUDNN_ACTIVATION_RELU", "HIPDNN_ACTIVATION_RELU", "numeric_literal"); - subst("CUDNN_ACTIVATION_SIGMOID", "HIPDNN_ACTIVATION_SIGMOID", "numeric_literal"); - subst("CUDNN_ACTIVATION_SWISH", "HIPDNN_ACTIVATION_SWISH", "numeric_literal"); - subst("CUDNN_ACTIVATION_TANH", "HIPDNN_ACTIVATION_TANH", "numeric_literal"); - subst("CUDNN_BATCHNORM_PER_ACTIVATION", "HIPDNN_BATCHNORM_PER_ACTIVATION", "numeric_literal"); - subst("CUDNN_BATCHNORM_SPATIAL", "HIPDNN_BATCHNORM_SPATIAL", "numeric_literal"); - subst("CUDNN_BATCHNORM_SPATIAL_PERSISTENT", "HIPDNN_BATCHNORM_SPATIAL_PERSISTENT", "numeric_literal"); - subst("CUDNN_BIDIRECTIONAL", "HIPDNN_BIDIRECTIONAL", "numeric_literal"); - subst("CUDNN_BN_MIN_EPSILON", "HIPDNN_BN_MIN_EPSILON", "numeric_literal"); - subst("CUDNN_CONVOLUTION", "HIPDNN_CONVOLUTION", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_0", "HIPDNN_CONVOLUTION_BWD_DATA_ALGO_0", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_1", "HIPDNN_CONVOLUTION_BWD_DATA_ALGO_1", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_COUNT", "HIPDNN_CONVOLUTION_BWD_DATA_ALGO_TRANSPOSE_GEMM", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_FFT", "HIPDNN_CONVOLUTION_BWD_DATA_ALGO_FFT", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_FFT_TILING", "HIPDNN_CONVOLUTION_BWD_DATA_ALGO_FFT_TILING", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_WINOGRAD", "HIPDNN_CONVOLUTION_BWD_DATA_ALGO_WINOGRAD", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_DATA_ALGO_WINOGRAD_NONFUSED", "HIPDNN_CONVOLUTION_BWD_DATA_ALGO_WINOGRAD_NONFUSED", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_DATA_NO_WORKSPACE", "HIPDNN_CONVOLUTION_BWD_DATA_NO_WORKSPACE", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_DATA_PREFER_FASTEST", "HIPDNN_CONVOLUTION_BWD_DATA_PREFER_FASTEST", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_DATA_SPECIFY_WORKSPACE_LIMIT", "HIPDNN_CONVOLUTION_BWD_DATA_SPECIFY_WORKSPACE_LIMIT", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_FILTER_ALGO_0", "HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_0", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_FILTER_ALGO_1", "HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_1", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_FILTER_ALGO_3", "HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_3", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_FILTER_ALGO_COUNT", "HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_COUNT", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT", "HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT_TILING", "HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT_TILING", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD", "HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD_NONFUSED", "HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD_NONFUSED", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_FILTER_NO_WORKSPACE", "HIPDNN_CONVOLUTION_BWD_FILTER_NO_WORKSPACE", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_FILTER_PREFER_FASTEST", "HIPDNN_CONVOLUTION_BWD_FILTER_PREFER_FASTEST", "numeric_literal"); - subst("CUDNN_CONVOLUTION_BWD_FILTER_SPECIFY_WORKSPACE_LIMIT", "HIPDNN_CONVOLUTION_BWD_FILTER_SPECIFY_WORKSPACE_LIMIT", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_ALGO_COUNT", "HIPDNN_CONVOLUTION_FWD_ALGO_COUNT", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_ALGO_DIRECT", "HIPDNN_CONVOLUTION_FWD_ALGO_DIRECT", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_ALGO_FFT", "HIPDNN_CONVOLUTION_FWD_ALGO_FFT", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_ALGO_FFT_TILING", "HIPDNN_CONVOLUTION_FWD_ALGO_FFT_TILING", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_ALGO_GEMM", "HIPDNN_CONVOLUTION_FWD_ALGO_GEMM", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_GEMM", "HIPDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_GEMM", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_PRECOMP_GEMM", "HIPDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_PRECOMP_GEMM", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_ALGO_WINOGRAD", "HIPDNN_CONVOLUTION_FWD_ALGO_WINOGRAD", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_ALGO_WINOGRAD_NONFUSED", "HIPDNN_CONVOLUTION_FWD_ALGO_WINOGRAD_NONFUSED", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_NO_WORKSPACE", "HIPDNN_CONVOLUTION_FWD_NO_WORKSPACE", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_PREFER_FASTEST", "HIPDNN_CONVOLUTION_FWD_PREFER_FASTEST", "numeric_literal"); - subst("CUDNN_CONVOLUTION_FWD_SPECIFY_WORKSPACE_LIMIT", "HIPDNN_CONVOLUTION_FWD_SPECIFY_WORKSPACE_LIMIT", "numeric_literal"); - subst("CUDNN_CROSS_CORRELATION", "HIPDNN_CROSS_CORRELATION", "numeric_literal"); - subst("CUDNN_DATA_DOUBLE", "HIPDNN_DATA_DOUBLE", "numeric_literal"); - subst("CUDNN_DATA_FLOAT", "HIPDNN_DATA_FLOAT", "numeric_literal"); - subst("CUDNN_DATA_HALF", "HIPDNN_DATA_HALF", "numeric_literal"); - subst("CUDNN_DATA_INT32", "HIPDNN_DATA_INT32", "numeric_literal"); - subst("CUDNN_DATA_INT8", "HIPDNN_DATA_INT8", "numeric_literal"); - subst("CUDNN_DATA_INT8x4", "HIPDNN_DATA_INT8x4", "numeric_literal"); - subst("CUDNN_DEFAULT_MATH", "HIPDNN_DEFAULT_MATH", "numeric_literal"); - subst("CUDNN_GRU", "HIPDNN_GRU", "numeric_literal"); - subst("CUDNN_LINEAR_INPUT", "HIPDNN_LINEAR_INPUT", "numeric_literal"); - subst("CUDNN_LRN_CROSS_CHANNEL_DIM1", "HIPDNN_LRN_CROSS_CHANNEL", "numeric_literal"); - subst("CUDNN_LSTM", "HIPDNN_LSTM", "numeric_literal"); - subst("CUDNN_NOT_PROPAGATE_NAN", "HIPDNN_NOT_PROPAGATE_NAN", "numeric_literal"); - subst("CUDNN_OP_TENSOR_ADD", "HIPDNN_OP_TENSOR_ADD", "numeric_literal"); - subst("CUDNN_OP_TENSOR_MAX", "HIPDNN_OP_TENSOR_MAX", "numeric_literal"); - subst("CUDNN_OP_TENSOR_MIN", "HIPDNN_OP_TENSOR_MIN", "numeric_literal"); - subst("CUDNN_OP_TENSOR_MUL", "HIPDNN_OP_TENSOR_MUL", "numeric_literal"); - subst("CUDNN_OP_TENSOR_SQRT", "HIPDNN_OP_TENSOR_SQRT", "numeric_literal"); - subst("CUDNN_POOLING_AVERAGE_COUNT_EXCLUDE_PADDING", "HIPDNN_POOLING_AVERAGE_COUNT_EXCLUDE_PADDING", "numeric_literal"); - subst("CUDNN_POOLING_AVERAGE_COUNT_INCLUDE_PADDING", "HIPDNN_POOLING_AVERAGE_COUNT_INCLUDE_PADDING", "numeric_literal"); - subst("CUDNN_POOLING_MAX", "HIPDNN_POOLING_MAX", "numeric_literal"); - subst("CUDNN_POOLING_MAX_DETERMINISTIC", "HIPDNN_POOLING_MAX_DETERMINISTIC", "numeric_literal"); - subst("CUDNN_PROPAGATE_NAN", "HIPDNN_PROPAGATE_NAN", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_ADD", "HIPDNN_REDUCE_TENSOR_ADD", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_AMAX", "HIPDNN_REDUCE_TENSOR_AMAX", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_AVG", "HIPDNN_REDUCE_TENSOR_AVG", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_FLATTENED_INDICES", "HIPDNN_REDUCE_TENSOR_FLATTENED_INDICES", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_MAX", "HIPDNN_REDUCE_TENSOR_MAX", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_MIN", "HIPDNN_REDUCE_TENSOR_MIN", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_MUL", "HIPDNN_REDUCE_TENSOR_MUL", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_MUL_NO_ZEROS", "HIPDNN_REDUCE_TENSOR_MUL_NO_ZEROS", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_NORM1", "HIPDNN_REDUCE_TENSOR_NORM1", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_NORM2", "HIPDNN_REDUCE_TENSOR_NORM2", "numeric_literal"); - subst("CUDNN_REDUCE_TENSOR_NO_INDICES", "HIPDNN_REDUCE_TENSOR_NO_INDICES", "numeric_literal"); - subst("CUDNN_RNN_ALGO_PERSIST_DYNAMIC", "HIPDNN_RNN_ALGO_PERSIST_DYNAMIC", "numeric_literal"); - subst("CUDNN_RNN_ALGO_PERSIST_STATIC", "HIPDNN_RNN_ALGO_PERSIST_STATIC", "numeric_literal"); - subst("CUDNN_RNN_ALGO_PERSIST_STATIC_SMALL_H", "HIPDNN_RNN_ALGO_PERSIST_STATIC_SMALL_H", "numeric_literal"); - subst("CUDNN_RNN_ALGO_STANDARD", "HIPDNN_RNN_ALGO_STANDARD", "numeric_literal"); - subst("CUDNN_RNN_DOUBLE_BIAS", "HIPDNN_RNN_WITH_BIAS", "numeric_literal"); - subst("CUDNN_RNN_NO_BIAS", "HIPDNN_RNN_NO_BIAS", "numeric_literal"); - subst("CUDNN_RNN_RELU", "HIPDNN_RNN_RELU", "numeric_literal"); - subst("CUDNN_RNN_SINGLE_INP_BIAS", "HIPDNN_RNN_WITH_BIAS", "numeric_literal"); - subst("CUDNN_RNN_SINGLE_REC_BIAS", "HIPDNN_RNN_WITH_BIAS", "numeric_literal"); - subst("CUDNN_RNN_TANH", "HIPDNN_RNN_TANH", "numeric_literal"); - subst("CUDNN_SKIP_INPUT", "HIPDNN_SKIP_INPUT", "numeric_literal"); - subst("CUDNN_SOFTMAX_ACCURATE", "HIPDNN_SOFTMAX_ACCURATE", "numeric_literal"); - subst("CUDNN_SOFTMAX_FAST", "HIPDNN_SOFTMAX_FAST", "numeric_literal"); - subst("CUDNN_SOFTMAX_LOG", "HIPDNN_SOFTMAX_LOG", "numeric_literal"); - subst("CUDNN_SOFTMAX_MODE_CHANNEL", "HIPDNN_SOFTMAX_MODE_CHANNEL", "numeric_literal"); - subst("CUDNN_SOFTMAX_MODE_INSTANCE", "HIPDNN_SOFTMAX_MODE_INSTANCE", "numeric_literal"); - subst("CUDNN_STATUS_ALLOC_FAILED", "HIPDNN_STATUS_ALLOC_FAILED", "numeric_literal"); - subst("CUDNN_STATUS_ARCH_MISMATCH", "HIPDNN_STATUS_ARCH_MISMATCH", "numeric_literal"); - subst("CUDNN_STATUS_BAD_PARAM", "HIPDNN_STATUS_BAD_PARAM", "numeric_literal"); - subst("CUDNN_STATUS_EXECUTION_FAILED", "HIPDNN_STATUS_EXECUTION_FAILED", "numeric_literal"); - subst("CUDNN_STATUS_INTERNAL_ERROR", "HIPDNN_STATUS_INTERNAL_ERROR", "numeric_literal"); - subst("CUDNN_STATUS_INVALID_VALUE", "HIPDNN_STATUS_INVALID_VALUE", "numeric_literal"); - subst("CUDNN_STATUS_LICENSE_ERROR", "HIPDNN_STATUS_LICENSE_ERROR", "numeric_literal"); - subst("CUDNN_STATUS_MAPPING_ERROR", "HIPDNN_STATUS_MAPPING_ERROR", "numeric_literal"); - subst("CUDNN_STATUS_NOT_INITIALIZED", "HIPDNN_STATUS_NOT_INITIALIZED", "numeric_literal"); - subst("CUDNN_STATUS_NOT_SUPPORTED", "HIPDNN_STATUS_NOT_SUPPORTED", "numeric_literal"); - subst("CUDNN_STATUS_RUNTIME_PREREQUISITE_MISSING", "HIPDNN_STATUS_RUNTIME_PREREQUISITE_MISSING", "numeric_literal"); - subst("CUDNN_STATUS_SUCCESS", "HIPDNN_STATUS_SUCCESS", "numeric_literal"); - subst("CUDNN_TENSOR_NCHW", "HIPDNN_TENSOR_NCHW", "numeric_literal"); - subst("CUDNN_TENSOR_NCHW_VECT_C", "HIPDNN_TENSOR_NCHW_VECT_C", "numeric_literal"); - subst("CUDNN_TENSOR_NHWC", "HIPDNN_TENSOR_NHWC", "numeric_literal"); - subst("CUDNN_TENSOR_OP_MATH", "HIPDNN_TENSOR_OP_MATH", "numeric_literal"); - subst("CUDNN_UNIDIRECTIONAL", "HIPDNN_UNIDIRECTIONAL", "numeric_literal"); - subst("CUFFT_ALLOC_FAILED", "HIPFFT_ALLOC_FAILED", "numeric_literal"); - subst("CUFFT_C2C", "HIPFFT_C2C", "numeric_literal"); - subst("CUFFT_C2R", "HIPFFT_C2R", "numeric_literal"); - subst("CUFFT_CB_LD_COMPLEX", "HIPFFT_CB_LD_COMPLEX", "numeric_literal"); - subst("CUFFT_CB_LD_COMPLEX_DOUBLE", "HIPFFT_CB_LD_COMPLEX_DOUBLE", "numeric_literal"); - subst("CUFFT_CB_LD_REAL", "HIPFFT_CB_LD_REAL", "numeric_literal"); - subst("CUFFT_CB_LD_REAL_DOUBLE", "HIPFFT_CB_LD_REAL_DOUBLE", "numeric_literal"); - subst("CUFFT_CB_ST_COMPLEX", "HIPFFT_CB_ST_COMPLEX", "numeric_literal"); - subst("CUFFT_CB_ST_COMPLEX_DOUBLE", "HIPFFT_CB_ST_COMPLEX_DOUBLE", "numeric_literal"); - subst("CUFFT_CB_ST_REAL", "HIPFFT_CB_ST_REAL", "numeric_literal"); - subst("CUFFT_CB_ST_REAL_DOUBLE", "HIPFFT_CB_ST_REAL_DOUBLE", "numeric_literal"); - subst("CUFFT_CB_UNDEFINED", "HIPFFT_CB_UNDEFINED", "numeric_literal"); - subst("CUFFT_D2Z", "HIPFFT_D2Z", "numeric_literal"); - subst("CUFFT_EXEC_FAILED", "HIPFFT_EXEC_FAILED", "numeric_literal"); - subst("CUFFT_FORWARD", "HIPFFT_FORWARD", "numeric_literal"); - subst("CUFFT_INCOMPLETE_PARAMETER_LIST", "HIPFFT_INCOMPLETE_PARAMETER_LIST", "numeric_literal"); - subst("CUFFT_INTERNAL_ERROR", "HIPFFT_INTERNAL_ERROR", "numeric_literal"); - subst("CUFFT_INVALID_DEVICE", "HIPFFT_INVALID_DEVICE", "numeric_literal"); - subst("CUFFT_INVALID_PLAN", "HIPFFT_INVALID_PLAN", "numeric_literal"); - subst("CUFFT_INVALID_SIZE", "HIPFFT_INVALID_SIZE", "numeric_literal"); - subst("CUFFT_INVALID_TYPE", "HIPFFT_INVALID_TYPE", "numeric_literal"); - subst("CUFFT_INVALID_VALUE", "HIPFFT_INVALID_VALUE", "numeric_literal"); - subst("CUFFT_INVERSE", "HIPFFT_BACKWARD", "numeric_literal"); - subst("CUFFT_NOT_IMPLEMENTED", "HIPFFT_NOT_IMPLEMENTED", "numeric_literal"); - subst("CUFFT_NOT_SUPPORTED", "HIPFFT_NOT_SUPPORTED", "numeric_literal"); - subst("CUFFT_NO_WORKSPACE", "HIPFFT_NO_WORKSPACE", "numeric_literal"); - subst("CUFFT_PARSE_ERROR", "HIPFFT_PARSE_ERROR", "numeric_literal"); - subst("CUFFT_R2C", "HIPFFT_R2C", "numeric_literal"); - subst("CUFFT_SETUP_FAILED", "HIPFFT_SETUP_FAILED", "numeric_literal"); - subst("CUFFT_SUCCESS", "HIPFFT_SUCCESS", "numeric_literal"); - subst("CUFFT_UNALIGNED_DATA", "HIPFFT_UNALIGNED_DATA", "numeric_literal"); - subst("CUFFT_Z2D", "HIPFFT_Z2D", "numeric_literal"); - subst("CUFFT_Z2Z", "HIPFFT_Z2Z", "numeric_literal"); - subst("CURAND_DIRECTION_VECTORS_32_JOEKUO6", "HIPRAND_DIRECTION_VECTORS_32_JOEKUO6", "numeric_literal"); - subst("CURAND_DIRECTION_VECTORS_64_JOEKUO6", "HIPRAND_DIRECTION_VECTORS_64_JOEKUO6", "numeric_literal"); - subst("CURAND_ORDERING_PSEUDO_BEST", "HIPRAND_ORDERING_PSEUDO_BEST", "numeric_literal"); - subst("CURAND_ORDERING_PSEUDO_DEFAULT", "HIPRAND_ORDERING_PSEUDO_DEFAULT", "numeric_literal"); - subst("CURAND_ORDERING_PSEUDO_DYNAMIC", "HIPRAND_ORDERING_PSEUDO_DYNAMIC", "numeric_literal"); - subst("CURAND_ORDERING_PSEUDO_LEGACY", "HIPRAND_ORDERING_PSEUDO_LEGACY", "numeric_literal"); - subst("CURAND_ORDERING_PSEUDO_SEEDED", "HIPRAND_ORDERING_PSEUDO_SEEDED", "numeric_literal"); - subst("CURAND_ORDERING_QUASI_DEFAULT", "HIPRAND_ORDERING_QUASI_DEFAULT", "numeric_literal"); - subst("CURAND_RNG_PSEUDO_DEFAULT", "HIPRAND_RNG_PSEUDO_DEFAULT", "numeric_literal"); - subst("CURAND_RNG_PSEUDO_MRG32K3A", "HIPRAND_RNG_PSEUDO_MRG32K3A", "numeric_literal"); - subst("CURAND_RNG_PSEUDO_MT19937", "HIPRAND_RNG_PSEUDO_MT19937", "numeric_literal"); - subst("CURAND_RNG_PSEUDO_MTGP32", "HIPRAND_RNG_PSEUDO_MTGP32", "numeric_literal"); - subst("CURAND_RNG_PSEUDO_PHILOX4_32_10", "HIPRAND_RNG_PSEUDO_PHILOX4_32_10", "numeric_literal"); - subst("CURAND_RNG_PSEUDO_XORWOW", "HIPRAND_RNG_PSEUDO_XORWOW", "numeric_literal"); - subst("CURAND_RNG_QUASI_DEFAULT", "HIPRAND_RNG_QUASI_DEFAULT", "numeric_literal"); - subst("CURAND_RNG_QUASI_SCRAMBLED_SOBOL32", "HIPRAND_RNG_QUASI_SCRAMBLED_SOBOL32", "numeric_literal"); - subst("CURAND_RNG_QUASI_SCRAMBLED_SOBOL64", "HIPRAND_RNG_QUASI_SCRAMBLED_SOBOL64", "numeric_literal"); - subst("CURAND_RNG_QUASI_SOBOL32", "HIPRAND_RNG_QUASI_SOBOL32", "numeric_literal"); - subst("CURAND_RNG_QUASI_SOBOL64", "HIPRAND_RNG_QUASI_SOBOL64", "numeric_literal"); - subst("CURAND_RNG_TEST", "HIPRAND_RNG_TEST", "numeric_literal"); - subst("CURAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6", "HIPRAND_SCRAMBLED_DIRECTION_VECTORS_32_JOEKUO6", "numeric_literal"); - subst("CURAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6", "HIPRAND_SCRAMBLED_DIRECTION_VECTORS_64_JOEKUO6", "numeric_literal"); - subst("CURAND_STATUS_ALLOCATION_FAILED", "HIPRAND_STATUS_ALLOCATION_FAILED", "numeric_literal"); - subst("CURAND_STATUS_ARCH_MISMATCH", "HIPRAND_STATUS_ARCH_MISMATCH", "numeric_literal"); - subst("CURAND_STATUS_DOUBLE_PRECISION_REQUIRED", "HIPRAND_STATUS_DOUBLE_PRECISION_REQUIRED", "numeric_literal"); - subst("CURAND_STATUS_INITIALIZATION_FAILED", "HIPRAND_STATUS_INITIALIZATION_FAILED", "numeric_literal"); - subst("CURAND_STATUS_INTERNAL_ERROR", "HIPRAND_STATUS_INTERNAL_ERROR", "numeric_literal"); - subst("CURAND_STATUS_LAUNCH_FAILURE", "HIPRAND_STATUS_LAUNCH_FAILURE", "numeric_literal"); - subst("CURAND_STATUS_LENGTH_NOT_MULTIPLE", "HIPRAND_STATUS_LENGTH_NOT_MULTIPLE", "numeric_literal"); - subst("CURAND_STATUS_NOT_INITIALIZED", "HIPRAND_STATUS_NOT_INITIALIZED", "numeric_literal"); - subst("CURAND_STATUS_OUT_OF_RANGE", "HIPRAND_STATUS_OUT_OF_RANGE", "numeric_literal"); - subst("CURAND_STATUS_PREEXISTING_FAILURE", "HIPRAND_STATUS_PREEXISTING_FAILURE", "numeric_literal"); - subst("CURAND_STATUS_SUCCESS", "HIPRAND_STATUS_SUCCESS", "numeric_literal"); - subst("CURAND_STATUS_TYPE_ERROR", "HIPRAND_STATUS_TYPE_ERROR", "numeric_literal"); - subst("CURAND_STATUS_VERSION_MISMATCH", "HIPRAND_STATUS_VERSION_MISMATCH", "numeric_literal"); - subst("CUSOLVERDN_GETRF", "HIPSOLVERDN_GETRF", "numeric_literal"); - subst("CUSOLVERRF_FACTORIZATION_ALG0", "HIPSOLVERRF_FACTORIZATION_ALG0", "numeric_literal"); - subst("CUSOLVERRF_FACTORIZATION_ALG1", "HIPSOLVERRF_FACTORIZATION_ALG1", "numeric_literal"); - subst("CUSOLVERRF_FACTORIZATION_ALG2", "HIPSOLVERRF_FACTORIZATION_ALG2", "numeric_literal"); - subst("CUSOLVERRF_MATRIX_FORMAT_CSC", "HIPSOLVERRF_MATRIX_FORMAT_CSC", "numeric_literal"); - subst("CUSOLVERRF_MATRIX_FORMAT_CSR", "HIPSOLVERRF_MATRIX_FORMAT_CSR", "numeric_literal"); - subst("CUSOLVERRF_NUMERIC_BOOST_NOT_USED", "HIPSOLVERRF_NUMERIC_BOOST_NOT_USED", "numeric_literal"); - subst("CUSOLVERRF_NUMERIC_BOOST_USED", "HIPSOLVERRF_NUMERIC_BOOST_USED", "numeric_literal"); - subst("CUSOLVERRF_RESET_VALUES_FAST_MODE_OFF", "HIPSOLVERRF_RESET_VALUES_FAST_MODE_OFF", "numeric_literal"); - subst("CUSOLVERRF_RESET_VALUES_FAST_MODE_ON", "HIPSOLVERRF_RESET_VALUES_FAST_MODE_ON", "numeric_literal"); - subst("CUSOLVERRF_TRIANGULAR_SOLVE_ALG1", "HIPSOLVERRF_TRIANGULAR_SOLVE_ALG1", "numeric_literal"); - subst("CUSOLVERRF_TRIANGULAR_SOLVE_ALG2", "HIPSOLVERRF_TRIANGULAR_SOLVE_ALG2", "numeric_literal"); - subst("CUSOLVERRF_TRIANGULAR_SOLVE_ALG3", "HIPSOLVERRF_TRIANGULAR_SOLVE_ALG3", "numeric_literal"); - subst("CUSOLVERRF_UNIT_DIAGONAL_ASSUMED_L", "HIPSOLVERRF_UNIT_DIAGONAL_ASSUMED_L", "numeric_literal"); - subst("CUSOLVERRF_UNIT_DIAGONAL_ASSUMED_U", "HIPSOLVERRF_UNIT_DIAGONAL_ASSUMED_U", "numeric_literal"); - subst("CUSOLVERRF_UNIT_DIAGONAL_STORED_L", "HIPSOLVERRF_UNIT_DIAGONAL_STORED_L", "numeric_literal"); - subst("CUSOLVERRF_UNIT_DIAGONAL_STORED_U", "HIPSOLVERRF_UNIT_DIAGONAL_STORED_U", "numeric_literal"); - subst("CUSOLVER_ALG_0", "HIPSOLVER_ALG_0", "numeric_literal"); - subst("CUSOLVER_ALG_1", "HIPSOLVER_ALG_1", "numeric_literal"); - subst("CUSOLVER_ALLOW_NON_DETERMINISTIC_RESULTS", "HIPSOLVER_ALLOW_NON_DETERMINISTIC_RESULTS", "numeric_literal"); - subst("CUSOLVER_DETERMINISTIC_RESULTS", "HIPSOLVER_DETERMINISTIC_RESULTS", "numeric_literal"); - subst("CUSOLVER_EIG_MODE_NOVECTOR", "HIPSOLVER_EIG_MODE_NOVECTOR", "numeric_literal"); - subst("CUSOLVER_EIG_MODE_VECTOR", "HIPSOLVER_EIG_MODE_VECTOR", "numeric_literal"); - subst("CUSOLVER_EIG_RANGE_ALL", "HIPSOLVER_EIG_RANGE_ALL", "numeric_literal"); - subst("CUSOLVER_EIG_RANGE_I", "HIPSOLVER_EIG_RANGE_I", "numeric_literal"); - subst("CUSOLVER_EIG_RANGE_V", "HIPSOLVER_EIG_RANGE_V", "numeric_literal"); - subst("CUSOLVER_EIG_TYPE_1", "HIPSOLVER_EIG_TYPE_1", "numeric_literal"); - subst("CUSOLVER_EIG_TYPE_2", "HIPSOLVER_EIG_TYPE_2", "numeric_literal"); - subst("CUSOLVER_EIG_TYPE_3", "HIPSOLVER_EIG_TYPE_3", "numeric_literal"); - subst("CUSOLVER_STATUS_ALLOC_FAILED", "HIPSOLVER_STATUS_ALLOC_FAILED", "numeric_literal"); - subst("CUSOLVER_STATUS_ARCH_MISMATCH", "HIPSOLVER_STATUS_ARCH_MISMATCH", "numeric_literal"); - subst("CUSOLVER_STATUS_EXECUTION_FAILED", "HIPSOLVER_STATUS_EXECUTION_FAILED", "numeric_literal"); - subst("CUSOLVER_STATUS_INTERNAL_ERROR", "HIPSOLVER_STATUS_INTERNAL_ERROR", "numeric_literal"); - subst("CUSOLVER_STATUS_INVALID_VALUE", "HIPSOLVER_STATUS_INVALID_VALUE", "numeric_literal"); - subst("CUSOLVER_STATUS_IRS_INTERNAL_ERROR", "HIPSOLVER_STATUS_INTERNAL_ERROR", "numeric_literal"); - subst("CUSOLVER_STATUS_IRS_NOT_SUPPORTED", "HIPSOLVER_STATUS_NOT_SUPPORTED", "numeric_literal"); - subst("CUSOLVER_STATUS_IRS_PARAMS_INVALID", "HIPSOLVER_STATUS_INVALID_VALUE", "numeric_literal"); - subst("CUSOLVER_STATUS_MAPPING_ERROR", "HIPSOLVER_STATUS_MAPPING_ERROR", "numeric_literal"); - subst("CUSOLVER_STATUS_MATRIX_TYPE_NOT_SUPPORTED", "HIPSOLVER_STATUS_MATRIX_TYPE_NOT_SUPPORTED", "numeric_literal"); - subst("CUSOLVER_STATUS_NOT_INITIALIZED", "HIPSOLVER_STATUS_NOT_INITIALIZED", "numeric_literal"); - subst("CUSOLVER_STATUS_NOT_SUPPORTED", "HIPSOLVER_STATUS_NOT_SUPPORTED", "numeric_literal"); - subst("CUSOLVER_STATUS_SUCCESS", "HIPSOLVER_STATUS_SUCCESS", "numeric_literal"); - subst("CUSOLVER_STATUS_ZERO_PIVOT", "HIPSOLVER_STATUS_ZERO_PIVOT", "numeric_literal"); - subst("CUSPARSE_ACTION_NUMERIC", "HIPSPARSE_ACTION_NUMERIC", "numeric_literal"); - subst("CUSPARSE_ACTION_SYMBOLIC", "HIPSPARSE_ACTION_SYMBOLIC", "numeric_literal"); - subst("CUSPARSE_COOMM_ALG1", "HIPSPARSE_COOMM_ALG1", "numeric_literal"); - subst("CUSPARSE_COOMM_ALG2", "HIPSPARSE_COOMM_ALG2", "numeric_literal"); - subst("CUSPARSE_COOMM_ALG3", "HIPSPARSE_COOMM_ALG3", "numeric_literal"); - subst("CUSPARSE_COOMV_ALG", "HIPSPARSE_COOMV_ALG", "numeric_literal"); - subst("CUSPARSE_CSR2CSC_ALG1", "HIPSPARSE_CSR2CSC_ALG1", "numeric_literal"); - subst("CUSPARSE_CSR2CSC_ALG2", "HIPSPARSE_CSR2CSC_ALG2", "numeric_literal"); - subst("CUSPARSE_CSR2CSC_ALG_DEFAULT", "HIPSPARSE_CSR2CSC_ALG_DEFAULT", "numeric_literal"); - subst("CUSPARSE_CSRMM_ALG1", "HIPSPARSE_CSRMM_ALG1", "numeric_literal"); - subst("CUSPARSE_CSRMV_ALG1", "HIPSPARSE_CSRMV_ALG1", "numeric_literal"); - subst("CUSPARSE_CSRMV_ALG2", "HIPSPARSE_CSRMV_ALG2", "numeric_literal"); - subst("CUSPARSE_DENSETOSPARSE_ALG_DEFAULT", "HIPSPARSE_DENSETOSPARSE_ALG_DEFAULT", "numeric_literal"); - subst("CUSPARSE_DIAG_TYPE_NON_UNIT", "HIPSPARSE_DIAG_TYPE_NON_UNIT", "numeric_literal"); - subst("CUSPARSE_DIAG_TYPE_UNIT", "HIPSPARSE_DIAG_TYPE_UNIT", "numeric_literal"); - subst("CUSPARSE_DIRECTION_COLUMN", "HIPSPARSE_DIRECTION_COLUMN", "numeric_literal"); - subst("CUSPARSE_DIRECTION_ROW", "HIPSPARSE_DIRECTION_ROW", "numeric_literal"); - subst("CUSPARSE_FILL_MODE_LOWER", "HIPSPARSE_FILL_MODE_LOWER", "numeric_literal"); - subst("CUSPARSE_FILL_MODE_UPPER", "HIPSPARSE_FILL_MODE_UPPER", "numeric_literal"); - subst("CUSPARSE_FORMAT_BLOCKED_ELL", "HIPSPARSE_FORMAT_BLOCKED_ELL", "numeric_literal"); - subst("CUSPARSE_FORMAT_COO", "HIPSPARSE_FORMAT_COO", "numeric_literal"); - subst("CUSPARSE_FORMAT_COO_AOS", "HIPSPARSE_FORMAT_COO_AOS", "numeric_literal"); - subst("CUSPARSE_FORMAT_CSC", "HIPSPARSE_FORMAT_CSC", "numeric_literal"); - subst("CUSPARSE_FORMAT_CSR", "HIPSPARSE_FORMAT_CSR", "numeric_literal"); - subst("CUSPARSE_HYB_PARTITION_AUTO", "HIPSPARSE_HYB_PARTITION_AUTO", "numeric_literal"); - subst("CUSPARSE_HYB_PARTITION_MAX", "HIPSPARSE_HYB_PARTITION_MAX", "numeric_literal"); - subst("CUSPARSE_HYB_PARTITION_USER", "HIPSPARSE_HYB_PARTITION_USER", "numeric_literal"); - subst("CUSPARSE_INDEX_16U", "HIPSPARSE_INDEX_16U", "numeric_literal"); - subst("CUSPARSE_INDEX_32I", "HIPSPARSE_INDEX_32I", "numeric_literal"); - subst("CUSPARSE_INDEX_64I", "HIPSPARSE_INDEX_64I", "numeric_literal"); - subst("CUSPARSE_INDEX_BASE_ONE", "HIPSPARSE_INDEX_BASE_ONE", "numeric_literal"); - subst("CUSPARSE_INDEX_BASE_ZERO", "HIPSPARSE_INDEX_BASE_ZERO", "numeric_literal"); - subst("CUSPARSE_MATRIX_TYPE_GENERAL", "HIPSPARSE_MATRIX_TYPE_GENERAL", "numeric_literal"); - subst("CUSPARSE_MATRIX_TYPE_HERMITIAN", "HIPSPARSE_MATRIX_TYPE_HERMITIAN", "numeric_literal"); - subst("CUSPARSE_MATRIX_TYPE_SYMMETRIC", "HIPSPARSE_MATRIX_TYPE_SYMMETRIC", "numeric_literal"); - subst("CUSPARSE_MATRIX_TYPE_TRIANGULAR", "HIPSPARSE_MATRIX_TYPE_TRIANGULAR", "numeric_literal"); - subst("CUSPARSE_MM_ALG_DEFAULT", "HIPSPARSE_MM_ALG_DEFAULT", "numeric_literal"); - subst("CUSPARSE_MV_ALG_DEFAULT", "HIPSPARSE_MV_ALG_DEFAULT", "numeric_literal"); - subst("CUSPARSE_OPERATION_CONJUGATE_TRANSPOSE", "HIPSPARSE_OPERATION_CONJUGATE_TRANSPOSE", "numeric_literal"); - subst("CUSPARSE_OPERATION_NON_TRANSPOSE", "HIPSPARSE_OPERATION_NON_TRANSPOSE", "numeric_literal"); - subst("CUSPARSE_OPERATION_TRANSPOSE", "HIPSPARSE_OPERATION_TRANSPOSE", "numeric_literal"); - subst("CUSPARSE_ORDER_COL", "HIPSPARSE_ORDER_COL", "numeric_literal"); - subst("CUSPARSE_ORDER_ROW", "HIPSPARSE_ORDER_ROW", "numeric_literal"); - subst("CUSPARSE_POINTER_MODE_DEVICE", "HIPSPARSE_POINTER_MODE_DEVICE", "numeric_literal"); - subst("CUSPARSE_POINTER_MODE_HOST", "HIPSPARSE_POINTER_MODE_HOST", "numeric_literal"); - subst("CUSPARSE_SDDMM_ALG_DEFAULT", "HIPSPARSE_SDDMM_ALG_DEFAULT", "numeric_literal"); - subst("CUSPARSE_SOLVE_POLICY_NO_LEVEL", "HIPSPARSE_SOLVE_POLICY_NO_LEVEL", "numeric_literal"); - subst("CUSPARSE_SOLVE_POLICY_USE_LEVEL", "HIPSPARSE_SOLVE_POLICY_USE_LEVEL", "numeric_literal"); - subst("CUSPARSE_SPARSETODENSE_ALG_DEFAULT", "HIPSPARSE_SPARSETODENSE_ALG_DEFAULT", "numeric_literal"); - subst("CUSPARSE_SPGEMM_ALG1", "HIPSPARSE_SPGEMM_ALG1", "numeric_literal"); - subst("CUSPARSE_SPGEMM_ALG2", "HIPSPARSE_SPGEMM_ALG2", "numeric_literal"); - subst("CUSPARSE_SPGEMM_ALG3", "HIPSPARSE_SPGEMM_ALG3", "numeric_literal"); - subst("CUSPARSE_SPGEMM_CSR_ALG_DETERMINITIC", "HIPSPARSE_SPGEMM_CSR_ALG_DETERMINISTIC", "numeric_literal"); - subst("CUSPARSE_SPGEMM_CSR_ALG_NONDETERMINITIC", "HIPSPARSE_SPGEMM_CSR_ALG_NONDETERMINISTIC", "numeric_literal"); - subst("CUSPARSE_SPGEMM_DEFAULT", "HIPSPARSE_SPGEMM_DEFAULT", "numeric_literal"); - subst("CUSPARSE_SPMAT_DIAG_TYPE", "HIPSPARSE_SPMAT_DIAG_TYPE", "numeric_literal"); - subst("CUSPARSE_SPMAT_FILL_MODE", "HIPSPARSE_SPMAT_FILL_MODE", "numeric_literal"); - subst("CUSPARSE_SPMM_ALG_DEFAULT", "HIPSPARSE_SPMM_ALG_DEFAULT", "numeric_literal"); - subst("CUSPARSE_SPMM_BLOCKED_ELL_ALG1", "HIPSPARSE_SPMM_BLOCKED_ELL_ALG1", "numeric_literal"); - subst("CUSPARSE_SPMM_COO_ALG1", "HIPSPARSE_SPMM_COO_ALG1", "numeric_literal"); - subst("CUSPARSE_SPMM_COO_ALG2", "HIPSPARSE_SPMM_COO_ALG2", "numeric_literal"); - subst("CUSPARSE_SPMM_COO_ALG3", "HIPSPARSE_SPMM_COO_ALG3", "numeric_literal"); - subst("CUSPARSE_SPMM_COO_ALG4", "HIPSPARSE_SPMM_COO_ALG4", "numeric_literal"); - subst("CUSPARSE_SPMM_CSR_ALG1", "HIPSPARSE_SPMM_CSR_ALG1", "numeric_literal"); - subst("CUSPARSE_SPMM_CSR_ALG2", "HIPSPARSE_SPMM_CSR_ALG2", "numeric_literal"); - subst("CUSPARSE_SPMM_CSR_ALG3", "HIPSPARSE_SPMM_CSR_ALG3", "numeric_literal"); - subst("CUSPARSE_SPMV_ALG_DEFAULT", "HIPSPARSE_SPMV_ALG_DEFAULT", "numeric_literal"); - subst("CUSPARSE_SPMV_COO_ALG1", "HIPSPARSE_SPMV_COO_ALG1", "numeric_literal"); - subst("CUSPARSE_SPMV_COO_ALG2", "HIPSPARSE_SPMV_COO_ALG2", "numeric_literal"); - subst("CUSPARSE_SPMV_CSR_ALG1", "HIPSPARSE_SPMV_CSR_ALG1", "numeric_literal"); - subst("CUSPARSE_SPMV_CSR_ALG2", "HIPSPARSE_SPMV_CSR_ALG2", "numeric_literal"); - subst("CUSPARSE_SPSM_ALG_DEFAULT", "HIPSPARSE_SPSM_ALG_DEFAULT", "numeric_literal"); - subst("CUSPARSE_SPSV_ALG_DEFAULT", "HIPSPARSE_SPSV_ALG_DEFAULT", "numeric_literal"); - subst("CUSPARSE_STATUS_ALLOC_FAILED", "HIPSPARSE_STATUS_ALLOC_FAILED", "numeric_literal"); - subst("CUSPARSE_STATUS_ARCH_MISMATCH", "HIPSPARSE_STATUS_ARCH_MISMATCH", "numeric_literal"); - subst("CUSPARSE_STATUS_EXECUTION_FAILED", "HIPSPARSE_STATUS_EXECUTION_FAILED", "numeric_literal"); - subst("CUSPARSE_STATUS_INSUFFICIENT_RESOURCES", "HIPSPARSE_STATUS_INSUFFICIENT_RESOURCES", "numeric_literal"); - subst("CUSPARSE_STATUS_INTERNAL_ERROR", "HIPSPARSE_STATUS_INTERNAL_ERROR", "numeric_literal"); - subst("CUSPARSE_STATUS_INVALID_VALUE", "HIPSPARSE_STATUS_INVALID_VALUE", "numeric_literal"); - subst("CUSPARSE_STATUS_MAPPING_ERROR", "HIPSPARSE_STATUS_MAPPING_ERROR", "numeric_literal"); - subst("CUSPARSE_STATUS_MATRIX_TYPE_NOT_SUPPORTED", "HIPSPARSE_STATUS_MATRIX_TYPE_NOT_SUPPORTED", "numeric_literal"); - subst("CUSPARSE_STATUS_NOT_INITIALIZED", "HIPSPARSE_STATUS_NOT_INITIALIZED", "numeric_literal"); - subst("CUSPARSE_STATUS_NOT_SUPPORTED", "HIPSPARSE_STATUS_NOT_SUPPORTED", "numeric_literal"); - subst("CUSPARSE_STATUS_SUCCESS", "HIPSPARSE_STATUS_SUCCESS", "numeric_literal"); - subst("CUSPARSE_STATUS_ZERO_PIVOT", "HIPSPARSE_STATUS_ZERO_PIVOT", "numeric_literal"); - subst("CU_ACCESS_PROPERTY_NORMAL", "hipAccessPropertyNormal", "numeric_literal"); - subst("CU_ACCESS_PROPERTY_PERSISTING", "hipAccessPropertyPersisting", "numeric_literal"); - subst("CU_ACCESS_PROPERTY_STREAMING", "hipAccessPropertyStreaming", "numeric_literal"); - subst("CU_AD_FORMAT_FLOAT", "HIP_AD_FORMAT_FLOAT", "numeric_literal"); - subst("CU_AD_FORMAT_HALF", "HIP_AD_FORMAT_HALF", "numeric_literal"); - subst("CU_AD_FORMAT_SIGNED_INT16", "HIP_AD_FORMAT_SIGNED_INT16", "numeric_literal"); - subst("CU_AD_FORMAT_SIGNED_INT32", "HIP_AD_FORMAT_SIGNED_INT32", "numeric_literal"); - subst("CU_AD_FORMAT_SIGNED_INT8", "HIP_AD_FORMAT_SIGNED_INT8", "numeric_literal"); - subst("CU_AD_FORMAT_UNSIGNED_INT16", "HIP_AD_FORMAT_UNSIGNED_INT16", "numeric_literal"); - subst("CU_AD_FORMAT_UNSIGNED_INT32", "HIP_AD_FORMAT_UNSIGNED_INT32", "numeric_literal"); - subst("CU_AD_FORMAT_UNSIGNED_INT8", "HIP_AD_FORMAT_UNSIGNED_INT8", "numeric_literal"); - subst("CU_ARRAY_SPARSE_SUBRESOURCE_TYPE_MIPTAIL", "hipArraySparseSubresourceTypeMiptail", "numeric_literal"); - subst("CU_ARRAY_SPARSE_SUBRESOURCE_TYPE_SPARSE_LEVEL", "hipArraySparseSubresourceTypeSparseLevel", "numeric_literal"); - subst("CU_COMPUTEMODE_DEFAULT", "hipComputeModeDefault", "numeric_literal"); - subst("CU_COMPUTEMODE_EXCLUSIVE", "hipComputeModeExclusive", "numeric_literal"); - subst("CU_COMPUTEMODE_EXCLUSIVE_PROCESS", "hipComputeModeExclusiveProcess", "numeric_literal"); - subst("CU_COMPUTEMODE_PROHIBITED", "hipComputeModeProhibited", "numeric_literal"); - subst("CU_CTX_BLOCKING_SYNC", "hipDeviceScheduleBlockingSync", "numeric_literal"); - subst("CU_CTX_LMEM_RESIZE_TO_MAX", "hipDeviceLmemResizeToMax", "numeric_literal"); - subst("CU_CTX_MAP_HOST", "hipDeviceMapHost", "numeric_literal"); - subst("CU_CTX_SCHED_AUTO", "hipDeviceScheduleAuto", "numeric_literal"); - subst("CU_CTX_SCHED_BLOCKING_SYNC", "hipDeviceScheduleBlockingSync", "numeric_literal"); - subst("CU_CTX_SCHED_MASK", "hipDeviceScheduleMask", "numeric_literal"); - subst("CU_CTX_SCHED_SPIN", "hipDeviceScheduleSpin", "numeric_literal"); - subst("CU_CTX_SCHED_YIELD", "hipDeviceScheduleYield", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_ASYNC_ENGINE_COUNT", "hipDeviceAttributeAsyncEngineCount", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_CAN_MAP_HOST_MEMORY", "hipDeviceAttributeCanMapHostMemory", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_CAN_USE_HOST_POINTER_FOR_REGISTERED_MEM", "hipDeviceAttributeCanUseHostPointerForRegisteredMem", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_WAIT_VALUE_NOR", "hipDeviceAttributeCanUseStreamWaitValue", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_WAIT_VALUE_NOR_V1", "hipDeviceAttributeCanUseStreamWaitValue", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_CLOCK_RATE", "hipDeviceAttributeClockRate", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MAJOR", "hipDeviceAttributeComputeCapabilityMajor", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MINOR", "hipDeviceAttributeComputeCapabilityMinor", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_COMPUTE_MODE", "hipDeviceAttributeComputeMode", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_COMPUTE_PREEMPTION_SUPPORTED", "hipDeviceAttributeComputePreemptionSupported", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_CONCURRENT_KERNELS", "hipDeviceAttributeConcurrentKernels", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_CONCURRENT_MANAGED_ACCESS", "hipDeviceAttributeConcurrentManagedAccess", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_COOPERATIVE_LAUNCH", "hipDeviceAttributeCooperativeLaunch", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_COOPERATIVE_MULTI_DEVICE_LAUNCH", "hipDeviceAttributeCooperativeMultiDeviceLaunch", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_DIRECT_MANAGED_MEM_ACCESS_FROM_HOST", "hipDeviceAttributeDirectManagedMemAccessFromHost", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_ECC_ENABLED", "hipDeviceAttributeEccEnabled", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_GLOBAL_L1_CACHE_SUPPORTED", "hipDeviceAttributeGlobalL1CacheSupported", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_GLOBAL_MEMORY_BUS_WIDTH", "hipDeviceAttributeMemoryBusWidth", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_GPU_OVERLAP", "hipDeviceAttributeAsyncEngineCount", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_HOST_NATIVE_ATOMIC_SUPPORTED", "hipDeviceAttributeHostNativeAtomicSupported", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_HOST_REGISTER_SUPPORTED", "hipDeviceAttributeHostRegisterSupported", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_INTEGRATED", "hipDeviceAttributeIntegrated", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_KERNEL_EXEC_TIMEOUT", "hipDeviceAttributeKernelExecTimeout", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_L2_CACHE_SIZE", "hipDeviceAttributeL2CacheSize", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_LOCAL_L1_CACHE_SUPPORTED", "hipDeviceAttributeLocalL1CacheSupported", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MANAGED_MEMORY", "hipDeviceAttributeManagedMemory", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_LAYERED_WIDTH", "hipDeviceAttributeMaxSurface1DLayered", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_WIDTH", "hipDeviceAttributeMaxSurface1D", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_HEIGHT", "hipDeviceAttributeMaxSurface2D", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_HEIGHT", "hipDeviceAttributeMaxSurface2DLayered", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_WIDTH", "hipDeviceAttributeMaxSurface2DLayered", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_WIDTH", "hipDeviceAttributeMaxSurface2D", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_DEPTH", "hipDeviceAttributeMaxSurface3D", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_HEIGHT", "hipDeviceAttributeMaxSurface3D", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_WIDTH", "hipDeviceAttributeMaxSurface3D", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_LAYERED_WIDTH", "hipDeviceAttributeMaxSurfaceCubemapLayered", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_WIDTH", "hipDeviceAttributeMaxSurfaceCubemap", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LAYERED_WIDTH", "hipDeviceAttributeMaxTexture1DLayered", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LINEAR_WIDTH", "hipDeviceAttributeMaxTexture1DLinear", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_MIPMAPPED_WIDTH", "hipDeviceAttributeMaxTexture1DMipmap", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_WIDTH", "hipDeviceAttributeMaxTexture1DWidth", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_HEIGHT", "hipDeviceAttributeMaxTexture2DLayered", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_WIDTH", "hipDeviceAttributeMaxTexture2DLayered", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_HEIGHT", "hipDeviceAttributeMaxTexture2DGather", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_WIDTH", "hipDeviceAttributeMaxTexture2DGather", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_HEIGHT", "hipDeviceAttributeMaxTexture2DHeight", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_HEIGHT", "hipDeviceAttributeMaxTexture2DLayered", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_WIDTH", "hipDeviceAttributeMaxTexture2DLayered", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_HEIGHT", "hipDeviceAttributeMaxTexture2DLinear", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_PITCH", "hipDeviceAttributeMaxTexture2DLinear", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_WIDTH", "hipDeviceAttributeMaxTexture2DLinear", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_MIPMAPPED_HEIGHT", "hipDeviceAttributeMaxTexture2DMipmap", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_MIPMAPPED_WIDTH", "hipDeviceAttributeMaxTexture2DMipmap", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_WIDTH", "hipDeviceAttributeMaxTexture2DWidth", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_DEPTH", "hipDeviceAttributeMaxTexture3DDepth", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_DEPTH_ALTERNATE", "hipDeviceAttributeMaxTexture3DAlt", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_HEIGHT", "hipDeviceAttributeMaxTexture3DHeight", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_HEIGHT_ALTERNATE", "hipDeviceAttributeMaxTexture3DAlt", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_WIDTH", "hipDeviceAttributeMaxTexture3DWidth", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_WIDTH_ALTERNATE", "hipDeviceAttributeMaxTexture3DAlt", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_LAYERED_WIDTH", "hipDeviceAttributeMaxTextureCubemapLayered", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_WIDTH", "hipDeviceAttributeMaxTextureCubemap", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAX_BLOCKS_PER_MULTIPROCESSOR", "hipDeviceAttributeMaxBlocksPerMultiprocessor", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_X", "hipDeviceAttributeMaxBlockDimX", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Y", "hipDeviceAttributeMaxBlockDimY", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Z", "hipDeviceAttributeMaxBlockDimZ", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_X", "hipDeviceAttributeMaxGridDimX", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_Y", "hipDeviceAttributeMaxGridDimY", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_Z", "hipDeviceAttributeMaxGridDimZ", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAX_PITCH", "hipDeviceAttributeMaxPitch", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_BLOCK", "hipDeviceAttributeMaxRegistersPerBlock", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR", "hipDeviceAttributeMaxRegistersPerMultiprocessor", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK", "hipDeviceAttributeMaxSharedMemoryPerBlock", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK_OPTIN", "hipDeviceAttributeSharedMemPerBlockOptin", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_MULTIPROCESSOR", "hipDeviceAttributeMaxSharedMemoryPerMultiprocessor", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_BLOCK", "hipDeviceAttributeMaxThreadsPerBlock", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_MULTIPROCESSOR", "hipDeviceAttributeMaxThreadsPerMultiProcessor", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MEMORY_CLOCK_RATE", "hipDeviceAttributeMemoryClockRate", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MEMORY_POOLS_SUPPORTED", "hipDeviceAttributeMemoryPoolsSupported", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MULTIPROCESSOR_COUNT", "hipDeviceAttributeMultiprocessorCount", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD", "hipDeviceAttributeIsMultiGpuBoard", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD_GROUP_ID", "hipDeviceAttributeMultiGpuBoardGroupId", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_PAGEABLE_MEMORY_ACCESS", "hipDeviceAttributePageableMemoryAccess", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_PAGEABLE_MEMORY_ACCESS_USES_HOST_PAGE_TABLES", "hipDeviceAttributePageableMemoryAccessUsesHostPageTables", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_PCI_BUS_ID", "hipDeviceAttributePciBusId", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_PCI_DEVICE_ID", "hipDeviceAttributePciDeviceId", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_PCI_DOMAIN_ID", "hipDeviceAttributePciDomainID", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_REGISTERS_PER_BLOCK", "hipDeviceAttributeMaxRegistersPerBlock", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_SHARED_MEMORY_PER_BLOCK", "hipDeviceAttributeMaxSharedMemoryPerBlock", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_SINGLE_TO_DOUBLE_PRECISION_PERF_RATIO", "hipDeviceAttributeSingleToDoublePrecisionPerfRatio", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_STREAM_PRIORITIES_SUPPORTED", "hipDeviceAttributeStreamPrioritiesSupported", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_SURFACE_ALIGNMENT", "hipDeviceAttributeSurfaceAlignment", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_TCC_DRIVER", "hipDeviceAttributeTccDriver", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_TEXTURE_ALIGNMENT", "hipDeviceAttributeTextureAlignment", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_TEXTURE_PITCH_ALIGNMENT", "hipDeviceAttributeTexturePitchAlignment", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_TOTAL_CONSTANT_MEMORY", "hipDeviceAttributeTotalConstantMemory", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_UNIFIED_ADDRESSING", "hipDeviceAttributeUnifiedAddressing", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_VIRTUAL_MEMORY_MANAGEMENT_SUPPORTED", "hipDeviceAttributeVirtualMemoryManagementSupported", "numeric_literal"); - subst("CU_DEVICE_ATTRIBUTE_WARP_SIZE", "hipDeviceAttributeWarpSize", "numeric_literal"); - subst("CU_DEVICE_P2P_ATTRIBUTE_ACCESS_ACCESS_SUPPORTED", "hipDevP2PAttrHipArrayAccessSupported", "numeric_literal"); - subst("CU_DEVICE_P2P_ATTRIBUTE_ACCESS_SUPPORTED", "hipDevP2PAttrAccessSupported", "numeric_literal"); - subst("CU_DEVICE_P2P_ATTRIBUTE_ARRAY_ACCESS_ACCESS_SUPPORTED", "hipDevP2PAttrHipArrayAccessSupported", "numeric_literal"); - subst("CU_DEVICE_P2P_ATTRIBUTE_CUDA_ARRAY_ACCESS_SUPPORTED", "hipDevP2PAttrHipArrayAccessSupported", "numeric_literal"); - subst("CU_DEVICE_P2P_ATTRIBUTE_NATIVE_ATOMIC_SUPPORTED", "hipDevP2PAttrNativeAtomicSupported", "numeric_literal"); - subst("CU_DEVICE_P2P_ATTRIBUTE_PERFORMANCE_RANK", "hipDevP2PAttrPerformanceRank", "numeric_literal"); - subst("CU_EVENT_BLOCKING_SYNC", "hipEventBlockingSync", "numeric_literal"); - subst("CU_EVENT_DEFAULT", "hipEventDefault", "numeric_literal"); - subst("CU_EVENT_DISABLE_TIMING", "hipEventDisableTiming", "numeric_literal"); - subst("CU_EVENT_INTERPROCESS", "hipEventInterprocess", "numeric_literal"); - subst("CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_RESOURCE", "hipExternalMemoryHandleTypeD3D11Resource", "numeric_literal"); - subst("CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_RESOURCE_KMT", "hipExternalMemoryHandleTypeD3D11ResourceKmt", "numeric_literal"); - subst("CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP", "hipExternalMemoryHandleTypeD3D12Heap", "numeric_literal"); - subst("CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE", "hipExternalMemoryHandleTypeD3D12Resource", "numeric_literal"); - subst("CU_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD", "hipExternalMemoryHandleTypeOpaqueFd", "numeric_literal"); - subst("CU_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32", "hipExternalMemoryHandleTypeOpaqueWin32", "numeric_literal"); - subst("CU_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT", "hipExternalMemoryHandleTypeOpaqueWin32Kmt", "numeric_literal"); - subst("CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE", "hipExternalSemaphoreHandleTypeD3D12Fence", "numeric_literal"); - subst("CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD", "hipExternalSemaphoreHandleTypeOpaqueFd", "numeric_literal"); - subst("CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32", "hipExternalSemaphoreHandleTypeOpaqueWin32", "numeric_literal"); - subst("CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT", "hipExternalSemaphoreHandleTypeOpaqueWin32Kmt", "numeric_literal"); - subst("CU_FLUSH_GPU_DIRECT_RDMA_WRITES_OPTION_HOST", "hipFlushGPUDirectRDMAWritesOptionHost", "numeric_literal"); - subst("CU_FLUSH_GPU_DIRECT_RDMA_WRITES_OPTION_MEMOPS", "hipFlushGPUDirectRDMAWritesOptionMemOps", "numeric_literal"); - subst("CU_FUNC_ATTRIBUTE_BINARY_VERSION", "HIP_FUNC_ATTRIBUTE_BINARY_VERSION", "numeric_literal"); - subst("CU_FUNC_ATTRIBUTE_CACHE_MODE_CA", "HIP_FUNC_ATTRIBUTE_CACHE_MODE_CA", "numeric_literal"); - subst("CU_FUNC_ATTRIBUTE_CONST_SIZE_BYTES", "HIP_FUNC_ATTRIBUTE_CONST_SIZE_BYTES", "numeric_literal"); - subst("CU_FUNC_ATTRIBUTE_LOCAL_SIZE_BYTES", "HIP_FUNC_ATTRIBUTE_LOCAL_SIZE_BYTES", "numeric_literal"); - subst("CU_FUNC_ATTRIBUTE_MAX", "HIP_FUNC_ATTRIBUTE_MAX", "numeric_literal"); - subst("CU_FUNC_ATTRIBUTE_MAX_DYNAMIC_SHARED_SIZE_BYTES", "HIP_FUNC_ATTRIBUTE_MAX_DYNAMIC_SHARED_SIZE_BYTES", "numeric_literal"); - subst("CU_FUNC_ATTRIBUTE_MAX_THREADS_PER_BLOCK", "HIP_FUNC_ATTRIBUTE_MAX_THREADS_PER_BLOCK", "numeric_literal"); - subst("CU_FUNC_ATTRIBUTE_NUM_REGS", "HIP_FUNC_ATTRIBUTE_NUM_REGS", "numeric_literal"); - subst("CU_FUNC_ATTRIBUTE_PREFERRED_SHARED_MEMORY_CARVEOUT", "HIP_FUNC_ATTRIBUTE_PREFERRED_SHARED_MEMORY_CARVEOUT", "numeric_literal"); - subst("CU_FUNC_ATTRIBUTE_PTX_VERSION", "HIP_FUNC_ATTRIBUTE_PTX_VERSION", "numeric_literal"); - subst("CU_FUNC_ATTRIBUTE_SHARED_SIZE_BYTES", "HIP_FUNC_ATTRIBUTE_SHARED_SIZE_BYTES", "numeric_literal"); - subst("CU_FUNC_CACHE_PREFER_EQUAL", "hipFuncCachePreferEqual", "numeric_literal"); - subst("CU_FUNC_CACHE_PREFER_L1", "hipFuncCachePreferL1", "numeric_literal"); - subst("CU_FUNC_CACHE_PREFER_NONE", "hipFuncCachePreferNone", "numeric_literal"); - subst("CU_FUNC_CACHE_PREFER_SHARED", "hipFuncCachePreferShared", "numeric_literal"); - subst("CU_GET_PROC_ADDRESS_SUCCESS", "HIP_GET_PROC_ADDRESS_SUCCESS", "numeric_literal"); - subst("CU_GET_PROC_ADDRESS_SYMBOL_NOT_FOUND", "HIP_GET_PROC_ADDRESS_SYMBOL_NOT_FOUND", "numeric_literal"); - subst("CU_GET_PROC_ADDRESS_VERSION_NOT_SUFFICIENT", "HIP_GET_PROC_ADDRESS_VERSION_NOT_SUFFICIENT", "numeric_literal"); - subst("CU_GL_DEVICE_LIST_ALL", "hipGLDeviceListAll", "numeric_literal"); - subst("CU_GL_DEVICE_LIST_CURRENT_FRAME", "hipGLDeviceListCurrentFrame", "numeric_literal"); - subst("CU_GL_DEVICE_LIST_NEXT_FRAME", "hipGLDeviceListNextFrame", "numeric_literal"); - subst("CU_GPU_DIRECT_RDMA_WRITES_ORDERING_ALL_DEVICES", "hipGPUDirectRDMAWritesOrderingAllDevices", "numeric_literal"); - subst("CU_GPU_DIRECT_RDMA_WRITES_ORDERING_NONE", "hipGPUDirectRDMAWritesOrderingNone", "numeric_literal"); - subst("CU_GPU_DIRECT_RDMA_WRITES_ORDERING_OWNER", "hipGPUDirectRDMAWritesOrderingOwner", "numeric_literal"); - subst("CU_GRAPHICS_REGISTER_FLAGS_NONE", "hipGraphicsRegisterFlagsNone", "numeric_literal"); - subst("CU_GRAPHICS_REGISTER_FLAGS_READ_ONLY", "hipGraphicsRegisterFlagsReadOnly", "numeric_literal"); - subst("CU_GRAPHICS_REGISTER_FLAGS_SURFACE_LDST", "hipGraphicsRegisterFlagsSurfaceLoadStore", "numeric_literal"); - subst("CU_GRAPHICS_REGISTER_FLAGS_TEXTURE_GATHER", "hipGraphicsRegisterFlagsTextureGather", "numeric_literal"); - subst("CU_GRAPHICS_REGISTER_FLAGS_WRITE_DISCARD", "hipGraphicsRegisterFlagsWriteDiscard", "numeric_literal"); - subst("CU_GRAPH_DEBUG_DOT_FLAGS_EVENT_NODE_PARAMS", "hipGraphDebugDotFlagsEventNodeParams", "numeric_literal"); - subst("CU_GRAPH_DEBUG_DOT_FLAGS_EXT_SEMAS_SIGNAL_NODE_PARAMS", "hipGraphDebugDotFlagsExtSemasSignalNodeParams", "numeric_literal"); - subst("CU_GRAPH_DEBUG_DOT_FLAGS_EXT_SEMAS_WAIT_NODE_PARAMS", "hipGraphDebugDotFlagsExtSemasWaitNodeParams", "numeric_literal"); - subst("CU_GRAPH_DEBUG_DOT_FLAGS_HANDLES", "hipGraphDebugDotFlagsHandles", "numeric_literal"); - subst("CU_GRAPH_DEBUG_DOT_FLAGS_HOST_NODE_PARAMS", "hipGraphDebugDotFlagsHostNodeParams", "numeric_literal"); - subst("CU_GRAPH_DEBUG_DOT_FLAGS_KERNEL_NODE_ATTRIBUTES", "hipGraphDebugDotFlagsKernelNodeAttributes", "numeric_literal"); - subst("CU_GRAPH_DEBUG_DOT_FLAGS_KERNEL_NODE_PARAMS", "hipGraphDebugDotFlagsKernelNodeParams", "numeric_literal"); - subst("CU_GRAPH_DEBUG_DOT_FLAGS_MEMCPY_NODE_PARAMS", "hipGraphDebugDotFlagsMemcpyNodeParams", "numeric_literal"); - subst("CU_GRAPH_DEBUG_DOT_FLAGS_MEMSET_NODE_PARAMS", "hipGraphDebugDotFlagsMemsetNodeParams", "numeric_literal"); - subst("CU_GRAPH_DEBUG_DOT_FLAGS_RUNTIME_TYPES", "hipGraphDebugDotFlagsRuntimeTypes", "numeric_literal"); - subst("CU_GRAPH_DEBUG_DOT_FLAGS_VERBOSE", "hipGraphDebugDotFlagsVerbose", "numeric_literal"); - subst("CU_GRAPH_DEPENDENCY_TYPE_DEFAULT", "hipGraphDependencyTypeDefault", "numeric_literal"); - subst("CU_GRAPH_DEPENDENCY_TYPE_PROGRAMMATIC", "hipGraphDependencyTypeProgrammatic", "numeric_literal"); - subst("CU_GRAPH_EXEC_UPDATE_ERROR", "hipGraphExecUpdateError", "numeric_literal"); - subst("CU_GRAPH_EXEC_UPDATE_ERROR_FUNCTION_CHANGED", "hipGraphExecUpdateErrorFunctionChanged", "numeric_literal"); - subst("CU_GRAPH_EXEC_UPDATE_ERROR_NODE_TYPE_CHANGED", "hipGraphExecUpdateErrorNodeTypeChanged", "numeric_literal"); - subst("CU_GRAPH_EXEC_UPDATE_ERROR_NOT_SUPPORTED", "hipGraphExecUpdateErrorNotSupported", "numeric_literal"); - subst("CU_GRAPH_EXEC_UPDATE_ERROR_PARAMETERS_CHANGED", "hipGraphExecUpdateErrorParametersChanged", "numeric_literal"); - subst("CU_GRAPH_EXEC_UPDATE_ERROR_TOPOLOGY_CHANGED", "hipGraphExecUpdateErrorTopologyChanged", "numeric_literal"); - subst("CU_GRAPH_EXEC_UPDATE_ERROR_UNSUPPORTED_FUNCTION_CHANGE", "hipGraphExecUpdateErrorUnsupportedFunctionChange", "numeric_literal"); - subst("CU_GRAPH_EXEC_UPDATE_SUCCESS", "hipGraphExecUpdateSuccess", "numeric_literal"); - subst("CU_GRAPH_MEM_ATTR_RESERVED_MEM_CURRENT", "hipGraphMemAttrReservedMemCurrent", "numeric_literal"); - subst("CU_GRAPH_MEM_ATTR_RESERVED_MEM_HIGH", "hipGraphMemAttrReservedMemHigh", "numeric_literal"); - subst("CU_GRAPH_MEM_ATTR_USED_MEM_CURRENT", "hipGraphMemAttrUsedMemCurrent", "numeric_literal"); - subst("CU_GRAPH_MEM_ATTR_USED_MEM_HIGH", "hipGraphMemAttrUsedMemHigh", "numeric_literal"); - subst("CU_GRAPH_NODE_TYPE_COUNT", "hipGraphNodeTypeCount", "numeric_literal"); - subst("CU_GRAPH_NODE_TYPE_EMPTY", "hipGraphNodeTypeEmpty", "numeric_literal"); - subst("CU_GRAPH_NODE_TYPE_EVENT_RECORD", "hipGraphNodeTypeEventRecord", "numeric_literal"); - subst("CU_GRAPH_NODE_TYPE_EXT_SEMAS_SIGNAL", "hipGraphNodeTypeExtSemaphoreSignal", "numeric_literal"); - subst("CU_GRAPH_NODE_TYPE_EXT_SEMAS_WAIT", "hipGraphNodeTypeExtSemaphoreWait", "numeric_literal"); - subst("CU_GRAPH_NODE_TYPE_GRAPH", "hipGraphNodeTypeGraph", "numeric_literal"); - subst("CU_GRAPH_NODE_TYPE_HOST", "hipGraphNodeTypeHost", "numeric_literal"); - subst("CU_GRAPH_NODE_TYPE_KERNEL", "hipGraphNodeTypeKernel", "numeric_literal"); - subst("CU_GRAPH_NODE_TYPE_MEMCPY", "hipGraphNodeTypeMemcpy", "numeric_literal"); - subst("CU_GRAPH_NODE_TYPE_MEMSET", "hipGraphNodeTypeMemset", "numeric_literal"); - subst("CU_GRAPH_NODE_TYPE_MEM_ALLOC", "hipGraphNodeTypeMemAlloc", "numeric_literal"); - subst("CU_GRAPH_NODE_TYPE_MEM_FREE", "hipGraphNodeTypeMemFree", "numeric_literal"); - subst("CU_GRAPH_NODE_TYPE_WAIT_EVENT", "hipGraphNodeTypeWaitEvent", "numeric_literal"); - subst("CU_GRAPH_USER_OBJECT_MOVE", "hipGraphUserObjectMove", "numeric_literal"); - subst("CU_IPC_MEM_LAZY_ENABLE_PEER_ACCESS", "hipIpcMemLazyEnablePeerAccess", "numeric_literal"); - subst("CU_JIT_CACHE_MODE", "HIPRTC_JIT_CACHE_MODE", "numeric_literal"); - subst("CU_JIT_ERROR_LOG_BUFFER", "HIPRTC_JIT_ERROR_LOG_BUFFER", "numeric_literal"); - subst("CU_JIT_ERROR_LOG_BUFFER_SIZE_BYTES", "HIPRTC_JIT_ERROR_LOG_BUFFER_SIZE_BYTES", "numeric_literal"); - subst("CU_JIT_FALLBACK_STRATEGY", "HIPRTC_JIT_FALLBACK_STRATEGY", "numeric_literal"); - subst("CU_JIT_FAST_COMPILE", "HIPRTC_JIT_FAST_COMPILE", "numeric_literal"); - subst("CU_JIT_GENERATE_DEBUG_INFO", "HIPRTC_JIT_GENERATE_DEBUG_INFO", "numeric_literal"); - subst("CU_JIT_GENERATE_LINE_INFO", "HIPRTC_JIT_GENERATE_LINE_INFO", "numeric_literal"); - subst("CU_JIT_INFO_LOG_BUFFER", "HIPRTC_JIT_INFO_LOG_BUFFER", "numeric_literal"); - subst("CU_JIT_INFO_LOG_BUFFER_SIZE_BYTES", "HIPRTC_JIT_INFO_LOG_BUFFER_SIZE_BYTES", "numeric_literal"); - subst("CU_JIT_INPUT_CUBIN", "HIPRTC_JIT_INPUT_CUBIN", "numeric_literal"); - subst("CU_JIT_INPUT_FATBINARY", "HIPRTC_JIT_INPUT_FATBINARY", "numeric_literal"); - subst("CU_JIT_INPUT_LIBRARY", "HIPRTC_JIT_INPUT_LIBRARY", "numeric_literal"); - subst("CU_JIT_INPUT_NVVM", "HIPRTC_JIT_INPUT_NVVM", "numeric_literal"); - subst("CU_JIT_INPUT_OBJECT", "HIPRTC_JIT_INPUT_OBJECT", "numeric_literal"); - subst("CU_JIT_INPUT_PTX", "HIPRTC_JIT_INPUT_PTX", "numeric_literal"); - subst("CU_JIT_LOG_VERBOSE", "HIPRTC_JIT_LOG_VERBOSE", "numeric_literal"); - subst("CU_JIT_MAX_REGISTERS", "HIPRTC_JIT_MAX_REGISTERS", "numeric_literal"); - subst("CU_JIT_NEW_SM3X_OPT", "HIPRTC_JIT_NEW_SM3X_OPT", "numeric_literal"); - subst("CU_JIT_NUM_INPUT_TYPES", "HIPRTC_JIT_NUM_LEGACY_INPUT_TYPES", "numeric_literal"); - subst("CU_JIT_NUM_OPTIONS", "HIPRTC_JIT_NUM_OPTIONS", "numeric_literal"); - subst("CU_JIT_OPTIMIZATION_LEVEL", "HIPRTC_JIT_OPTIMIZATION_LEVEL", "numeric_literal"); - subst("CU_JIT_TARGET", "HIPRTC_JIT_TARGET", "numeric_literal"); - subst("CU_JIT_TARGET_FROM_CUCONTEXT", "HIPRTC_JIT_TARGET_FROM_HIPCONTEXT", "numeric_literal"); - subst("CU_JIT_THREADS_PER_BLOCK", "HIPRTC_JIT_THREADS_PER_BLOCK", "numeric_literal"); - subst("CU_JIT_WALL_TIME", "HIPRTC_JIT_WALL_TIME", "numeric_literal"); - subst("CU_KERNEL_NODE_ATTRIBUTE_ACCESS_POLICY_WINDOW", "hipKernelNodeAttributeAccessPolicyWindow", "numeric_literal"); - subst("CU_KERNEL_NODE_ATTRIBUTE_COOPERATIVE", "hipKernelNodeAttributeCooperative", "numeric_literal"); - subst("CU_KERNEL_NODE_ATTRIBUTE_PRIORITY", "hipKernelNodeAttributePriority", "numeric_literal"); - subst("CU_LAUNCH_ATTRIBUTE_ACCESS_POLICY_WINDOW", "hipLaunchAttributeAccessPolicyWindow", "numeric_literal"); - subst("CU_LAUNCH_ATTRIBUTE_COOPERATIVE", "hipLaunchAttributeCooperative", "numeric_literal"); - subst("CU_LAUNCH_ATTRIBUTE_PRIORITY", "hipLaunchAttributePriority", "numeric_literal"); - subst("CU_LIMIT_MALLOC_HEAP_SIZE", "hipLimitMallocHeapSize", "numeric_literal"); - subst("CU_LIMIT_PRINTF_FIFO_SIZE", "hipLimitPrintfFifoSize", "numeric_literal"); - subst("CU_LIMIT_STACK_SIZE", "hipLimitStackSize", "numeric_literal"); - subst("CU_MEMORYTYPE_ARRAY", "hipMemoryTypeArray", "numeric_literal"); - subst("CU_MEMORYTYPE_DEVICE", "hipMemoryTypeDevice", "numeric_literal"); - subst("CU_MEMORYTYPE_HOST", "hipMemoryTypeHost", "numeric_literal"); - subst("CU_MEMORYTYPE_UNIFIED", "hipMemoryTypeUnified", "numeric_literal"); - subst("CU_MEMPOOL_ATTR_RELEASE_THRESHOLD", "hipMemPoolAttrReleaseThreshold", "numeric_literal"); - subst("CU_MEMPOOL_ATTR_RESERVED_MEM_CURRENT", "hipMemPoolAttrReservedMemCurrent", "numeric_literal"); - subst("CU_MEMPOOL_ATTR_RESERVED_MEM_HIGH", "hipMemPoolAttrReservedMemHigh", "numeric_literal"); - subst("CU_MEMPOOL_ATTR_REUSE_ALLOW_INTERNAL_DEPENDENCIES", "hipMemPoolReuseAllowInternalDependencies", "numeric_literal"); - subst("CU_MEMPOOL_ATTR_REUSE_ALLOW_OPPORTUNISTIC", "hipMemPoolReuseAllowOpportunistic", "numeric_literal"); - subst("CU_MEMPOOL_ATTR_REUSE_FOLLOW_EVENT_DEPENDENCIES", "hipMemPoolReuseFollowEventDependencies", "numeric_literal"); - subst("CU_MEMPOOL_ATTR_USED_MEM_CURRENT", "hipMemPoolAttrUsedMemCurrent", "numeric_literal"); - subst("CU_MEMPOOL_ATTR_USED_MEM_HIGH", "hipMemPoolAttrUsedMemHigh", "numeric_literal"); - subst("CU_MEM_ACCESS_FLAGS_PROT_NONE", "hipMemAccessFlagsProtNone", "numeric_literal"); - subst("CU_MEM_ACCESS_FLAGS_PROT_READ", "hipMemAccessFlagsProtRead", "numeric_literal"); - subst("CU_MEM_ACCESS_FLAGS_PROT_READWRITE", "hipMemAccessFlagsProtReadWrite", "numeric_literal"); - subst("CU_MEM_ADVISE_SET_ACCESSED_BY", "hipMemAdviseSetAccessedBy", "numeric_literal"); - subst("CU_MEM_ADVISE_SET_PREFERRED_LOCATION", "hipMemAdviseSetPreferredLocation", "numeric_literal"); - subst("CU_MEM_ADVISE_SET_READ_MOSTLY", "hipMemAdviseSetReadMostly", "numeric_literal"); - subst("CU_MEM_ADVISE_UNSET_ACCESSED_BY", "hipMemAdviseUnsetAccessedBy", "numeric_literal"); - subst("CU_MEM_ADVISE_UNSET_PREFERRED_LOCATION", "hipMemAdviseUnsetPreferredLocation", "numeric_literal"); - subst("CU_MEM_ADVISE_UNSET_READ_MOSTLY", "hipMemAdviseUnsetReadMostly", "numeric_literal"); - subst("CU_MEM_ALLOCATION_TYPE_INVALID", "hipMemAllocationTypeInvalid", "numeric_literal"); - subst("CU_MEM_ALLOCATION_TYPE_MAX", "hipMemAllocationTypeMax", "numeric_literal"); - subst("CU_MEM_ALLOCATION_TYPE_PINNED", "hipMemAllocationTypePinned", "numeric_literal"); - subst("CU_MEM_ALLOC_GRANULARITY_MINIMUM", "hipMemAllocationGranularityMinimum", "numeric_literal"); - subst("CU_MEM_ALLOC_GRANULARITY_RECOMMENDED", "hipMemAllocationGranularityRecommended", "numeric_literal"); - subst("CU_MEM_ATTACH_GLOBAL", "hipMemAttachGlobal", "numeric_literal"); - subst("CU_MEM_ATTACH_HOST", "hipMemAttachHost", "numeric_literal"); - subst("CU_MEM_ATTACH_SINGLE", "hipMemAttachSingle", "numeric_literal"); - subst("CU_MEM_HANDLE_TYPE_GENERIC", "hipMemHandleTypeGeneric", "numeric_literal"); - subst("CU_MEM_HANDLE_TYPE_NONE", "hipMemHandleTypeNone", "numeric_literal"); - subst("CU_MEM_HANDLE_TYPE_POSIX_FILE_DESCRIPTOR", "hipMemHandleTypePosixFileDescriptor", "numeric_literal"); - subst("CU_MEM_HANDLE_TYPE_WIN32", "hipMemHandleTypeWin32", "numeric_literal"); - subst("CU_MEM_HANDLE_TYPE_WIN32_KMT", "hipMemHandleTypeWin32Kmt", "numeric_literal"); - subst("CU_MEM_LOCATION_TYPE_DEVICE", "hipMemLocationTypeDevice", "numeric_literal"); - subst("CU_MEM_LOCATION_TYPE_INVALID", "hipMemLocationTypeInvalid", "numeric_literal"); - subst("CU_MEM_OPERATION_TYPE_MAP", "hipMemOperationTypeMap", "numeric_literal"); - subst("CU_MEM_OPERATION_TYPE_UNMAP", "hipMemOperationTypeUnmap", "numeric_literal"); - subst("CU_MEM_RANGE_ATTRIBUTE_ACCESSED_BY", "hipMemRangeAttributeAccessedBy", "numeric_literal"); - subst("CU_MEM_RANGE_ATTRIBUTE_LAST_PREFETCH_LOCATION", "hipMemRangeAttributeLastPrefetchLocation", "numeric_literal"); - subst("CU_MEM_RANGE_ATTRIBUTE_PREFERRED_LOCATION", "hipMemRangeAttributePreferredLocation", "numeric_literal"); - subst("CU_MEM_RANGE_ATTRIBUTE_READ_MOSTLY", "hipMemRangeAttributeReadMostly", "numeric_literal"); - subst("CU_OCCUPANCY_DEFAULT", "hipOccupancyDefault", "numeric_literal"); - subst("CU_OCCUPANCY_DISABLE_CACHING_OVERRIDE", "hipOccupancyDisableCachingOverride", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_ACCESS_FLAGS", "HIP_POINTER_ATTRIBUTE_ACCESS_FLAGS", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_ALLOWED_HANDLE_TYPES", "HIP_POINTER_ATTRIBUTE_ALLOWED_HANDLE_TYPES", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_BUFFER_ID", "HIP_POINTER_ATTRIBUTE_BUFFER_ID", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_CONTEXT", "HIP_POINTER_ATTRIBUTE_CONTEXT", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_DEVICE_ORDINAL", "HIP_POINTER_ATTRIBUTE_DEVICE_ORDINAL", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_DEVICE_POINTER", "HIP_POINTER_ATTRIBUTE_DEVICE_POINTER", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_HOST_POINTER", "HIP_POINTER_ATTRIBUTE_HOST_POINTER", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_IS_GPU_DIRECT_RDMA_CAPABLE", "HIP_POINTER_ATTRIBUTE_IS_GPU_DIRECT_RDMA_CAPABLE", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_IS_LEGACY_CUDA_IPC_CAPABLE", "HIP_POINTER_ATTRIBUTE_IS_LEGACY_HIP_IPC_CAPABLE", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_IS_MANAGED", "HIP_POINTER_ATTRIBUTE_IS_MANAGED", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_MAPPED", "HIP_POINTER_ATTRIBUTE_MAPPED", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_MEMORY_TYPE", "HIP_POINTER_ATTRIBUTE_MEMORY_TYPE", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_MEMPOOL_HANDLE", "HIP_POINTER_ATTRIBUTE_MEMPOOL_HANDLE", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_P2P_TOKENS", "HIP_POINTER_ATTRIBUTE_P2P_TOKENS", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_RANGE_SIZE", "HIP_POINTER_ATTRIBUTE_RANGE_SIZE", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_RANGE_START_ADDR", "HIP_POINTER_ATTRIBUTE_RANGE_START_ADDR", "numeric_literal"); - subst("CU_POINTER_ATTRIBUTE_SYNC_MEMOPS", "HIP_POINTER_ATTRIBUTE_SYNC_MEMOPS", "numeric_literal"); - subst("CU_RESOURCE_TYPE_ARRAY", "HIP_RESOURCE_TYPE_ARRAY", "numeric_literal"); - subst("CU_RESOURCE_TYPE_LINEAR", "HIP_RESOURCE_TYPE_LINEAR", "numeric_literal"); - subst("CU_RESOURCE_TYPE_MIPMAPPED_ARRAY", "HIP_RESOURCE_TYPE_MIPMAPPED_ARRAY", "numeric_literal"); - subst("CU_RESOURCE_TYPE_PITCH2D", "HIP_RESOURCE_TYPE_PITCH2D", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_FLOAT_1X16", "HIP_RES_VIEW_FORMAT_FLOAT_1X16", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_FLOAT_1X32", "HIP_RES_VIEW_FORMAT_FLOAT_1X32", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_FLOAT_2X16", "HIP_RES_VIEW_FORMAT_FLOAT_2X16", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_FLOAT_2X32", "HIP_RES_VIEW_FORMAT_FLOAT_2X32", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_FLOAT_4X16", "HIP_RES_VIEW_FORMAT_FLOAT_4X16", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_FLOAT_4X32", "HIP_RES_VIEW_FORMAT_FLOAT_4X32", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_NONE", "HIP_RES_VIEW_FORMAT_NONE", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_SIGNED_BC4", "HIP_RES_VIEW_FORMAT_SIGNED_BC4", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_SIGNED_BC5", "HIP_RES_VIEW_FORMAT_SIGNED_BC5", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_SIGNED_BC6H", "HIP_RES_VIEW_FORMAT_SIGNED_BC6H", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_SINT_1X16", "HIP_RES_VIEW_FORMAT_SINT_1X16", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_SINT_1X32", "HIP_RES_VIEW_FORMAT_SINT_1X32", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_SINT_1X8", "HIP_RES_VIEW_FORMAT_SINT_1X8", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_SINT_2X16", "HIP_RES_VIEW_FORMAT_SINT_2X16", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_SINT_2X32", "HIP_RES_VIEW_FORMAT_SINT_2X32", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_SINT_2X8", "HIP_RES_VIEW_FORMAT_SINT_2X8", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_SINT_4X16", "HIP_RES_VIEW_FORMAT_SINT_4X16", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_SINT_4X32", "HIP_RES_VIEW_FORMAT_SINT_4X32", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_SINT_4X8", "HIP_RES_VIEW_FORMAT_SINT_4X8", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_UINT_1X16", "HIP_RES_VIEW_FORMAT_UINT_1X16", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_UINT_1X32", "HIP_RES_VIEW_FORMAT_UINT_1X32", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_UINT_1X8", "HIP_RES_VIEW_FORMAT_UINT_1X8", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_UINT_2X16", "HIP_RES_VIEW_FORMAT_UINT_2X16", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_UINT_2X32", "HIP_RES_VIEW_FORMAT_UINT_2X32", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_UINT_2X8", "HIP_RES_VIEW_FORMAT_UINT_2X8", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_UINT_4X16", "HIP_RES_VIEW_FORMAT_UINT_4X16", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_UINT_4X32", "HIP_RES_VIEW_FORMAT_UINT_4X32", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_UINT_4X8", "HIP_RES_VIEW_FORMAT_UINT_4X8", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_UNSIGNED_BC1", "HIP_RES_VIEW_FORMAT_UNSIGNED_BC1", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_UNSIGNED_BC2", "HIP_RES_VIEW_FORMAT_UNSIGNED_BC2", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_UNSIGNED_BC3", "HIP_RES_VIEW_FORMAT_UNSIGNED_BC3", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_UNSIGNED_BC4", "HIP_RES_VIEW_FORMAT_UNSIGNED_BC4", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_UNSIGNED_BC5", "HIP_RES_VIEW_FORMAT_UNSIGNED_BC5", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_UNSIGNED_BC6H", "HIP_RES_VIEW_FORMAT_UNSIGNED_BC6H", "numeric_literal"); - subst("CU_RES_VIEW_FORMAT_UNSIGNED_BC7", "HIP_RES_VIEW_FORMAT_UNSIGNED_BC7", "numeric_literal"); - subst("CU_SHARED_MEM_CONFIG_DEFAULT_BANK_SIZE", "hipSharedMemBankSizeDefault", "numeric_literal"); - subst("CU_SHARED_MEM_CONFIG_EIGHT_BYTE_BANK_SIZE", "hipSharedMemBankSizeEightByte", "numeric_literal"); - subst("CU_SHARED_MEM_CONFIG_FOUR_BYTE_BANK_SIZE", "hipSharedMemBankSizeFourByte", "numeric_literal"); - subst("CU_STREAM_ADD_CAPTURE_DEPENDENCIES", "hipStreamAddCaptureDependencies", "numeric_literal"); - subst("CU_STREAM_CAPTURE_MODE_GLOBAL", "hipStreamCaptureModeGlobal", "numeric_literal"); - subst("CU_STREAM_CAPTURE_MODE_RELAXED", "hipStreamCaptureModeRelaxed", "numeric_literal"); - subst("CU_STREAM_CAPTURE_MODE_THREAD_LOCAL", "hipStreamCaptureModeThreadLocal", "numeric_literal"); - subst("CU_STREAM_CAPTURE_STATUS_ACTIVE", "hipStreamCaptureStatusActive", "numeric_literal"); - subst("CU_STREAM_CAPTURE_STATUS_INVALIDATED", "hipStreamCaptureStatusInvalidated", "numeric_literal"); - subst("CU_STREAM_CAPTURE_STATUS_NONE", "hipStreamCaptureStatusNone", "numeric_literal"); - subst("CU_STREAM_DEFAULT", "hipStreamDefault", "numeric_literal"); - subst("CU_STREAM_NON_BLOCKING", "hipStreamNonBlocking", "numeric_literal"); - subst("CU_STREAM_SET_CAPTURE_DEPENDENCIES", "hipStreamSetCaptureDependencies", "numeric_literal"); - subst("CU_STREAM_WAIT_VALUE_AND", "hipStreamWaitValueAnd", "numeric_literal"); - subst("CU_STREAM_WAIT_VALUE_EQ", "hipStreamWaitValueEq", "numeric_literal"); - subst("CU_STREAM_WAIT_VALUE_GEQ", "hipStreamWaitValueGte", "numeric_literal"); - subst("CU_STREAM_WAIT_VALUE_NOR", "hipStreamWaitValueNor", "numeric_literal"); - subst("CU_TR_ADDRESS_MODE_BORDER", "HIP_TR_ADDRESS_MODE_BORDER", "numeric_literal"); - subst("CU_TR_ADDRESS_MODE_CLAMP", "HIP_TR_ADDRESS_MODE_CLAMP", "numeric_literal"); - subst("CU_TR_ADDRESS_MODE_MIRROR", "HIP_TR_ADDRESS_MODE_MIRROR", "numeric_literal"); - subst("CU_TR_ADDRESS_MODE_WRAP", "HIP_TR_ADDRESS_MODE_WRAP", "numeric_literal"); - subst("CU_TR_FILTER_MODE_LINEAR", "HIP_TR_FILTER_MODE_LINEAR", "numeric_literal"); - subst("CU_TR_FILTER_MODE_POINT", "HIP_TR_FILTER_MODE_POINT", "numeric_literal"); - subst("CU_USER_OBJECT_NO_DESTRUCTOR_SYNC", "hipUserObjectNoDestructorSync", "numeric_literal"); - subst("NVRTC_ERROR_BUILTIN_OPERATION_FAILURE", "HIPRTC_ERROR_BUILTIN_OPERATION_FAILURE", "numeric_literal"); - subst("NVRTC_ERROR_COMPILATION", "HIPRTC_ERROR_COMPILATION", "numeric_literal"); - subst("NVRTC_ERROR_INTERNAL_ERROR", "HIPRTC_ERROR_INTERNAL_ERROR", "numeric_literal"); - subst("NVRTC_ERROR_INVALID_INPUT", "HIPRTC_ERROR_INVALID_INPUT", "numeric_literal"); - subst("NVRTC_ERROR_INVALID_OPTION", "HIPRTC_ERROR_INVALID_OPTION", "numeric_literal"); - subst("NVRTC_ERROR_INVALID_PROGRAM", "HIPRTC_ERROR_INVALID_PROGRAM", "numeric_literal"); - subst("NVRTC_ERROR_NAME_EXPRESSION_NOT_VALID", "HIPRTC_ERROR_NAME_EXPRESSION_NOT_VALID", "numeric_literal"); - subst("NVRTC_ERROR_NO_LOWERED_NAMES_BEFORE_COMPILATION", "HIPRTC_ERROR_NO_LOWERED_NAMES_BEFORE_COMPILATION", "numeric_literal"); - subst("NVRTC_ERROR_NO_NAME_EXPRESSIONS_AFTER_COMPILATION", "HIPRTC_ERROR_NO_NAME_EXPRESSIONS_AFTER_COMPILATION", "numeric_literal"); - subst("NVRTC_ERROR_OUT_OF_MEMORY", "HIPRTC_ERROR_OUT_OF_MEMORY", "numeric_literal"); - subst("NVRTC_ERROR_PROGRAM_CREATION_FAILURE", "HIPRTC_ERROR_PROGRAM_CREATION_FAILURE", "numeric_literal"); - subst("NVRTC_SUCCESS", "HIPRTC_SUCCESS", "numeric_literal"); - subst("cublasLtOrder_t", "hipblasLtOrder_t", "numeric_literal"); - subst("cudaAccessPropertyNormal", "hipAccessPropertyNormal", "numeric_literal"); - subst("cudaAccessPropertyPersisting", "hipAccessPropertyPersisting", "numeric_literal"); - subst("cudaAccessPropertyStreaming", "hipAccessPropertyStreaming", "numeric_literal"); - subst("cudaAddressModeBorder", "hipAddressModeBorder", "numeric_literal"); - subst("cudaAddressModeClamp", "hipAddressModeClamp", "numeric_literal"); - subst("cudaAddressModeMirror", "hipAddressModeMirror", "numeric_literal"); - subst("cudaAddressModeWrap", "hipAddressModeWrap", "numeric_literal"); - subst("cudaBoundaryModeClamp", "hipBoundaryModeClamp", "numeric_literal"); - subst("cudaBoundaryModeTrap", "hipBoundaryModeTrap", "numeric_literal"); - subst("cudaBoundaryModeZero", "hipBoundaryModeZero", "numeric_literal"); - subst("cudaChannelFormatKindFloat", "hipChannelFormatKindFloat", "numeric_literal"); - subst("cudaChannelFormatKindNone", "hipChannelFormatKindNone", "numeric_literal"); - subst("cudaChannelFormatKindSigned", "hipChannelFormatKindSigned", "numeric_literal"); - subst("cudaChannelFormatKindUnsigned", "hipChannelFormatKindUnsigned", "numeric_literal"); - subst("cudaComputeModeDefault", "hipComputeModeDefault", "numeric_literal"); - subst("cudaComputeModeExclusive", "hipComputeModeExclusive", "numeric_literal"); - subst("cudaComputeModeExclusiveProcess", "hipComputeModeExclusiveProcess", "numeric_literal"); - subst("cudaComputeModeProhibited", "hipComputeModeProhibited", "numeric_literal"); - subst("cudaDevAttrAsyncEngineCount", "hipDeviceAttributeAsyncEngineCount", "numeric_literal"); - subst("cudaDevAttrCanMapHostMemory", "hipDeviceAttributeCanMapHostMemory", "numeric_literal"); - subst("cudaDevAttrCanUseHostPointerForRegisteredMem", "hipDeviceAttributeCanUseHostPointerForRegisteredMem", "numeric_literal"); - subst("cudaDevAttrClockRate", "hipDeviceAttributeClockRate", "numeric_literal"); - subst("cudaDevAttrComputeCapabilityMajor", "hipDeviceAttributeComputeCapabilityMajor", "numeric_literal"); - subst("cudaDevAttrComputeCapabilityMinor", "hipDeviceAttributeComputeCapabilityMinor", "numeric_literal"); - subst("cudaDevAttrComputeMode", "hipDeviceAttributeComputeMode", "numeric_literal"); - subst("cudaDevAttrComputePreemptionSupported", "hipDeviceAttributeComputePreemptionSupported", "numeric_literal"); - subst("cudaDevAttrConcurrentKernels", "hipDeviceAttributeConcurrentKernels", "numeric_literal"); - subst("cudaDevAttrConcurrentManagedAccess", "hipDeviceAttributeConcurrentManagedAccess", "numeric_literal"); - subst("cudaDevAttrCooperativeLaunch", "hipDeviceAttributeCooperativeLaunch", "numeric_literal"); - subst("cudaDevAttrCooperativeMultiDeviceLaunch", "hipDeviceAttributeCooperativeMultiDeviceLaunch", "numeric_literal"); - subst("cudaDevAttrDirectManagedMemAccessFromHost", "hipDeviceAttributeDirectManagedMemAccessFromHost", "numeric_literal"); - subst("cudaDevAttrEccEnabled", "hipDeviceAttributeEccEnabled", "numeric_literal"); - subst("cudaDevAttrGlobalL1CacheSupported", "hipDeviceAttributeGlobalL1CacheSupported", "numeric_literal"); - subst("cudaDevAttrGlobalMemoryBusWidth", "hipDeviceAttributeMemoryBusWidth", "numeric_literal"); - subst("cudaDevAttrGpuOverlap", "hipDeviceAttributeAsyncEngineCount", "numeric_literal"); - subst("cudaDevAttrHostNativeAtomicSupported", "hipDeviceAttributeHostNativeAtomicSupported", "numeric_literal"); - subst("cudaDevAttrHostRegisterSupported", "hipDeviceAttributeHostRegisterSupported", "numeric_literal"); - subst("cudaDevAttrIntegrated", "hipDeviceAttributeIntegrated", "numeric_literal"); - subst("cudaDevAttrIsMultiGpuBoard", "hipDeviceAttributeIsMultiGpuBoard", "numeric_literal"); - subst("cudaDevAttrKernelExecTimeout", "hipDeviceAttributeKernelExecTimeout", "numeric_literal"); - subst("cudaDevAttrL2CacheSize", "hipDeviceAttributeL2CacheSize", "numeric_literal"); - subst("cudaDevAttrLocalL1CacheSupported", "hipDeviceAttributeLocalL1CacheSupported", "numeric_literal"); - subst("cudaDevAttrManagedMemory", "hipDeviceAttributeManagedMemory", "numeric_literal"); - subst("cudaDevAttrMaxBlockDimX", "hipDeviceAttributeMaxBlockDimX", "numeric_literal"); - subst("cudaDevAttrMaxBlockDimY", "hipDeviceAttributeMaxBlockDimY", "numeric_literal"); - subst("cudaDevAttrMaxBlockDimZ", "hipDeviceAttributeMaxBlockDimZ", "numeric_literal"); - subst("cudaDevAttrMaxBlocksPerMultiprocessor", "hipDeviceAttributeMaxBlocksPerMultiprocessor", "numeric_literal"); - subst("cudaDevAttrMaxGridDimX", "hipDeviceAttributeMaxGridDimX", "numeric_literal"); - subst("cudaDevAttrMaxGridDimY", "hipDeviceAttributeMaxGridDimY", "numeric_literal"); - subst("cudaDevAttrMaxGridDimZ", "hipDeviceAttributeMaxGridDimZ", "numeric_literal"); - subst("cudaDevAttrMaxPitch", "hipDeviceAttributeMaxPitch", "numeric_literal"); - subst("cudaDevAttrMaxRegistersPerBlock", "hipDeviceAttributeMaxRegistersPerBlock", "numeric_literal"); - subst("cudaDevAttrMaxRegistersPerMultiprocessor", "hipDeviceAttributeMaxRegistersPerMultiprocessor", "numeric_literal"); - subst("cudaDevAttrMaxSharedMemoryPerBlock", "hipDeviceAttributeMaxSharedMemoryPerBlock", "numeric_literal"); - subst("cudaDevAttrMaxSharedMemoryPerBlockOptin", "hipDeviceAttributeSharedMemPerBlockOptin", "numeric_literal"); - subst("cudaDevAttrMaxSharedMemoryPerMultiprocessor", "hipDeviceAttributeMaxSharedMemoryPerMultiprocessor", "numeric_literal"); - subst("cudaDevAttrMaxSurface1DLayeredWidth", "hipDeviceAttributeMaxSurface1DLayered", "numeric_literal"); - subst("cudaDevAttrMaxSurface1DWidth", "hipDeviceAttributeMaxSurface1D", "numeric_literal"); - subst("cudaDevAttrMaxSurface2DHeight", "hipDeviceAttributeMaxSurface2D", "numeric_literal"); - subst("cudaDevAttrMaxSurface2DLayeredHeight", "hipDeviceAttributeMaxSurface2DLayered", "numeric_literal"); - subst("cudaDevAttrMaxSurface2DLayeredWidth", "hipDeviceAttributeMaxSurface2DLayered", "numeric_literal"); - subst("cudaDevAttrMaxSurface2DWidth", "hipDeviceAttributeMaxSurface2D", "numeric_literal"); - subst("cudaDevAttrMaxSurface3DDepth", "hipDeviceAttributeMaxSurface3D", "numeric_literal"); - subst("cudaDevAttrMaxSurface3DHeight", "hipDeviceAttributeMaxSurface3D", "numeric_literal"); - subst("cudaDevAttrMaxSurface3DWidth", "hipDeviceAttributeMaxSurface3D", "numeric_literal"); - subst("cudaDevAttrMaxSurfaceCubemapLayeredWidth", "hipDeviceAttributeMaxSurfaceCubemapLayered", "numeric_literal"); - subst("cudaDevAttrMaxSurfaceCubemapWidth", "hipDeviceAttributeMaxSurfaceCubemap", "numeric_literal"); - subst("cudaDevAttrMaxTexture1DLayeredWidth", "hipDeviceAttributeMaxTexture1DLayered", "numeric_literal"); - subst("cudaDevAttrMaxTexture1DLinearWidth", "hipDeviceAttributeMaxTexture1DLinear", "numeric_literal"); - subst("cudaDevAttrMaxTexture1DMipmappedWidth", "hipDeviceAttributeMaxTexture1DMipmap", "numeric_literal"); - subst("cudaDevAttrMaxTexture1DWidth", "hipDeviceAttributeMaxTexture1DWidth", "numeric_literal"); - subst("cudaDevAttrMaxTexture2DGatherHeight", "hipDeviceAttributeMaxTexture2DGather", "numeric_literal"); - subst("cudaDevAttrMaxTexture2DGatherWidth", "hipDeviceAttributeMaxTexture2DGather", "numeric_literal"); - subst("cudaDevAttrMaxTexture2DHeight", "hipDeviceAttributeMaxTexture2DHeight", "numeric_literal"); - subst("cudaDevAttrMaxTexture2DLayeredHeight", "hipDeviceAttributeMaxTexture2DLayered", "numeric_literal"); - subst("cudaDevAttrMaxTexture2DLayeredWidth", "hipDeviceAttributeMaxTexture2DLayered", "numeric_literal"); - subst("cudaDevAttrMaxTexture2DLinearHeight", "hipDeviceAttributeMaxTexture2DLinear", "numeric_literal"); - subst("cudaDevAttrMaxTexture2DLinearPitch", "hipDeviceAttributeMaxTexture2DLinear", "numeric_literal"); - subst("cudaDevAttrMaxTexture2DLinearWidth", "hipDeviceAttributeMaxTexture2DLinear", "numeric_literal"); - subst("cudaDevAttrMaxTexture2DMipmappedHeight", "hipDeviceAttributeMaxTexture2DMipmap", "numeric_literal"); - subst("cudaDevAttrMaxTexture2DMipmappedWidth", "hipDeviceAttributeMaxTexture2DMipmap", "numeric_literal"); - subst("cudaDevAttrMaxTexture2DWidth", "hipDeviceAttributeMaxTexture2DWidth", "numeric_literal"); - subst("cudaDevAttrMaxTexture3DDepth", "hipDeviceAttributeMaxTexture3DDepth", "numeric_literal"); - subst("cudaDevAttrMaxTexture3DDepthAlt", "hipDeviceAttributeMaxTexture3DAlt", "numeric_literal"); - subst("cudaDevAttrMaxTexture3DHeight", "hipDeviceAttributeMaxTexture3DHeight", "numeric_literal"); - subst("cudaDevAttrMaxTexture3DHeightAlt", "hipDeviceAttributeMaxTexture3DAlt", "numeric_literal"); - subst("cudaDevAttrMaxTexture3DWidth", "hipDeviceAttributeMaxTexture3DWidth", "numeric_literal"); - subst("cudaDevAttrMaxTexture3DWidthAlt", "hipDeviceAttributeMaxTexture3DAlt", "numeric_literal"); - subst("cudaDevAttrMaxTextureCubemapLayeredWidth", "hipDeviceAttributeMaxTextureCubemapLayered", "numeric_literal"); - subst("cudaDevAttrMaxTextureCubemapWidth", "hipDeviceAttributeMaxTextureCubemap", "numeric_literal"); - subst("cudaDevAttrMaxThreadsPerBlock", "hipDeviceAttributeMaxThreadsPerBlock", "numeric_literal"); - subst("cudaDevAttrMaxThreadsPerMultiProcessor", "hipDeviceAttributeMaxThreadsPerMultiProcessor", "numeric_literal"); - subst("cudaDevAttrMemoryClockRate", "hipDeviceAttributeMemoryClockRate", "numeric_literal"); - subst("cudaDevAttrMemoryPoolsSupported", "hipDeviceAttributeMemoryPoolsSupported", "numeric_literal"); - subst("cudaDevAttrMultiGpuBoardGroupID", "hipDeviceAttributeMultiGpuBoardGroupID", "numeric_literal"); - subst("cudaDevAttrMultiProcessorCount", "hipDeviceAttributeMultiprocessorCount", "numeric_literal"); - subst("cudaDevAttrPageableMemoryAccess", "hipDeviceAttributePageableMemoryAccess", "numeric_literal"); - subst("cudaDevAttrPageableMemoryAccessUsesHostPageTables", "hipDeviceAttributePageableMemoryAccessUsesHostPageTables", "numeric_literal"); - subst("cudaDevAttrPciBusId", "hipDeviceAttributePciBusId", "numeric_literal"); - subst("cudaDevAttrPciDeviceId", "hipDeviceAttributePciDeviceId", "numeric_literal"); - subst("cudaDevAttrPciDomainId", "hipDeviceAttributePciDomainID", "numeric_literal"); - subst("cudaDevAttrReserved94", "hipDeviceAttributeCanUseStreamWaitValue", "numeric_literal"); - subst("cudaDevAttrSingleToDoublePrecisionPerfRatio", "hipDeviceAttributeSingleToDoublePrecisionPerfRatio", "numeric_literal"); - subst("cudaDevAttrStreamPrioritiesSupported", "hipDeviceAttributeStreamPrioritiesSupported", "numeric_literal"); - subst("cudaDevAttrSurfaceAlignment", "hipDeviceAttributeSurfaceAlignment", "numeric_literal"); - subst("cudaDevAttrTccDriver", "hipDeviceAttributeTccDriver", "numeric_literal"); - subst("cudaDevAttrTextureAlignment", "hipDeviceAttributeTextureAlignment", "numeric_literal"); - subst("cudaDevAttrTexturePitchAlignment", "hipDeviceAttributeTexturePitchAlignment", "numeric_literal"); - subst("cudaDevAttrTotalConstantMemory", "hipDeviceAttributeTotalConstantMemory", "numeric_literal"); - subst("cudaDevAttrUnifiedAddressing", "hipDeviceAttributeUnifiedAddressing", "numeric_literal"); - subst("cudaDevAttrWarpSize", "hipDeviceAttributeWarpSize", "numeric_literal"); - subst("cudaDevP2PAttrAccessSupported", "hipDevP2PAttrAccessSupported", "numeric_literal"); - subst("cudaDevP2PAttrCudaArrayAccessSupported", "hipDevP2PAttrHipArrayAccessSupported", "numeric_literal"); - subst("cudaDevP2PAttrNativeAtomicSupported", "hipDevP2PAttrNativeAtomicSupported", "numeric_literal"); - subst("cudaDevP2PAttrPerformanceRank", "hipDevP2PAttrPerformanceRank", "numeric_literal"); - subst("cudaDriverEntryPointSuccess", "HIP_GET_PROC_ADDRESS_SUCCESS", "numeric_literal"); - subst("cudaDriverEntryPointSymbolNotFound", "HIP_GET_PROC_ADDRESS_SYMBOL_NOT_FOUND", "numeric_literal"); - subst("cudaDriverEntryPointVersionNotSufficent", "HIP_GET_PROC_ADDRESS_VERSION_NOT_SUFFICIENT", "numeric_literal"); - subst("cudaErrorAlreadyAcquired", "hipErrorAlreadyAcquired", "numeric_literal"); - subst("cudaErrorAlreadyMapped", "hipErrorAlreadyMapped", "numeric_literal"); - subst("cudaErrorArrayIsMapped", "hipErrorArrayIsMapped", "numeric_literal"); - subst("cudaErrorAssert", "hipErrorAssert", "numeric_literal"); - subst("cudaErrorCapturedEvent", "hipErrorCapturedEvent", "numeric_literal"); - subst("cudaErrorContextIsDestroyed", "hipErrorContextIsDestroyed", "numeric_literal"); - subst("cudaErrorCooperativeLaunchTooLarge", "hipErrorCooperativeLaunchTooLarge", "numeric_literal"); - subst("cudaErrorCudartUnloading", "hipErrorDeinitialized", "numeric_literal"); - subst("cudaErrorDeviceAlreadyInUse", "hipErrorContextAlreadyInUse", "numeric_literal"); - subst("cudaErrorDeviceUninitialized", "hipErrorInvalidContext", "numeric_literal"); - subst("cudaErrorECCUncorrectable", "hipErrorECCNotCorrectable", "numeric_literal"); - subst("cudaErrorFileNotFound", "hipErrorFileNotFound", "numeric_literal"); - subst("cudaErrorGraphExecUpdateFailure", "hipErrorGraphExecUpdateFailure", "numeric_literal"); - subst("cudaErrorHostMemoryAlreadyRegistered", "hipErrorHostMemoryAlreadyRegistered", "numeric_literal"); - subst("cudaErrorHostMemoryNotRegistered", "hipErrorHostMemoryNotRegistered", "numeric_literal"); - subst("cudaErrorIllegalAddress", "hipErrorIllegalAddress", "numeric_literal"); - subst("cudaErrorIllegalState", "hipErrorIllegalState", "numeric_literal"); - subst("cudaErrorInitializationError", "hipErrorNotInitialized", "numeric_literal"); - subst("cudaErrorInsufficientDriver", "hipErrorInsufficientDriver", "numeric_literal"); - subst("cudaErrorInvalidConfiguration", "hipErrorInvalidConfiguration", "numeric_literal"); - subst("cudaErrorInvalidDevice", "hipErrorInvalidDevice", "numeric_literal"); - subst("cudaErrorInvalidDeviceFunction", "hipErrorInvalidDeviceFunction", "numeric_literal"); - subst("cudaErrorInvalidDevicePointer", "hipErrorInvalidDevicePointer", "numeric_literal"); - subst("cudaErrorInvalidGraphicsContext", "hipErrorInvalidGraphicsContext", "numeric_literal"); - subst("cudaErrorInvalidKernelImage", "hipErrorInvalidImage", "numeric_literal"); - subst("cudaErrorInvalidMemcpyDirection", "hipErrorInvalidMemcpyDirection", "numeric_literal"); - subst("cudaErrorInvalidPitchValue", "hipErrorInvalidPitchValue", "numeric_literal"); - subst("cudaErrorInvalidPtx", "hipErrorInvalidKernelFile", "numeric_literal"); - subst("cudaErrorInvalidResourceHandle", "hipErrorInvalidHandle", "numeric_literal"); - subst("cudaErrorInvalidSource", "hipErrorInvalidSource", "numeric_literal"); - subst("cudaErrorInvalidSymbol", "hipErrorInvalidSymbol", "numeric_literal"); - subst("cudaErrorInvalidValue", "hipErrorInvalidValue", "numeric_literal"); - subst("cudaErrorLaunchFailure", "hipErrorLaunchFailure", "numeric_literal"); - subst("cudaErrorLaunchOutOfResources", "hipErrorLaunchOutOfResources", "numeric_literal"); - subst("cudaErrorLaunchTimeout", "hipErrorLaunchTimeOut", "numeric_literal"); - subst("cudaErrorLossyQuery", "hipErrorLossyQuery", "numeric_literal"); - subst("cudaErrorMapBufferObjectFailed", "hipErrorMapFailed", "numeric_literal"); - subst("cudaErrorMemoryAllocation", "hipErrorOutOfMemory", "numeric_literal"); - subst("cudaErrorMissingConfiguration", "hipErrorMissingConfiguration", "numeric_literal"); - subst("cudaErrorNoDevice", "hipErrorNoDevice", "numeric_literal"); - subst("cudaErrorNoKernelImageForDevice", "hipErrorNoBinaryForGpu", "numeric_literal"); - subst("cudaErrorNotMapped", "hipErrorNotMapped", "numeric_literal"); - subst("cudaErrorNotMappedAsArray", "hipErrorNotMappedAsArray", "numeric_literal"); - subst("cudaErrorNotMappedAsPointer", "hipErrorNotMappedAsPointer", "numeric_literal"); - subst("cudaErrorNotReady", "hipErrorNotReady", "numeric_literal"); - subst("cudaErrorNotSupported", "hipErrorNotSupported", "numeric_literal"); - subst("cudaErrorOperatingSystem", "hipErrorOperatingSystem", "numeric_literal"); - subst("cudaErrorPeerAccessAlreadyEnabled", "hipErrorPeerAccessAlreadyEnabled", "numeric_literal"); - subst("cudaErrorPeerAccessNotEnabled", "hipErrorPeerAccessNotEnabled", "numeric_literal"); - subst("cudaErrorPeerAccessUnsupported", "hipErrorPeerAccessUnsupported", "numeric_literal"); - subst("cudaErrorPriorLaunchFailure", "hipErrorPriorLaunchFailure", "numeric_literal"); - subst("cudaErrorProfilerAlreadyStarted", "hipErrorProfilerAlreadyStarted", "numeric_literal"); - subst("cudaErrorProfilerAlreadyStopped", "hipErrorProfilerAlreadyStopped", "numeric_literal"); - subst("cudaErrorProfilerDisabled", "hipErrorProfilerDisabled", "numeric_literal"); - subst("cudaErrorProfilerNotInitialized", "hipErrorProfilerNotInitialized", "numeric_literal"); - subst("cudaErrorSetOnActiveProcess", "hipErrorSetOnActiveProcess", "numeric_literal"); - subst("cudaErrorSharedObjectInitFailed", "hipErrorSharedObjectInitFailed", "numeric_literal"); - subst("cudaErrorSharedObjectSymbolNotFound", "hipErrorSharedObjectSymbolNotFound", "numeric_literal"); - subst("cudaErrorStreamCaptureImplicit", "hipErrorStreamCaptureImplicit", "numeric_literal"); - subst("cudaErrorStreamCaptureInvalidated", "hipErrorStreamCaptureInvalidated", "numeric_literal"); - subst("cudaErrorStreamCaptureIsolation", "hipErrorStreamCaptureIsolation", "numeric_literal"); - subst("cudaErrorStreamCaptureMerge", "hipErrorStreamCaptureMerge", "numeric_literal"); - subst("cudaErrorStreamCaptureUnjoined", "hipErrorStreamCaptureUnjoined", "numeric_literal"); - subst("cudaErrorStreamCaptureUnmatched", "hipErrorStreamCaptureUnmatched", "numeric_literal"); - subst("cudaErrorStreamCaptureUnsupported", "hipErrorStreamCaptureUnsupported", "numeric_literal"); - subst("cudaErrorStreamCaptureWrongThread", "hipErrorStreamCaptureWrongThread", "numeric_literal"); - subst("cudaErrorSymbolNotFound", "hipErrorNotFound", "numeric_literal"); - subst("cudaErrorUnknown", "hipErrorUnknown", "numeric_literal"); - subst("cudaErrorUnmapBufferObjectFailed", "hipErrorUnmapFailed", "numeric_literal"); - subst("cudaErrorUnsupportedLimit", "hipErrorUnsupportedLimit", "numeric_literal"); - subst("cudaExternalMemoryHandleTypeD3D11Resource", "hipExternalMemoryHandleTypeD3D11Resource", "numeric_literal"); - subst("cudaExternalMemoryHandleTypeD3D11ResourceKmt", "hipExternalMemoryHandleTypeD3D11ResourceKmt", "numeric_literal"); - subst("cudaExternalMemoryHandleTypeD3D12Heap", "hipExternalMemoryHandleTypeD3D12Heap", "numeric_literal"); - subst("cudaExternalMemoryHandleTypeD3D12Resource", "hipExternalMemoryHandleTypeD3D12Resource", "numeric_literal"); - subst("cudaExternalMemoryHandleTypeOpaqueFd", "hipExternalMemoryHandleTypeOpaqueFd", "numeric_literal"); - subst("cudaExternalMemoryHandleTypeOpaqueWin32", "hipExternalMemoryHandleTypeOpaqueWin32", "numeric_literal"); - subst("cudaExternalMemoryHandleTypeOpaqueWin32Kmt", "hipExternalMemoryHandleTypeOpaqueWin32Kmt", "numeric_literal"); - subst("cudaExternalSemaphoreHandleTypeD3D12Fence", "hipExternalSemaphoreHandleTypeD3D12Fence", "numeric_literal"); - subst("cudaExternalSemaphoreHandleTypeOpaqueFd", "hipExternalSemaphoreHandleTypeOpaqueFd", "numeric_literal"); - subst("cudaExternalSemaphoreHandleTypeOpaqueWin32", "hipExternalSemaphoreHandleTypeOpaqueWin32", "numeric_literal"); - subst("cudaExternalSemaphoreHandleTypeOpaqueWin32Kmt", "hipExternalSemaphoreHandleTypeOpaqueWin32Kmt", "numeric_literal"); - subst("cudaFilterModeLinear", "hipFilterModeLinear", "numeric_literal"); - subst("cudaFilterModePoint", "hipFilterModePoint", "numeric_literal"); - subst("cudaFlushGPUDirectRDMAWritesOptionHost", "hipFlushGPUDirectRDMAWritesOptionHost", "numeric_literal"); - subst("cudaFlushGPUDirectRDMAWritesOptionMemOps", "hipFlushGPUDirectRDMAWritesOptionMemOps", "numeric_literal"); - subst("cudaFuncAttributeMax", "hipFuncAttributeMax", "numeric_literal"); - subst("cudaFuncAttributeMaxDynamicSharedMemorySize", "hipFuncAttributeMaxDynamicSharedMemorySize", "numeric_literal"); - subst("cudaFuncAttributePreferredSharedMemoryCarveout", "hipFuncAttributePreferredSharedMemoryCarveout", "numeric_literal"); - subst("cudaFuncCachePreferEqual", "hipFuncCachePreferEqual", "numeric_literal"); - subst("cudaFuncCachePreferL1", "hipFuncCachePreferL1", "numeric_literal"); - subst("cudaFuncCachePreferNone", "hipFuncCachePreferNone", "numeric_literal"); - subst("cudaFuncCachePreferShared", "hipFuncCachePreferShared", "numeric_literal"); - subst("cudaGLDeviceListAll", "hipGLDeviceListAll", "numeric_literal"); - subst("cudaGLDeviceListCurrentFrame", "hipGLDeviceListCurrentFrame", "numeric_literal"); - subst("cudaGLDeviceListNextFrame", "hipGLDeviceListNextFrame", "numeric_literal"); - subst("cudaGPUDirectRDMAWritesOrderingAllDevices", "hipGPUDirectRDMAWritesOrderingAllDevices", "numeric_literal"); - subst("cudaGPUDirectRDMAWritesOrderingNone", "hipGPUDirectRDMAWritesOrderingNone", "numeric_literal"); - subst("cudaGPUDirectRDMAWritesOrderingOwner", "hipGPUDirectRDMAWritesOrderingOwner", "numeric_literal"); - subst("cudaGraphDebugDotFlagsEventNodeParams", "hipGraphDebugDotFlagsEventNodeParams", "numeric_literal"); - subst("cudaGraphDebugDotFlagsExtSemasSignalNodeParams", "hipGraphDebugDotFlagsExtSemasSignalNodeParams", "numeric_literal"); - subst("cudaGraphDebugDotFlagsExtSemasWaitNodeParams", "hipGraphDebugDotFlagsExtSemasWaitNodeParams", "numeric_literal"); - subst("cudaGraphDebugDotFlagsHandles", "hipGraphDebugDotFlagsHandles", "numeric_literal"); - subst("cudaGraphDebugDotFlagsHostNodeParams", "hipGraphDebugDotFlagsHostNodeParams", "numeric_literal"); - subst("cudaGraphDebugDotFlagsKernelNodeAttributes", "hipGraphDebugDotFlagsKernelNodeAttributes", "numeric_literal"); - subst("cudaGraphDebugDotFlagsKernelNodeParams", "hipGraphDebugDotFlagsKernelNodeParams", "numeric_literal"); - subst("cudaGraphDebugDotFlagsMemcpyNodeParams", "hipGraphDebugDotFlagsMemcpyNodeParams", "numeric_literal"); - subst("cudaGraphDebugDotFlagsMemsetNodeParams", "hipGraphDebugDotFlagsMemsetNodeParams", "numeric_literal"); - subst("cudaGraphDebugDotFlagsVerbose", "hipGraphDebugDotFlagsVerbose", "numeric_literal"); - subst("cudaGraphDependencyTypeDefault", "hipGraphDependencyTypeDefault", "numeric_literal"); - subst("cudaGraphDependencyTypeProgrammatic", "hipGraphDependencyTypeProgrammatic", "numeric_literal"); - subst("cudaGraphExecUpdateError", "hipGraphExecUpdateError", "numeric_literal"); - subst("cudaGraphExecUpdateErrorFunctionChanged", "hipGraphExecUpdateErrorFunctionChanged", "numeric_literal"); - subst("cudaGraphExecUpdateErrorNodeTypeChanged", "hipGraphExecUpdateErrorNodeTypeChanged", "numeric_literal"); - subst("cudaGraphExecUpdateErrorNotSupported", "hipGraphExecUpdateErrorNotSupported", "numeric_literal"); - subst("cudaGraphExecUpdateErrorParametersChanged", "hipGraphExecUpdateErrorParametersChanged", "numeric_literal"); - subst("cudaGraphExecUpdateErrorTopologyChanged", "hipGraphExecUpdateErrorTopologyChanged", "numeric_literal"); - subst("cudaGraphExecUpdateErrorUnsupportedFunctionChange", "hipGraphExecUpdateErrorUnsupportedFunctionChange", "numeric_literal"); - subst("cudaGraphExecUpdateSuccess", "hipGraphExecUpdateSuccess", "numeric_literal"); - subst("cudaGraphInstantiateError", "hipGraphInstantiateError", "numeric_literal"); - subst("cudaGraphInstantiateFlagAutoFreeOnLaunch", "hipGraphInstantiateFlagAutoFreeOnLaunch", "numeric_literal"); - subst("cudaGraphInstantiateFlagDeviceLaunch", "hipGraphInstantiateFlagDeviceLaunch", "numeric_literal"); - subst("cudaGraphInstantiateFlagUpload", "hipGraphInstantiateFlagUpload", "numeric_literal"); - subst("cudaGraphInstantiateFlagUseNodePriority", "hipGraphInstantiateFlagUseNodePriority", "numeric_literal"); - subst("cudaGraphInstantiateInvalidStructure", "hipGraphInstantiateInvalidStructure", "numeric_literal"); - subst("cudaGraphInstantiateMultipleDevicesNotSupported", "hipGraphInstantiateMultipleDevicesNotSupported", "numeric_literal"); - subst("cudaGraphInstantiateNodeOperationNotSupported", "hipGraphInstantiateNodeOperationNotSupported", "numeric_literal"); - subst("cudaGraphInstantiateSuccess", "hipGraphInstantiateSuccess", "numeric_literal"); - subst("cudaGraphMemAttrReservedMemCurrent", "hipGraphMemAttrReservedMemCurrent", "numeric_literal"); - subst("cudaGraphMemAttrReservedMemHigh", "hipGraphMemAttrReservedMemHigh", "numeric_literal"); - subst("cudaGraphMemAttrUsedMemCurrent", "hipGraphMemAttrUsedMemCurrent", "numeric_literal"); - subst("cudaGraphMemAttrUsedMemHigh", "hipGraphMemAttrUsedMemHigh", "numeric_literal"); - subst("cudaGraphNodeTypeConditional", "hipGraphNodeTypeConditional", "numeric_literal"); - subst("cudaGraphNodeTypeCount", "hipGraphNodeTypeCount", "numeric_literal"); - subst("cudaGraphNodeTypeEmpty", "hipGraphNodeTypeEmpty", "numeric_literal"); - subst("cudaGraphNodeTypeEventRecord", "hipGraphNodeTypeEventRecord", "numeric_literal"); - subst("cudaGraphNodeTypeExtSemaphoreSignal", "hipGraphNodeTypeExtSemaphoreSignal", "numeric_literal"); - subst("cudaGraphNodeTypeExtSemaphoreWait", "hipGraphNodeTypeExtSemaphoreWait", "numeric_literal"); - subst("cudaGraphNodeTypeGraph", "hipGraphNodeTypeGraph", "numeric_literal"); - subst("cudaGraphNodeTypeHost", "hipGraphNodeTypeHost", "numeric_literal"); - subst("cudaGraphNodeTypeKernel", "hipGraphNodeTypeKernel", "numeric_literal"); - subst("cudaGraphNodeTypeMemAlloc", "hipGraphNodeTypeMemAlloc", "numeric_literal"); - subst("cudaGraphNodeTypeMemFree", "hipGraphNodeTypeMemFree", "numeric_literal"); - subst("cudaGraphNodeTypeMemcpy", "hipGraphNodeTypeMemcpy", "numeric_literal"); - subst("cudaGraphNodeTypeMemset", "hipGraphNodeTypeMemset", "numeric_literal"); - subst("cudaGraphNodeTypeWaitEvent", "hipGraphNodeTypeWaitEvent", "numeric_literal"); - subst("cudaGraphUserObjectMove", "hipGraphUserObjectMove", "numeric_literal"); - subst("cudaGraphicsRegisterFlagsNone", "hipGraphicsRegisterFlagsNone", "numeric_literal"); - subst("cudaGraphicsRegisterFlagsReadOnly", "hipGraphicsRegisterFlagsReadOnly", "numeric_literal"); - subst("cudaGraphicsRegisterFlagsSurfaceLoadStore", "hipGraphicsRegisterFlagsSurfaceLoadStore", "numeric_literal"); - subst("cudaGraphicsRegisterFlagsTextureGather", "hipGraphicsRegisterFlagsTextureGather", "numeric_literal"); - subst("cudaGraphicsRegisterFlagsWriteDiscard", "hipGraphicsRegisterFlagsWriteDiscard", "numeric_literal"); - subst("cudaKernelNodeAttributeAccessPolicyWindow", "hipKernelNodeAttributeAccessPolicyWindow", "numeric_literal"); - subst("cudaKernelNodeAttributeCooperative", "hipKernelNodeAttributeCooperative", "numeric_literal"); - subst("cudaKernelNodeAttributePriority", "hipKernelNodeAttributePriority", "numeric_literal"); - subst("cudaLaunchAttributeAccessPolicyWindow", "hipLaunchAttributeAccessPolicyWindow", "numeric_literal"); - subst("cudaLaunchAttributeCooperative", "hipLaunchAttributeCooperative", "numeric_literal"); - subst("cudaLaunchAttributePriority", "hipLaunchAttributePriority", "numeric_literal"); - subst("cudaLimitMallocHeapSize", "hipLimitMallocHeapSize", "numeric_literal"); - subst("cudaLimitPrintfFifoSize", "hipLimitPrintfFifoSize", "numeric_literal"); - subst("cudaLimitStackSize", "hipLimitStackSize", "numeric_literal"); - subst("cudaMemAccessFlagsProtNone", "hipMemAccessFlagsProtNone", "numeric_literal"); - subst("cudaMemAccessFlagsProtRead", "hipMemAccessFlagsProtRead", "numeric_literal"); - subst("cudaMemAccessFlagsProtReadWrite", "hipMemAccessFlagsProtReadWrite", "numeric_literal"); - subst("cudaMemAdviseSetAccessedBy", "hipMemAdviseSetAccessedBy", "numeric_literal"); - subst("cudaMemAdviseSetPreferredLocation", "hipMemAdviseSetPreferredLocation", "numeric_literal"); - subst("cudaMemAdviseSetReadMostly", "hipMemAdviseSetReadMostly", "numeric_literal"); - subst("cudaMemAdviseUnsetAccessedBy", "hipMemAdviseUnsetAccessedBy", "numeric_literal"); - subst("cudaMemAdviseUnsetPreferredLocation", "hipMemAdviseUnsetPreferredLocation", "numeric_literal"); - subst("cudaMemAdviseUnsetReadMostly", "hipMemAdviseUnsetReadMostly", "numeric_literal"); - subst("cudaMemAllocationTypeInvalid", "hipMemAllocationTypeInvalid", "numeric_literal"); - subst("cudaMemAllocationTypeMax", "hipMemAllocationTypeMax", "numeric_literal"); - subst("cudaMemAllocationTypePinned", "hipMemAllocationTypePinned", "numeric_literal"); - subst("cudaMemHandleTypeNone", "hipMemHandleTypeNone", "numeric_literal"); - subst("cudaMemHandleTypePosixFileDescriptor", "hipMemHandleTypePosixFileDescriptor", "numeric_literal"); - subst("cudaMemHandleTypeWin32", "hipMemHandleTypeWin32", "numeric_literal"); - subst("cudaMemHandleTypeWin32Kmt", "hipMemHandleTypeWin32Kmt", "numeric_literal"); - subst("cudaMemLocationTypeDevice", "hipMemLocationTypeDevice", "numeric_literal"); - subst("cudaMemLocationTypeInvalid", "hipMemLocationTypeInvalid", "numeric_literal"); - subst("cudaMemPoolAttrReleaseThreshold", "hipMemPoolAttrReleaseThreshold", "numeric_literal"); - subst("cudaMemPoolAttrReservedMemCurrent", "hipMemPoolAttrReservedMemCurrent", "numeric_literal"); - subst("cudaMemPoolAttrReservedMemHigh", "hipMemPoolAttrReservedMemHigh", "numeric_literal"); - subst("cudaMemPoolAttrUsedMemCurrent", "hipMemPoolAttrUsedMemCurrent", "numeric_literal"); - subst("cudaMemPoolAttrUsedMemHigh", "hipMemPoolAttrUsedMemHigh", "numeric_literal"); - subst("cudaMemPoolReuseAllowInternalDependencies", "hipMemPoolReuseAllowInternalDependencies", "numeric_literal"); - subst("cudaMemPoolReuseAllowOpportunistic", "hipMemPoolReuseAllowOpportunistic", "numeric_literal"); - subst("cudaMemPoolReuseFollowEventDependencies", "hipMemPoolReuseFollowEventDependencies", "numeric_literal"); - subst("cudaMemRangeAttributeAccessedBy", "hipMemRangeAttributeAccessedBy", "numeric_literal"); - subst("cudaMemRangeAttributeLastPrefetchLocation", "hipMemRangeAttributeLastPrefetchLocation", "numeric_literal"); - subst("cudaMemRangeAttributePreferredLocation", "hipMemRangeAttributePreferredLocation", "numeric_literal"); - subst("cudaMemRangeAttributeReadMostly", "hipMemRangeAttributeReadMostly", "numeric_literal"); - subst("cudaMemcpyDefault", "hipMemcpyDefault", "numeric_literal"); - subst("cudaMemcpyDeviceToDevice", "hipMemcpyDeviceToDevice", "numeric_literal"); - subst("cudaMemcpyDeviceToHost", "hipMemcpyDeviceToHost", "numeric_literal"); - subst("cudaMemcpyHostToDevice", "hipMemcpyHostToDevice", "numeric_literal"); - subst("cudaMemcpyHostToHost", "hipMemcpyHostToHost", "numeric_literal"); - subst("cudaMemoryTypeDevice", "hipMemoryTypeDevice", "numeric_literal"); - subst("cudaMemoryTypeHost", "hipMemoryTypeHost", "numeric_literal"); - subst("cudaMemoryTypeManaged", "hipMemoryTypeManaged", "numeric_literal"); - subst("cudaReadModeElementType", "hipReadModeElementType", "numeric_literal"); - subst("cudaReadModeNormalizedFloat", "hipReadModeNormalizedFloat", "numeric_literal"); - subst("cudaResViewFormatFloat1", "hipResViewFormatFloat1", "numeric_literal"); - subst("cudaResViewFormatFloat2", "hipResViewFormatFloat2", "numeric_literal"); - subst("cudaResViewFormatFloat4", "hipResViewFormatFloat4", "numeric_literal"); - subst("cudaResViewFormatHalf1", "hipResViewFormatHalf1", "numeric_literal"); - subst("cudaResViewFormatHalf2", "hipResViewFormatHalf2", "numeric_literal"); - subst("cudaResViewFormatHalf4", "hipResViewFormatHalf4", "numeric_literal"); - subst("cudaResViewFormatNone", "hipResViewFormatNone", "numeric_literal"); - subst("cudaResViewFormatSignedBlockCompressed4", "hipResViewFormatSignedBlockCompressed4", "numeric_literal"); - subst("cudaResViewFormatSignedBlockCompressed5", "hipResViewFormatSignedBlockCompressed5", "numeric_literal"); - subst("cudaResViewFormatSignedBlockCompressed6H", "hipResViewFormatSignedBlockCompressed6H", "numeric_literal"); - subst("cudaResViewFormatSignedChar1", "hipResViewFormatSignedChar1", "numeric_literal"); - subst("cudaResViewFormatSignedChar2", "hipResViewFormatSignedChar2", "numeric_literal"); - subst("cudaResViewFormatSignedChar4", "hipResViewFormatSignedChar4", "numeric_literal"); - subst("cudaResViewFormatSignedInt1", "hipResViewFormatSignedInt1", "numeric_literal"); - subst("cudaResViewFormatSignedInt2", "hipResViewFormatSignedInt2", "numeric_literal"); - subst("cudaResViewFormatSignedInt4", "hipResViewFormatSignedInt4", "numeric_literal"); - subst("cudaResViewFormatSignedShort1", "hipResViewFormatSignedShort1", "numeric_literal"); - subst("cudaResViewFormatSignedShort2", "hipResViewFormatSignedShort2", "numeric_literal"); - subst("cudaResViewFormatSignedShort4", "hipResViewFormatSignedShort4", "numeric_literal"); - subst("cudaResViewFormatUnsignedBlockCompressed1", "hipResViewFormatUnsignedBlockCompressed1", "numeric_literal"); - subst("cudaResViewFormatUnsignedBlockCompressed2", "hipResViewFormatUnsignedBlockCompressed2", "numeric_literal"); - subst("cudaResViewFormatUnsignedBlockCompressed3", "hipResViewFormatUnsignedBlockCompressed3", "numeric_literal"); - subst("cudaResViewFormatUnsignedBlockCompressed4", "hipResViewFormatUnsignedBlockCompressed4", "numeric_literal"); - subst("cudaResViewFormatUnsignedBlockCompressed5", "hipResViewFormatUnsignedBlockCompressed5", "numeric_literal"); - subst("cudaResViewFormatUnsignedBlockCompressed6H", "hipResViewFormatUnsignedBlockCompressed6H", "numeric_literal"); - subst("cudaResViewFormatUnsignedBlockCompressed7", "hipResViewFormatUnsignedBlockCompressed7", "numeric_literal"); - subst("cudaResViewFormatUnsignedChar1", "hipResViewFormatUnsignedChar1", "numeric_literal"); - subst("cudaResViewFormatUnsignedChar2", "hipResViewFormatUnsignedChar2", "numeric_literal"); - subst("cudaResViewFormatUnsignedChar4", "hipResViewFormatUnsignedChar4", "numeric_literal"); - subst("cudaResViewFormatUnsignedInt1", "hipResViewFormatUnsignedInt1", "numeric_literal"); - subst("cudaResViewFormatUnsignedInt2", "hipResViewFormatUnsignedInt2", "numeric_literal"); - subst("cudaResViewFormatUnsignedInt4", "hipResViewFormatUnsignedInt4", "numeric_literal"); - subst("cudaResViewFormatUnsignedShort1", "hipResViewFormatUnsignedShort1", "numeric_literal"); - subst("cudaResViewFormatUnsignedShort2", "hipResViewFormatUnsignedShort2", "numeric_literal"); - subst("cudaResViewFormatUnsignedShort4", "hipResViewFormatUnsignedShort4", "numeric_literal"); - subst("cudaResourceTypeArray", "hipResourceTypeArray", "numeric_literal"); - subst("cudaResourceTypeLinear", "hipResourceTypeLinear", "numeric_literal"); - subst("cudaResourceTypeMipmappedArray", "hipResourceTypeMipmappedArray", "numeric_literal"); - subst("cudaResourceTypePitch2D", "hipResourceTypePitch2D", "numeric_literal"); - subst("cudaSharedMemBankSizeDefault", "hipSharedMemBankSizeDefault", "numeric_literal"); - subst("cudaSharedMemBankSizeEightByte", "hipSharedMemBankSizeEightByte", "numeric_literal"); - subst("cudaSharedMemBankSizeFourByte", "hipSharedMemBankSizeFourByte", "numeric_literal"); - subst("cudaStreamAddCaptureDependencies", "hipStreamAddCaptureDependencies", "numeric_literal"); - subst("cudaStreamCaptureModeGlobal", "hipStreamCaptureModeGlobal", "numeric_literal"); - subst("cudaStreamCaptureModeRelaxed", "hipStreamCaptureModeRelaxed", "numeric_literal"); - subst("cudaStreamCaptureModeThreadLocal", "hipStreamCaptureModeThreadLocal", "numeric_literal"); - subst("cudaStreamCaptureStatusActive", "hipStreamCaptureStatusActive", "numeric_literal"); - subst("cudaStreamCaptureStatusInvalidated", "hipStreamCaptureStatusInvalidated", "numeric_literal"); - subst("cudaStreamCaptureStatusNone", "hipStreamCaptureStatusNone", "numeric_literal"); - subst("cudaStreamSetCaptureDependencies", "hipStreamSetCaptureDependencies", "numeric_literal"); - subst("cudaSuccess", "hipSuccess", "numeric_literal"); - subst("cudaUserObjectNoDestructorSync", "hipUserObjectNoDestructorSync", "numeric_literal"); - subst("cusolver_int_t", "int", "numeric_literal"); - subst("CUB_MAX", "CUB_MAX", "define"); - subst("CUB_MIN", "CUB_MIN", "define"); - subst("CUB_NAMESPACE_BEGIN", "BEGIN_HIPCUB_NAMESPACE", "define"); - subst("CUB_NAMESPACE_END", "END_HIPCUB_NAMESPACE", "define"); - subst("CUB_PTX_ARCH", "HIPCUB_ARCH", "define"); - subst("CUB_PTX_WARP_THREADS", "HIPCUB_WARP_THREADS", "define"); - subst("CUB_RUNTIME_FUNCTION", "HIPCUB_RUNTIME_FUNCTION", "define"); - subst("CUB_STDERR", "HIPCUB_STDERR", "define"); - subst("CUDART_2_OVER_PI", "HIP_2_OVER_PI", "define"); - subst("CUDART_2_OVER_PI_F", "HIP_2_OVER_PI_F", "define"); - subst("CUDART_3PIO4", "HIP_3PIO4", "define"); - subst("CUDART_3PIO4_F", "HIP_3PIO4_F", "define"); - subst("CUDART_DBL2INT_CVT", "HIP_DBL2INT_CVT", "define"); - subst("CUDART_INF", "HIP_INF", "define"); - subst("CUDART_INF_F", "HIP_INF_F", "define"); - subst("CUDART_L2E", "HIP_L2E", "define"); - subst("CUDART_L2E_F", "HIP_L2E_F", "define"); - subst("CUDART_L2E_HI", "HIP_L2E_HI", "define"); - subst("CUDART_L2E_LO", "HIP_L2E_LO", "define"); - subst("CUDART_L2T", "HIP_L2T", "define"); - subst("CUDART_L2T_F", "HIP_L2T_F", "define"); - subst("CUDART_LG2", "HIP_LG2", "define"); - subst("CUDART_LG2_F", "HIP_LG2_F", "define"); - subst("CUDART_LG2_HI", "HIP_LG2_HI", "define"); - subst("CUDART_LG2_LO", "HIP_LG2_LO", "define"); - subst("CUDART_LG2_X_1024", "HIP_LG2_X_1024", "define"); - subst("CUDART_LG2_X_1075", "HIP_LG2_X_1075", "define"); - subst("CUDART_LGE", "HIP_LGE", "define"); - subst("CUDART_LGE_F", "HIP_LGE_F", "define"); - subst("CUDART_LGE_HI", "HIP_LGE_HI", "define"); - subst("CUDART_LGE_LO", "HIP_LGE_LO", "define"); - subst("CUDART_LN2", "HIP_LN2", "define"); - subst("CUDART_LN2_F", "HIP_LN2_F", "define"); - subst("CUDART_LN2_HI", "HIP_LN2_HI", "define"); - subst("CUDART_LN2_LO", "HIP_LN2_LO", "define"); - subst("CUDART_LN2_X_1024", "HIP_LN2_X_1024", "define"); - subst("CUDART_LN2_X_1025", "HIP_LN2_X_1025", "define"); - subst("CUDART_LN2_X_1075", "HIP_LN2_X_1075", "define"); - subst("CUDART_LNPI", "HIP_LNPI", "define"); - subst("CUDART_LNPI_F", "HIP_LNPI_F", "define"); - subst("CUDART_LNT", "HIP_LNT", "define"); - subst("CUDART_LNT_F", "HIP_LNT_F", "define"); - subst("CUDART_LNT_HI", "HIP_LNT_HI", "define"); - subst("CUDART_LNT_LO", "HIP_LNT_LO", "define"); - subst("CUDART_MAX_NORMAL_F", "HIP_MAX_NORMAL_F", "define"); - subst("CUDART_MIN_DENORM", "HIP_MIN_DENORM", "define"); - subst("CUDART_MIN_DENORM_F", "HIP_MIN_DENORM_F", "define"); - subst("CUDART_NAN", "HIP_NAN", "define"); - subst("CUDART_NAN_F", "HIP_NAN_F", "define"); - subst("CUDART_NEG_ZERO", "HIP_NEG_ZERO", "define"); - subst("CUDART_NEG_ZERO_F", "HIP_NEG_ZERO_F", "define"); - subst("CUDART_NORM_HUGE_F", "HIP_NORM_HUGE_F", "define"); - subst("CUDART_ONE", "HIP_ONE", "define"); - subst("CUDART_ONE_F", "HIP_ONE_F", "define"); - subst("CUDART_PI", "HIP_PI", "define"); - subst("CUDART_PIO2", "HIP_PIO2", "define"); - subst("CUDART_PIO2_F", "HIP_PIO2_F", "define"); - subst("CUDART_PIO2_HI", "HIP_PIO2_HI", "define"); - subst("CUDART_PIO2_LO", "HIP_PIO2_LO", "define"); - subst("CUDART_PIO4", "HIP_PIO4", "define"); - subst("CUDART_PIO4_F", "HIP_PIO4_F", "define"); - subst("CUDART_PIO4_HI", "HIP_PIO4_HI", "define"); - subst("CUDART_PIO4_LO", "HIP_PIO4_LO", "define"); - subst("CUDART_PI_F", "HIP_PI_F", "define"); - subst("CUDART_PI_HI", "HIP_PI_HI", "define"); - subst("CUDART_PI_LO", "HIP_PI_LO", "define"); - subst("CUDART_REMQUO_BITS_F", "HIP_REMQUO_BITS_F", "define"); - subst("CUDART_REMQUO_MASK_F", "HIP_REMQUO_MASK_F", "define"); - subst("CUDART_SQRT_2OPI", "HIP_SQRT_2OPI", "define"); - subst("CUDART_SQRT_2PI", "HIP_SQRT_2PI", "define"); - subst("CUDART_SQRT_2PI_HI", "HIP_SQRT_2PI_HI", "define"); - subst("CUDART_SQRT_2PI_LO", "HIP_SQRT_2PI_LO", "define"); - subst("CUDART_SQRT_2_OVER_PI_F", "HIP_SQRT_2_OVER_PI_F", "define"); - subst("CUDART_SQRT_HALF", "HIP_SQRT_HALF", "define"); - subst("CUDART_SQRT_HALF_F", "HIP_SQRT_HALF_F", "define"); - subst("CUDART_SQRT_HALF_HI", "HIP_SQRT_HALF_HI", "define"); - subst("CUDART_SQRT_HALF_HI_F", "HIP_SQRT_HALF_HI_F", "define"); - subst("CUDART_SQRT_HALF_LO", "HIP_SQRT_HALF_LO", "define"); - subst("CUDART_SQRT_HALF_LO_F", "HIP_SQRT_HALF_LO_F", "define"); - subst("CUDART_SQRT_PIO2", "HIP_SQRT_PIO2", "define"); - subst("CUDART_SQRT_PIO2_HI", "HIP_SQRT_PIO2_HI", "define"); - subst("CUDART_SQRT_PIO2_LO", "HIP_SQRT_PIO2_LO", "define"); - subst("CUDART_SQRT_TWO", "HIP_SQRT_TWO", "define"); - subst("CUDART_SQRT_TWO_F", "HIP_SQRT_TWO_F", "define"); - subst("CUDART_THIRD", "HIP_THIRD", "define"); - subst("CUDART_THIRD_F", "HIP_THIRD_F", "define"); - subst("CUDART_TRIG_PLOSS", "HIP_TRIG_PLOSS", "define"); - subst("CUDART_TRIG_PLOSS_F", "HIP_TRIG_PLOSS_F", "define"); - subst("CUDART_TWOTHIRD", "HIP_TWOTHIRD", "define"); - subst("CUDART_TWO_TO_126_F", "HIP_TWO_TO_126_F", "define"); - subst("CUDART_TWO_TO_23", "HIP_TWO_TO_23", "define"); - subst("CUDART_TWO_TO_23_F", "HIP_TWO_TO_23_F", "define"); - subst("CUDART_TWO_TO_24_F", "HIP_TWO_TO_24_F", "define"); - subst("CUDART_TWO_TO_31_F", "HIP_TWO_TO_31_F", "define"); - subst("CUDART_TWO_TO_32_F", "HIP_TWO_TO_32_F", "define"); - subst("CUDART_TWO_TO_52", "HIP_TWO_TO_52", "define"); - subst("CUDART_TWO_TO_53", "HIP_TWO_TO_53", "define"); - subst("CUDART_TWO_TO_54", "HIP_TWO_TO_54", "define"); - subst("CUDART_TWO_TO_M1022", "HIP_TWO_TO_M1022", "define"); - subst("CUDART_TWO_TO_M126_F", "HIP_TWO_TO_M126_F", "define"); - subst("CUDART_TWO_TO_M54", "HIP_TWO_TO_M54", "define"); - subst("CUDART_ZERO", "HIP_ZERO", "define"); - subst("CUDART_ZERO_F", "HIP_ZERO_F", "define"); - subst("CUDA_ARRAY3D_CUBEMAP", "hipArrayCubemap", "define"); - subst("CUDA_ARRAY3D_LAYERED", "hipArrayLayered", "define"); - subst("CUDA_ARRAY3D_SURFACE_LDST", "hipArraySurfaceLoadStore", "define"); - subst("CUDA_ARRAY3D_TEXTURE_GATHER", "hipArrayTextureGather", "define"); - subst("CUDA_COOPERATIVE_LAUNCH_MULTI_DEVICE_NO_POST_LAUNCH_SYNC", "hipCooperativeLaunchMultiDeviceNoPostSync", "define"); - subst("CUDA_COOPERATIVE_LAUNCH_MULTI_DEVICE_NO_PRE_LAUNCH_SYNC", "hipCooperativeLaunchMultiDeviceNoPreSync", "define"); - subst("CUDA_EXTERNAL_MEMORY_DEDICATED", "hipExternalMemoryDedicated", "define"); - subst("CUDA_IPC_HANDLE_SIZE", "HIP_IPC_HANDLE_SIZE", "define"); - subst("CU_DEVICE_CPU", "hipCpuDeviceId", "define"); - subst("CU_DEVICE_INVALID", "hipInvalidDeviceId", "define"); - subst("CU_GRAPH_KERNEL_NODE_PORT_DEFAULT", "hipGraphKernelNodePortDefault", "define"); - subst("CU_GRAPH_KERNEL_NODE_PORT_LAUNCH_ORDER", "hipGraphKernelNodePortLaunchCompletion", "define"); - subst("CU_GRAPH_KERNEL_NODE_PORT_PROGRAMMATIC", "hipGraphKernelNodePortProgrammatic", "define"); - subst("CU_IPC_HANDLE_SIZE", "HIP_IPC_HANDLE_SIZE", "define"); - subst("CU_LAUNCH_PARAM_BUFFER_POINTER", "HIP_LAUNCH_PARAM_BUFFER_POINTER", "define"); - subst("CU_LAUNCH_PARAM_BUFFER_SIZE", "HIP_LAUNCH_PARAM_BUFFER_SIZE", "define"); - subst("CU_LAUNCH_PARAM_END", "HIP_LAUNCH_PARAM_END", "define"); - subst("CU_MEMHOSTALLOC_DEVICEMAP", "hipHostMallocMapped", "define"); - subst("CU_MEMHOSTALLOC_PORTABLE", "hipHostMallocPortable", "define"); - subst("CU_MEMHOSTALLOC_WRITECOMBINED", "hipHostMallocWriteCombined", "define"); - subst("CU_MEMHOSTREGISTER_DEVICEMAP", "hipHostRegisterMapped", "define"); - subst("CU_MEMHOSTREGISTER_IOMEMORY", "hipHostRegisterIoMemory", "define"); - subst("CU_MEMHOSTREGISTER_PORTABLE", "hipHostRegisterPortable", "define"); - subst("CU_MEMHOSTREGISTER_READ_ONLY", "hipHostRegisterReadOnly", "define"); - subst("CU_STREAM_LEGACY", "hipStreamLegacy", "define"); - subst("CU_STREAM_PER_THREAD", "hipStreamPerThread", "define"); - subst("CU_TRSA_OVERRIDE_FORMAT", "HIP_TRSA_OVERRIDE_FORMAT", "define"); - subst("CU_TRSF_NORMALIZED_COORDINATES", "HIP_TRSF_NORMALIZED_COORDINATES", "define"); - subst("CU_TRSF_READ_AS_INTEGER", "HIP_TRSF_READ_AS_INTEGER", "define"); - subst("CU_TRSF_SRGB", "HIP_TRSF_SRGB", "define"); - subst("CubDebug", "HipcubDebug", "define"); - subst("REGISTER_CUDA_OPERATOR", "REGISTER_HIP_OPERATOR", "define"); - subst("REGISTER_CUDA_OPERATOR_CREATOR", "REGISTER_HIP_OPERATOR_CREATOR", "define"); - subst("_CubLog", "_HipcubLog", "define"); - subst("__CUB_ALIGN_BYTES", "__HIPCUB_ALIGN_BYTES", "define"); - subst("__CUDACC__", "__HIPCC__", "define"); - subst("cudaArrayCubemap", "hipArrayCubemap", "define"); - subst("cudaArrayDefault", "hipArrayDefault", "define"); - subst("cudaArrayLayered", "hipArrayLayered", "define"); - subst("cudaArraySurfaceLoadStore", "hipArraySurfaceLoadStore", "define"); - subst("cudaArrayTextureGather", "hipArrayTextureGather", "define"); - subst("cudaCooperativeLaunchMultiDeviceNoPostSync", "hipCooperativeLaunchMultiDeviceNoPostSync", "define"); - subst("cudaCooperativeLaunchMultiDeviceNoPreSync", "hipCooperativeLaunchMultiDeviceNoPreSync", "define"); - subst("cudaCpuDeviceId", "hipCpuDeviceId", "define"); - subst("cudaDeviceBlockingSync", "hipDeviceScheduleBlockingSync", "define"); - subst("cudaDeviceLmemResizeToMax", "hipDeviceLmemResizeToMax", "define"); - subst("cudaDeviceMapHost", "hipDeviceMapHost", "define"); - subst("cudaDeviceScheduleAuto", "hipDeviceScheduleAuto", "define"); - subst("cudaDeviceScheduleBlockingSync", "hipDeviceScheduleBlockingSync", "define"); - subst("cudaDeviceScheduleMask", "hipDeviceScheduleMask", "define"); - subst("cudaDeviceScheduleSpin", "hipDeviceScheduleSpin", "define"); - subst("cudaDeviceScheduleYield", "hipDeviceScheduleYield", "define"); - subst("cudaEventBlockingSync", "hipEventBlockingSync", "define"); - subst("cudaEventDefault", "hipEventDefault", "define"); - subst("cudaEventDisableTiming", "hipEventDisableTiming", "define"); - subst("cudaEventInterprocess", "hipEventInterprocess", "define"); - subst("cudaExternalMemoryDedicated", "hipExternalMemoryDedicated", "define"); - subst("cudaGraphKernelNodePortDefault", "hipGraphKernelNodePortDefault", "define"); - subst("cudaGraphKernelNodePortLaunchCompletion", "hipGraphKernelNodePortLaunchCompletion", "define"); - subst("cudaGraphKernelNodePortProgrammatic", "hipGraphKernelNodePortProgrammatic", "define"); - subst("cudaHostAllocDefault", "hipHostMallocDefault", "define"); - subst("cudaHostAllocMapped", "hipHostMallocMapped", "define"); - subst("cudaHostAllocPortable", "hipHostMallocPortable", "define"); - subst("cudaHostAllocWriteCombined", "hipHostMallocWriteCombined", "define"); - subst("cudaHostRegisterDefault", "hipHostRegisterDefault", "define"); - subst("cudaHostRegisterIoMemory", "hipHostRegisterIoMemory", "define"); - subst("cudaHostRegisterMapped", "hipHostRegisterMapped", "define"); - subst("cudaHostRegisterPortable", "hipHostRegisterPortable", "define"); - subst("cudaHostRegisterReadOnly", "hipHostRegisterReadOnly", "define"); - subst("cudaInvalidDeviceId", "hipInvalidDeviceId", "define"); - subst("cudaIpcMemLazyEnablePeerAccess", "hipIpcMemLazyEnablePeerAccess", "define"); - subst("cudaMemAttachGlobal", "hipMemAttachGlobal", "define"); - subst("cudaMemAttachHost", "hipMemAttachHost", "define"); - subst("cudaMemAttachSingle", "hipMemAttachSingle", "define"); - subst("cudaOccupancyDefault", "hipOccupancyDefault", "define"); - subst("cudaOccupancyDisableCachingOverride", "hipOccupancyDisableCachingOverride", "define"); - subst("cudaStreamDefault", "hipStreamDefault", "define"); - subst("cudaStreamLegacy", "hipStreamLegacy", "define"); - subst("cudaStreamNonBlocking", "hipStreamNonBlocking", "define"); - subst("cudaStreamPerThread", "hipStreamPerThread", "define"); - subst("cudaTextureType1D", "hipTextureType1D", "define"); - subst("cudaTextureType1DLayered", "hipTextureType1DLayered", "define"); - subst("cudaTextureType2D", "hipTextureType2D", "define"); - subst("cudaTextureType2DLayered", "hipTextureType2DLayered", "define"); - subst("cudaTextureType3D", "hipTextureType3D", "define"); - subst("cudaTextureTypeCubemap", "hipTextureTypeCubemap", "define"); - subst("cudaTextureTypeCubemapLayered", "hipTextureTypeCubemapLayered", "define"); -} - -# CUDA Kernel Launch Syntax -sub transformKernelLaunch { - no warnings qw/uninitialized/; - my $k = 0; - - # kern<...><<>>() syntax - $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, $5, $6)/g; - # kern<...><<>>(...) syntax - $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, $5, $6, /g; - # kern<<>>() syntax - $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL($1, $2, $3, $4, $5)/g; - # kern<<>>(...) syntax - $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL($1, $2, $3, $4, $5, /g; - - # kern<...><<>>() syntax - $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, $5, 0)/g; - # kern<...><<>>(...) syntax - $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, $5, 0, /g; - # kern<<>>() syntax - $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL($1, $2, $3, $4, 0)/g; - # kern<<>>(...) syntax - $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL($1, $2, $3, $4, 0, /g; - - # kern<...><<>>() syntax - $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, 0, 0)/g; - # kern<...><<>>(...) syntax - $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, 0, 0, /g; - # kern<<>>() syntax - $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL($1, $2, $3, 0, 0)/g; - # kern<<>>(...) syntax - $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL($1, $2, $3, 0, 0, /g; - - if ($k) { - $ft{'kernel_launch'} += $k; - $Tkernels{$1}++; - } -} - -sub transformCubNamespace { - my $k = 0; - $k += s/using\s*namespace\s*cub/using namespace hipcub/g; - $k += s/\bcub::\b/hipcub::/g; - return $k; -} - -sub transformHostFunctions { - my $k = 0; - foreach $func ( - "hipMemcpyToSymbol", - "hipMemcpyToSymbolAsync" - ) - { - $k += s/(?\($2\),/g; - } - foreach $func ( - "hipFuncGetAttributes" - ) - { - $k += s/(?\($4\)$5/g; - } - foreach $func ( - "hipGraphExecMemcpyNodeSetParamsToSymbol", - "hipGraphMemcpyNodeSetParamsFromSymbol" - ) - { - $k += s/(?<<>>() syntax + $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, $5, $6)/g; + # kern<...><<>>(...) syntax + $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, $5, $6, /g; + # kern<<>>() syntax + $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL($1, $2, $3, $4, $5)/g; + # kern<<>>(...) syntax + $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL($1, $2, $3, $4, $5, /g; + + # kern<...><<>>() syntax + $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, $5, 0)/g; + # kern<...><<>>(...) syntax + $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, $5, 0, /g; + # kern<<>>() syntax + $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL($1, $2, $3, $4, 0)/g; + # kern<<>>(...) syntax + $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL($1, $2, $3, $4, 0, /g; + + # kern<...><<>>() syntax + $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, 0, 0)/g; + # kern<...><<>>(...) syntax + $k += s/([:|\w]+)\s*<(.+)>\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL(HIP_KERNEL_NAME($1<$2>), $3, $4, 0, 0, /g; + # kern<<>>() syntax + $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(\s*\)/hipLaunchKernelGGL($1, $2, $3, 0, 0)/g; + # kern<<>>(...) syntax + $k += s/([:|\w]+)\s*<<<\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*,\s*([^,\(\)]+|[\w\s:]*\([\w|\s|,|:|\+|\*|\-|\/|(?R)]+\))\s*>>>\s*\(/hipLaunchKernelGGL($1, $2, $3, 0, 0, /g; + + if ($k) { + $ft{'kernel_launch'} += $k; + $Tkernels{$1}++; + } +} + +sub transformCubNamespace { + my $k = 0; + $k += s/using\s*namespace\s*cub/using namespace hipcub/g; + $k += s/\bcub::\b/hipcub::/g; + return $k; +} + +sub transformHostFunctions { + my $k = 0; + foreach $func ( + "hipMemcpyToSymbol", + "hipMemcpyToSymbolAsync" + ) + { + $k += s/(?\($2\),/g; + } + foreach $func ( + "hipFuncGetAttributes" + ) + { + $k += s/(?\($4\)$5/g; + } + foreach $func ( + "hipGraphExecMemcpyNodeSetParamsToSymbol", + "hipGraphMemcpyNodeSetParamsFromSymbol" + ) + { + $k += s/(?`_ of at least version `4.0.0 `_; the latest stable and recommended release: - `19.1.3 `_. + `19.1.5 `_. * `CUDA `_ of at least version `7.0 `_, the latest supported version is - `12.6.2 `_. + `12.6.3 `_. .. list-table:: @@ -187,8 +187,10 @@ Dependencies * - `19.1.0 `_, `19.1.1 `_, `19.1.2 `_, - `19.1.3 `_:sup:`4` - - `12.6.2 `_:sup:`4` + `19.1.3 `_, + `19.1.4 `_, + `19.1.5 `_:sup:`4` + - `12.6.3 `_:sup:`4` - **Latest stable config** - **Latest stable config** @@ -230,7 +232,7 @@ Dependencies In most cases, you can get a suitable version of ``LLVM+Clang`` with your package manager. However, you can also `download a release archive `_ and build or install it. In case of multiple versions of ``LLVM`` installed, set `CMAKE_PREFIX_PATH `_ so that -``CMake`` can find the desired version of ``LLVM``. For example, ``-DCMAKE_PREFIX_PATH=D:\LLVM\19.1.3\dist``. +``CMake`` can find the desired version of ``LLVM``. For example, ``-DCMAKE_PREFIX_PATH=D:\LLVM\19.1.5\dist``. Usage ============================================================ @@ -263,7 +265,7 @@ header files used during the hipification process: .. code:: shell - ./hipify-clang square.cu --cuda-path=/usr/local/cuda-12.6 --clang-resource-directory=/usr/llvm/19.1.3/dist/lib/clang/19 + ./hipify-clang square.cu --cuda-path=/usr/local/cuda-12.6 --clang-resource-directory=/usr/llvm/19.1.5/dist/lib/clang/19 For more information, refer to the `Clang manual for compiling CUDA `_. @@ -400,7 +402,7 @@ To ensure LLVM being found or in case of multiple LLVM instances, specify the pa .. code-block:: bash - -DCMAKE_PREFIX_PATH=/usr/llvm/19.1.3/dist + -DCMAKE_PREFIX_PATH=/usr/llvm/19.1.5/dist On Windows, specify the following option for CMake in the first place: ``-G "Visual Studio 17 2022"``. @@ -474,7 +476,7 @@ LLVM <= 9.0.1 LLVM >= 10.0.0 ----------------- -1. Download `LLVM project `_ sources. +1. Download `LLVM project `_ sources. 2. Build `LLVM project `_: @@ -548,7 +550,7 @@ LLVM >= 10.0.0 .. code-block:: shell - -DCUDA_DNN_ROOT_DIR=D:/CUDA/cuDNN/9.5.1 + -DCUDA_DNN_ROOT_DIR=D:/CUDA/cuDNN/9.6.0 5. [Optional] Install `CUB 1.9.8 `_ for ``CUDA < 11.0`` only; for ``CUDA >= 11.0``, the CUB shipped with CUDA will be used for testing. @@ -577,13 +579,13 @@ LLVM >= 10.0.0 .. code-block:: bash - python /usr/llvm/19.1.3/llvm-project/llvm/utils/lit/setup.py install + python /usr/llvm/19.1.5/llvm-project/llvm/utils/lit/setup.py install **Windows**: .. code-block:: shell - python D:/LLVM/19.1.3/llvm-project/llvm/utils/lit/setup.py install + python D:/LLVM/19.1.5/llvm-project/llvm/utils/lit/setup.py install In case of errors similar to ``ModuleNotFoundError: No module named 'setuptools'``, upgrade the ``setuptools`` package: @@ -597,23 +599,23 @@ LLVM >= 10.0.0 .. code-block:: bash - -DLLVM_EXTERNAL_LIT=/usr/llvm/19.1.3/build/bin/llvm-lit + -DLLVM_EXTERNAL_LIT=/usr/llvm/19.1.5/build/bin/llvm-lit **Windows**: .. code-block:: shell - -DLLVM_EXTERNAL_LIT=D:/LLVM/19.1.3/build/Release/bin/llvm-lit.py + -DLLVM_EXTERNAL_LIT=D:/LLVM/19.1.5/build/Release/bin/llvm-lit.py * ``FileCheck``: **Linux**: - Copy from ``/usr/llvm/19.1.3/build/bin/`` to ``CMAKE_INSTALL_PREFIX/dist/bin``. + Copy from ``/usr/llvm/19.1.5/build/bin/`` to ``CMAKE_INSTALL_PREFIX/dist/bin``. **Windows**: - Copy from ``D:/LLVM/19.1.3/build/Release/bin`` to ``CMAKE_INSTALL_PREFIX/dist/bin``. + Copy from ``D:/LLVM/19.1.5/build/Release/bin`` to ``CMAKE_INSTALL_PREFIX/dist/bin``. Alternatively, specify the path to ``FileCheck`` in the ``CMAKE_INSTALL_PREFIX`` option. @@ -640,8 +642,8 @@ On Linux, the following configurations are tested: * Ubuntu 14: LLVM 4.0.0 - 7.1.0, CUDA 7.0 - 9.0, cuDNN 5.0.5 - 7.6.5 * Ubuntu 16-19: LLVM 8.0.0 - 14.0.6, CUDA 7.0 - 10.2, cuDNN 5.1.10 - 8.0.5 -* Ubuntu 20-21: LLVM 9.0.0 - 19.1.3, CUDA 7.0 - 12.6.2, cuDNN 5.1.10 - 9.5.1 -* Ubuntu 22-23: LLVM 13.0.0 - 19.1.3, CUDA 7.0 - 12.6.2, cuDNN 8.0.5 - 9.5.1 +* Ubuntu 20-21: LLVM 9.0.0 - 19.1.5, CUDA 7.0 - 12.6.3, cuDNN 5.1.10 - 9.6.0 +* Ubuntu 22-23: LLVM 13.0.0 - 19.1.5, CUDA 7.0 - 12.6.3, cuDNN 8.0.5 - 9.6.0 Minimum build system requirements for the above configurations: @@ -649,7 +651,7 @@ Minimum build system requirements for the above configurations: Recommended build system requirements: -* CMake 3.31.0, GNU C/C++ 13.2, Python 3.13.0. +* CMake 3.31.2, GNU C/C++ 13.2, Python 3.13.1. Here's how to build ``hipify-clang`` with testing support on ``Ubuntu 23.10.01``: @@ -659,10 +661,10 @@ Here's how to build ``hipify-clang`` with testing support on ``Ubuntu 23.10.01`` -DHIPIFY_CLANG_TESTS=ON \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=../dist \ - -DCMAKE_PREFIX_PATH=/usr/llvm/19.1.3/dist \ - -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-12.6.2 \ - -DCUDA_DNN_ROOT_DIR=/usr/local/cudnn-9.5.1 \ - -DLLVM_EXTERNAL_LIT=/usr/llvm/19.1.3/build/bin/llvm-lit \ + -DCMAKE_PREFIX_PATH=/usr/llvm/19.1.5/dist \ + -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-12.6.3 \ + -DCUDA_DNN_ROOT_DIR=/usr/local/cudnn-9.6.0 \ + -DLLVM_EXTERNAL_LIT=/usr/llvm/19.1.5/build/bin/llvm-lit \ ../hipify The corresponding successful output is: @@ -686,30 +688,30 @@ The corresponding successful output is: -- - Test hipify-clang : ON -- - Is part of HIP SDK : OFF -- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.13") - -- Found LLVM 19.1.3: - -- - CMake module path : /usr/llvm/19.1.3/dist/lib/cmake/llvm - -- - Clang include path : /usr/llvm/19.1.3/dist/include - -- - LLVM Include path : /usr/llvm/19.1.3/dist/include - -- - Binary path : /usr/llvm/19.1.3/dist/bin + -- Found LLVM 19.1.5: + -- - CMake module path : /usr/llvm/19.1.5/dist/lib/cmake/llvm + -- - Clang include path : /usr/llvm/19.1.5/dist/include + -- - LLVM Include path : /usr/llvm/19.1.5/dist/include + -- - Binary path : /usr/llvm/19.1.5/dist/bin -- Linker detection: GNU ld -- ---- The below configuring for hipify-clang testing only ---- - -- Found Python: /usr/bin/python3.13 (found version "3.13.0") found components: Interpreter + -- Found Python: /usr/bin/python3.13 (found suitable version "3.13.1", required range is "3.0...3.14") found components: Interpreter -- Found lit: /usr/local/bin/lit -- Found FileCheck: /GIT/LLVM/trunk/dist/FileCheck -- Initial CUDA to configure: - -- - CUDA Toolkit path : /usr/local/cuda-12.6.2 + -- - CUDA Toolkit path : /usr/local/cuda-12.6.3 -- - CUDA Samples path : - -- - cuDNN path : /usr/local/cudnn-9.5.1 + -- - cuDNN path : /usr/local/cudnn-9.6.0 -- - CUB path : - -- Found CUDAToolkit: /usr/local/cuda-12.6.2/targets/x86_64-linux/include (found version "12.6.68") + -- Found CUDAToolkit: /usr/local/cuda-12.6.3/targets/x86_64-linux/include (found version "12.6.85") -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Found CUDA config: - -- - CUDA Toolkit path : /usr/local/cuda-12.6.2 + -- - CUDA Toolkit path : /usr/local/cuda-12.6.3 -- - CUDA Samples path : OFF - -- - cuDNN path : /usr/local/cudnn-9.5.1 - -- - CUB path : /usr/local/cuda-12.6.2/include/cub + -- - cuDNN path : /usr/local/cudnn-9.6.0 + -- - CUB path : /usr/local/cuda-12.6.3/include/cub -- Configuring done (0.5s) -- Generating done (0.0s) -- Build files have been written to: /usr/hipify/build @@ -724,12 +726,12 @@ The corresponding successful output is: Running HIPify regression tests =============================================================== - CUDA 12.6.68 - will be used for testing - LLVM 19.1.3 - will be used for testing + CUDA 12.6.85 - will be used for testing + LLVM 19.1.5 - will be used for testing x86_64 - Platform architecture Linux 6.5.0-15-generic - Platform OS 64 - hipify-clang binary bitness - 64 - python 3.13.0 binary bitness + 64 - python 3.13.1 binary bitness =============================================================== -- Testing: 106 tests, 12 threads -- Testing Time: 6.91s @@ -821,16 +823,16 @@ Tested configurations: - ``3.11.4`` * - ``17.0.1`` :sup:`6` - ``18.1.8`` :sup:`7` - ``7.0 - 12.3.2`` - - ``8.0.5 - 9.5.1`` - - ``2019.16.11.42, 2022.17.11.6`` - - ``3.31.0`` - - ``3.13.0`` - * - ``19.1.0 - 19.1.3`` - - ``7.0 - 12.6.2`` - - ``8.0.5 - 9.5.1`` - - ``2019.16.11.42, 2022.17.11.6`` - - ``3.31.0`` - - ``3.13.0`` + - ``8.0.5 - 9.6.0`` + - ``2019.16.11.42, 2022.17.12.3`` + - ``3.31.2`` + - ``3.13.1`` + * - ``19.1.0 - 19.1.5`` + - ``7.0 - 12.6.3`` + - ``8.0.5 - 9.6.0`` + - ``2019.16.11.42, 2022.17.12.3`` + - ``3.31.2`` + - ``3.13.1`` :sup:`5` LLVM 14.x.x is the latest major release supporting Visual Studio 2017. @@ -855,11 +857,11 @@ Building with testing support using ``Visual Studio 17 2022`` on ``Windows 11``: -DHIPIFY_CLANG_TESTS=ON \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=../dist \ - -DCMAKE_PREFIX_PATH=D:/LLVM/19.1.3/dist \ + -DCMAKE_PREFIX_PATH=D:/LLVM/19.1.5/dist \ -DCUDA_TOOLKIT_ROOT_DIR="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.6" \ -DCUDA_SDK_ROOT_DIR="C:/ProgramData/NVIDIA Corporation/CUDA Samples/v12.5" \ - -DCUDA_DNN_ROOT_DIR=D:/CUDA/cuDNN/9.5.1 \ - -DLLVM_EXTERNAL_LIT=D:/LLVM/19.1.3/build/Release/bin/llvm-lit.py \ + -DCUDA_DNN_ROOT_DIR=D:/CUDA/cuDNN/9.6.0 \ + -DLLVM_EXTERNAL_LIT=D:/LLVM/19.1.5/build/Release/bin/llvm-lit.py \ ../hipify The corresponding successful output is: @@ -883,25 +885,25 @@ The corresponding successful output is: -- - Build hipify-clang : ON -- - Test hipify-clang : ON -- - Is part of HIP SDK : OFF - -- Found LLVM 19.1.3: - -- - CMake module path : D:/LLVM/19.1.3/dist/lib/cmake/llvm - -- - Clang include path : D:/LLVM/19.1.3/dist/include - -- - LLVM Include path : D:/LLVM/19.1.3/dist/include - -- - Binary path : D:/LLVM/19.1.3/dist/bin + -- Found LLVM 19.1.5: + -- - CMake module path : D:/LLVM/19.1.5/dist/lib/cmake/llvm + -- - Clang include path : D:/LLVM/19.1.5/dist/include + -- - LLVM Include path : D:/LLVM/19.1.5/dist/include + -- - Binary path : D:/LLVM/19.1.5/dist/bin -- ---- The below configuring for hipify-clang testing only ---- - -- Found Python: C:/Users/TT/AppData/Local/Programs/Python/Python313/python.exe (found version "3.13.0") found components: Interpreter + -- Found Python: C:/Users/evgen/AppData/Local/Programs/Python/Python313/python.exe (found suitable version "3.13.1", required range is "3.0...3.14") found components: Interpreter -- Found lit: C:/Users/TT/AppData/Local/Programs/Python/Python313/Scripts/lit.exe - -- Found FileCheck: D:/LLVM/19.1.3/dist/bin/FileCheck.exe + -- Found FileCheck: D:/LLVM/19.1.5/dist/bin/FileCheck.exe -- Initial CUDA to configure: -- - CUDA Toolkit path : C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.6 -- - CUDA Samples path : C:/ProgramData/NVIDIA Corporation/CUDA Samples/v12.5 - -- - cuDNN path : D:/CUDA/cuDNN/9.5.1 + -- - cuDNN path : D:/CUDA/cuDNN/9.6.0 -- - CUB path : - -- Found CUDAToolkit: C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.6/include (found version "12.6.68") + -- Found CUDAToolkit: C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.6/include (found version "12.6.85") -- Found CUDA config: -- - CUDA Toolkit path : C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.6 -- - CUDA Samples path : C:/ProgramData/NVIDIA Corporation/CUDA Samples/v12.5 - -- - cuDNN path : D:/CUDA/cuDNN/9.5.1 + -- - cuDNN path : D:/CUDA/cuDNN/9.6.0 -- - CUB path : C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.6/include/cub -- Configuring done (2.1s) -- Generating done (0.1s) diff --git a/docs/index.rst b/docs/index.rst index 659f8769..2f3ebcbf 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -12,7 +12,7 @@ HIPIFY documentation .. note:: - `hipify_torch `_ is a related tool that also translates CUDA source code into portable HIP C++. It was initially developed as part of the PyTorch project to cater to the project's unique requirements but was found to be useful for PyTorch-related projects and thus was released as an independent utility. + `hipify_torch `_ is a related tool that also translates CUDA source code into portable HIP C++. It was initially developed as part of the PyTorch project to cater to the project's unique requirements but was found to be useful for PyTorch-related projects and thus was released as an independent utility. You can access HIPIFY code on our `GitHub repository `_. diff --git a/docs/sphinx/requirements.in b/docs/sphinx/requirements.in index 7576b679..89fa3e55 100644 --- a/docs/sphinx/requirements.in +++ b/docs/sphinx/requirements.in @@ -1 +1 @@ -rocm-docs-core==1.8.3 +rocm-docs-core==1.12.0 diff --git a/docs/sphinx/requirements.txt b/docs/sphinx/requirements.txt index 1abfa146..3da6c8bf 100644 --- a/docs/sphinx/requirements.txt +++ b/docs/sphinx/requirements.txt @@ -92,7 +92,7 @@ requests==2.32.2 # via # pygithub # sphinx -rocm-docs-core==1.8.3 +rocm-docs-core==1.12.0 # via -r requirements.in smmap==5.0.1 # via gitdb diff --git a/docs/supported_apis.md b/docs/supported_apis.md index f27a70cc..dee56e83 100644 --- a/docs/supported_apis.md +++ b/docs/supported_apis.md @@ -1,18 +1,18 @@ # Supported NVIDIA CUDA APIs -| **CUDA** | **HIP** | **ROC** | **HIP & ROC** | -|:----------------|:---------------------------------------------------------------------|:---------------|:----------------------------| -| CUDA Runtime API | [HIP API](tables/CUDA_Runtime_API_functions_supported_by_HIP.md) | | | -| CUDA Driver API | [HIP API](tables/CUDA_Driver_API_functions_supported_by_HIP.md) | | | -| CUComplex API | [HIP API](tables/cuComplex_API_supported_by_HIP.md) | | | -| CUDA Device API | [HIP Device API](tables/CUDA_Device_API_supported_by_HIP.md) | | | -| CUDA RTC API | [HIP RTC API](tables/CUDA_RTC_API_supported_by_HIP.md) | | | -| CUBLAS API | [HIP BLAS API](tables/CUBLAS_API_supported_by_HIP.md) | [ROC BLAS API](tables/CUBLAS_API_supported_by_ROC.md) | [HIP + ROC BLAS API](tables/CUBLAS_API_supported_by_HIP_and_ROC.md) | -| CUSPARSE API | [HIP SPARSE API](tables/CUSPARSE_API_supported_by_HIP.md) | [ROC SPARSE API](tables/CUSPARSE_API_supported_by_ROC.md) | [HIP + ROC SPARSE API](tables/CUSPARSE_API_supported_by_HIP_and_ROC.md) | -| CUSOLVER API | [HIP SOLVER API](tables/CUSOLVER_API_supported_by_HIP.md) | | | -| CURAND API | [HIP RAND API](tables/CURAND_API_supported_by_HIP.md) |[ROC RAND API](tables/CURAND_API_supported_by_ROC.md) | [HIP + ROC RAND API](tables/CURAND_API_supported_by_HIP_and_ROC.md) | -| CUFFT API | [HIP FFT API](tables/CUFFT_API_supported_by_HIP.md) | | | -| CUDNN API | [HIP DNN API](tables/CUDNN_API_supported_by_HIP.md) | | | -| CUB API | [HIP CUB API](tables/CUB_API_supported_by_HIP.md) | | | +| **CUDA** | **HIP** | **ROC** | **HIP & ROC** | +|:-----------------|:------------------------------------------------------------------|:----------------------------------------------------------|:------------------------------------------------------------------------| +| CUDA Runtime API | [HIP API](tables/CUDA_Runtime_API_functions_supported_by_HIP.md) | | | +| CUDA Driver API | [HIP API](tables/CUDA_Driver_API_functions_supported_by_HIP.md) | | | +| CUComplex API | [HIP API](tables/cuComplex_API_supported_by_HIP.md) | | | +| CUDA Device API | [HIP Device API](tables/CUDA_Device_API_supported_by_HIP.md) | | | +| CUDA RTC API | [HIP RTC API](tables/CUDA_RTC_API_supported_by_HIP.md) | | | +| CUBLAS API | [HIP BLAS API](tables/CUBLAS_API_supported_by_HIP.md) | [ROC BLAS API](tables/CUBLAS_API_supported_by_ROC.md) | [HIP + ROC BLAS API](tables/CUBLAS_API_supported_by_HIP_and_ROC.md) | +| CUSPARSE API | [HIP SPARSE API](tables/CUSPARSE_API_supported_by_HIP.md) | [ROC SPARSE API](tables/CUSPARSE_API_supported_by_ROC.md) | [HIP + ROC SPARSE API](tables/CUSPARSE_API_supported_by_HIP_and_ROC.md) | +| CUSOLVER API | [HIP SOLVER API](tables/CUSOLVER_API_supported_by_HIP.md) | | | +| CURAND API | [HIP RAND API](tables/CURAND_API_supported_by_HIP.md) | [ROC RAND API](tables/CURAND_API_supported_by_ROC.md) | [HIP + ROC RAND API](tables/CURAND_API_supported_by_HIP_and_ROC.md) | +| CUFFT API | [HIP FFT API](tables/CUFFT_API_supported_by_HIP.md) | | | +| CUDNN API | [HIP DNN API](tables/CUDNN_API_supported_by_HIP.md) | [MIOPEN API](tables/CUDNN_API_supported_by_MIOPEN.md) | [HIP + MIOPEN API](tables/CUDNN_API_supported_by_HIP_and_MIOPEN.md) | +| CUB API | [HIP CUB API](tables/CUB_API_supported_by_HIP.md) | | | -To generate the above documentation with the information about all supported CUDA APIs in Markdown format, run `hipify-clang --md` with or without specifying the output directory (`-o`). +To generate the above documentation with the information about all supported CUDA APIs in Markdown format, run `hipify-clang --md --doc-format=full` with or without specifying the output directory (`-o`), for HIP and ROC separately `--doc-roc=separate` or in the joint format (ROC & HIP) `--doc-roc=joint`. diff --git a/docs/tables/CUBLAS_API_supported_by_HIP.md b/docs/tables/CUBLAS_API_supported_by_HIP.md index ed8ba957..8ce937bd 100644 --- a/docs/tables/CUBLAS_API_supported_by_HIP.md +++ b/docs/tables/CUBLAS_API_supported_by_HIP.md @@ -1623,88 +1623,88 @@ |`cublasCgemm3mStridedBatched_64`|12.0| | | | | | | | | | |`cublasCgemm3m_64`|12.0| | | | | | | | | | |`cublasCgemmBatched`| | | | |`hipblasCgemmBatched_v2`|6.0.0| | | | | -|`cublasCgemmBatched_64`|12.0| | | |`hipblasCgemmBatched_v2_64`|6.3.0| | | |6.3.0| +|`cublasCgemmBatched_64`|12.0| | | |`hipblasCgemmBatched_v2_64`|6.3.0| | | | | |`cublasCgemmStridedBatched`|8.0| | | |`hipblasCgemmStridedBatched_v2`|6.0.0| | | | | -|`cublasCgemmStridedBatched_64`|12.0| | | |`hipblasCgemmStridedBatched_v2_64`|6.3.0| | | |6.3.0| -|`cublasCgemm_64`|12.0| | | |`hipblasCgemm_v2_64`|6.3.0| | | |6.3.0| +|`cublasCgemmStridedBatched_64`|12.0| | | |`hipblasCgemmStridedBatched_v2_64`|6.3.0| | | | | +|`cublasCgemm_64`|12.0| | | |`hipblasCgemm_v2_64`|6.3.0| | | | | |`cublasCgemm_v2`| | | | |`hipblasCgemm_v2`|6.0.0| | | | | -|`cublasCgemm_v2_64`|12.0| | | |`hipblasCgemm_v2_64`|6.3.0| | | |6.3.0| +|`cublasCgemm_v2_64`|12.0| | | |`hipblasCgemm_v2_64`|6.3.0| | | | | |`cublasCgemvBatched`|11.6| | | |`hipblasCgemvBatched_v2`|6.0.0| | | | | |`cublasCgemvBatched_64`|12.0| | | |`hipblasCgemvBatched_v2_64`|6.2.0| | | | | |`cublasCgemvStridedBatched`|11.6| | | |`hipblasCgemvStridedBatched_v2`|6.0.0| | | | | |`cublasCgemvStridedBatched_64`|12.0| | | |`hipblasCgemvStridedBatched_v2_64`|6.2.0| | | | | |`cublasChemm`| | | | |`hipblasChemm_v2`|6.0.0| | | | | -|`cublasChemm_64`|12.0| | | |`hipblasChemm_v2_64`|6.3.0| | | |6.3.0| +|`cublasChemm_64`|12.0| | | |`hipblasChemm_v2_64`|6.3.0| | | | | |`cublasChemm_v2`| | | | |`hipblasChemm_v2`|6.0.0| | | | | -|`cublasChemm_v2_64`|12.0| | | |`hipblasChemm_v2_64`|6.3.0| | | |6.3.0| +|`cublasChemm_v2_64`|12.0| | | |`hipblasChemm_v2_64`|6.3.0| | | | | |`cublasCher2k`| | | | |`hipblasCher2k_v2`|6.0.0| | | | | -|`cublasCher2k_64`|12.0| | | |`hipblasCher2k_v2_64`|6.3.0| | | |6.3.0| +|`cublasCher2k_64`|12.0| | | |`hipblasCher2k_v2_64`|6.3.0| | | | | |`cublasCher2k_v2`| | | | |`hipblasCher2k_v2`|6.0.0| | | | | -|`cublasCher2k_v2_64`|12.0| | | |`hipblasCher2k_v2_64`|6.3.0| | | |6.3.0| +|`cublasCher2k_v2_64`|12.0| | | |`hipblasCher2k_v2_64`|6.3.0| | | | | |`cublasCherk`| | | | |`hipblasCherk_v2`|6.0.0| | | | | -|`cublasCherk_64`|12.0| | | |`hipblasCherk_v2_64`|6.3.0| | | |6.3.0| +|`cublasCherk_64`|12.0| | | |`hipblasCherk_v2_64`|6.3.0| | | | | |`cublasCherk_v2`| | | | |`hipblasCherk_v2`|6.0.0| | | | | -|`cublasCherk_v2_64`|12.0| | | |`hipblasCherk_v2_64`|6.3.0| | | |6.3.0| +|`cublasCherk_v2_64`|12.0| | | |`hipblasCherk_v2_64`|6.3.0| | | | | |`cublasCherkx`| | | | |`hipblasCherkx_v2`|6.0.0| | | | | -|`cublasCherkx_64`|12.0| | | |`hipblasCherkx_v2_64`|6.3.0| | | |6.3.0| +|`cublasCherkx_64`|12.0| | | |`hipblasCherkx_v2_64`|6.3.0| | | | | |`cublasCsymm`| | | | |`hipblasCsymm_v2`|6.0.0| | | | | -|`cublasCsymm_64`|12.0| | | |`hipblasCsymm_v2_64`|6.3.0| | | |6.3.0| +|`cublasCsymm_64`|12.0| | | |`hipblasCsymm_v2_64`|6.3.0| | | | | |`cublasCsymm_v2`| | | | |`hipblasCsymm_v2`|6.0.0| | | | | -|`cublasCsymm_v2_64`|12.0| | | |`hipblasCsymm_v2_64`|6.3.0| | | |6.3.0| +|`cublasCsymm_v2_64`|12.0| | | |`hipblasCsymm_v2_64`|6.3.0| | | | | |`cublasCsyr2k`| | | | |`hipblasCsyr2k_v2`|6.0.0| | | | | -|`cublasCsyr2k_64`|12.0| | | |`hipblasCsyr2k_v2_64`|6.3.0| | | |6.3.0| +|`cublasCsyr2k_64`|12.0| | | |`hipblasCsyr2k_v2_64`|6.3.0| | | | | |`cublasCsyr2k_v2`| | | | |`hipblasCsyr2k_v2`|6.0.0| | | | | -|`cublasCsyr2k_v2_64`|12.0| | | |`hipblasCsyr2k_v2_64`|6.3.0| | | |6.3.0| +|`cublasCsyr2k_v2_64`|12.0| | | |`hipblasCsyr2k_v2_64`|6.3.0| | | | | |`cublasCsyrk`| | | | |`hipblasCsyrk_v2`|6.0.0| | | | | -|`cublasCsyrk_64`|12.0| | | |`hipblasCsyrk_v2_64`|6.3.0| | | |6.3.0| +|`cublasCsyrk_64`|12.0| | | |`hipblasCsyrk_v2_64`|6.3.0| | | | | |`cublasCsyrk_v2`| | | | |`hipblasCsyrk_v2`|6.0.0| | | | | -|`cublasCsyrk_v2_64`|12.0| | | |`hipblasCsyrk_v2_64`|6.3.0| | | |6.3.0| +|`cublasCsyrk_v2_64`|12.0| | | |`hipblasCsyrk_v2_64`|6.3.0| | | | | |`cublasCsyrkx`| | | | |`hipblasCsyrkx_v2`|6.0.0| | | | | -|`cublasCsyrkx_64`|12.0| | | |`hipblasCsyrkx_v2_64`|6.3.0| | | |6.3.0| +|`cublasCsyrkx_64`|12.0| | | |`hipblasCsyrkx_v2_64`|6.3.0| | | | | |`cublasCtrmm`| | | | |`hipblasCtrmm_v2`|6.0.0| | | | | -|`cublasCtrmm_64`|12.0| | | |`hipblasCtrmm_v2_64`|6.3.0| | | |6.3.0| +|`cublasCtrmm_64`|12.0| | | |`hipblasCtrmm_v2_64`|6.3.0| | | | | |`cublasCtrmm_v2`| | | | |`hipblasCtrmm_v2`|6.0.0| | | | | -|`cublasCtrmm_v2_64`|12.0| | | |`hipblasCtrmm_v2_64`|6.3.0| | | |6.3.0| +|`cublasCtrmm_v2_64`|12.0| | | |`hipblasCtrmm_v2_64`|6.3.0| | | | | |`cublasCtrsm`| | | | |`hipblasCtrsm_v2`|6.0.0| | | | | -|`cublasCtrsm_64`|12.0| | | |`hipblasCtrsm_v2_64`|6.3.0| | | |6.3.0| +|`cublasCtrsm_64`|12.0| | | |`hipblasCtrsm_v2_64`|6.3.0| | | | | |`cublasCtrsm_v2`| | | | |`hipblasCtrsm_v2`|6.0.0| | | | | -|`cublasCtrsm_v2_64`|12.0| | | |`hipblasCtrsm_v2_64`|6.3.0| | | |6.3.0| +|`cublasCtrsm_v2_64`|12.0| | | |`hipblasCtrsm_v2_64`|6.3.0| | | | | |`cublasDgemm`| | | | |`hipblasDgemm`|1.8.2| | | | | |`cublasDgemmBatched`| | | | |`hipblasDgemmBatched`|1.8.2| | | | | -|`cublasDgemmBatched_64`|12.0| | | |`hipblasDgemmBatched_64`|6.3.0| | | |6.3.0| +|`cublasDgemmBatched_64`|12.0| | | |`hipblasDgemmBatched_64`|6.3.0| | | | | |`cublasDgemmGroupedBatched`|12.4| | | | | | | | | | |`cublasDgemmGroupedBatched_64`|12.4| | | | | | | | | | |`cublasDgemmStridedBatched`|8.0| | | |`hipblasDgemmStridedBatched`|1.8.2| | | | | -|`cublasDgemmStridedBatched_64`|12.0| | | |`hipblasDgemmStridedBatched_64`|6.3.0| | | |6.3.0| -|`cublasDgemm_64`|12.0| | | |`hipblasDgemm_64`|6.3.0| | | |6.3.0| +|`cublasDgemmStridedBatched_64`|12.0| | | |`hipblasDgemmStridedBatched_64`|6.3.0| | | | | +|`cublasDgemm_64`|12.0| | | |`hipblasDgemm_64`|6.3.0| | | | | |`cublasDgemm_v2`| | | | |`hipblasDgemm`|1.8.2| | | | | -|`cublasDgemm_v2_64`|12.0| | | |`hipblasDgemm_64`|6.3.0| | | |6.3.0| +|`cublasDgemm_v2_64`|12.0| | | |`hipblasDgemm_64`|6.3.0| | | | | |`cublasDgemvBatched`|11.6| | | |`hipblasDgemvBatched`|3.0.0| | | | | |`cublasDgemvBatched_64`|12.0| | | |`hipblasDgemvBatched_64`|6.2.0| | | | | |`cublasDgemvStridedBatched`|11.6| | | |`hipblasDgemvStridedBatched`|3.0.0| | | | | |`cublasDgemvStridedBatched_64`|12.0| | | |`hipblasDgemvStridedBatched_64`|6.2.0| | | | | |`cublasDsymm`| | | | |`hipblasDsymm`|3.6.0| | | | | -|`cublasDsymm_64`|12.0| | | |`hipblasDsymm_64`|6.3.0| | | |6.3.0| +|`cublasDsymm_64`|12.0| | | |`hipblasDsymm_64`|6.3.0| | | | | |`cublasDsymm_v2`| | | | |`hipblasDsymm`|3.6.0| | | | | -|`cublasDsymm_v2_64`|12.0| | | |`hipblasDsymm_64`|6.3.0| | | |6.3.0| +|`cublasDsymm_v2_64`|12.0| | | |`hipblasDsymm_64`|6.3.0| | | | | |`cublasDsyr2k`| | | | |`hipblasDsyr2k`|3.5.0| | | | | -|`cublasDsyr2k_64`|12.0| | | |`hipblasDsyr2k_64`|6.3.0| | | |6.3.0| +|`cublasDsyr2k_64`|12.0| | | |`hipblasDsyr2k_64`|6.3.0| | | | | |`cublasDsyr2k_v2`| | | | |`hipblasDsyr2k`|3.5.0| | | | | -|`cublasDsyr2k_v2_64`|12.0| | | |`hipblasDsyr2k_64`|6.3.0| | | |6.3.0| +|`cublasDsyr2k_v2_64`|12.0| | | |`hipblasDsyr2k_64`|6.3.0| | | | | |`cublasDsyrk`| | | | |`hipblasDsyrk`|3.5.0| | | | | -|`cublasDsyrk_64`|12.0| | | |`hipblasDsyrk_64`|6.3.0| | | |6.3.0| +|`cublasDsyrk_64`|12.0| | | |`hipblasDsyrk_64`|6.3.0| | | | | |`cublasDsyrk_v2`| | | | |`hipblasDsyrk`|3.5.0| | | | | -|`cublasDsyrk_v2_64`|12.0| | | |`hipblasDsyrk_64`|6.3.0| | | |6.3.0| +|`cublasDsyrk_v2_64`|12.0| | | |`hipblasDsyrk_64`|6.3.0| | | | | |`cublasDsyrkx`| | | | |`hipblasDsyrkx`|3.5.0| | | | | -|`cublasDsyrkx_64`|12.0| | | |`hipblasDsyrkx_64`|6.3.0| | | |6.3.0| +|`cublasDsyrkx_64`|12.0| | | |`hipblasDsyrkx_64`|6.3.0| | | | | |`cublasDtrmm`| | | | |`hipblasDtrmm`|3.2.0| |6.0.0| | | -|`cublasDtrmm_64`|12.0| | | |`hipblasDtrmm_64`|6.3.0| | | |6.3.0| +|`cublasDtrmm_64`|12.0| | | |`hipblasDtrmm_64`|6.3.0| | | | | |`cublasDtrmm_v2`| | | | |`hipblasDtrmm`|3.2.0| |6.0.0| | | -|`cublasDtrmm_v2_64`|12.0| | | |`hipblasDtrmm_64`|6.3.0| | | |6.3.0| +|`cublasDtrmm_v2_64`|12.0| | | |`hipblasDtrmm_64`|6.3.0| | | | | |`cublasDtrsm`| | | | |`hipblasDtrsm`|1.8.2| | | | | -|`cublasDtrsm_64`|12.0| | | |`hipblasDtrsm_64`|6.3.0| | | |6.3.0| +|`cublasDtrsm_64`|12.0| | | |`hipblasDtrsm_64`|6.3.0| | | | | |`cublasDtrsm_v2`| | | | |`hipblasDtrsm`|1.8.2| | | | | -|`cublasDtrsm_v2_64`|12.0| | | |`hipblasDtrsm_64`|6.3.0| | | |6.3.0| +|`cublasDtrsm_v2_64`|12.0| | | |`hipblasDtrsm_64`|6.3.0| | | | | |`cublasGemmGroupedBatchedEx`|12.5| | | | | | | | | | |`cublasGemmGroupedBatchedEx_64`|12.5| | | | | | | | | | |`cublasHSHgemvBatched`|11.6| | | | | | | | | | @@ -1717,46 +1717,46 @@ |`cublasHSSgemvStridedBatched_64`|12.0| | | | | | | | | | |`cublasHgemm`|7.5| | | |`hipblasHgemm`|1.8.2| | | | | |`cublasHgemmBatched`|9.0| | | |`hipblasHgemmBatched`|3.0.0| | | | | -|`cublasHgemmBatched_64`|12.0| | | |`hipblasHgemmBatched_64`|6.3.0| | | |6.3.0| +|`cublasHgemmBatched_64`|12.0| | | |`hipblasHgemmBatched_64`|6.3.0| | | | | |`cublasHgemmStridedBatched`|8.0| | | |`hipblasHgemmStridedBatched`|3.0.0| | | | | -|`cublasHgemmStridedBatched_64`|12.0| | | |`hipblasHgemmStridedBatched_64`|6.3.0| | | |6.3.0| -|`cublasHgemm_64`|12.0| | | |`hipblasHgemm_64`|6.3.0| | | |6.3.0| +|`cublasHgemmStridedBatched_64`|12.0| | | |`hipblasHgemmStridedBatched_64`|6.3.0| | | | | +|`cublasHgemm_64`|12.0| | | |`hipblasHgemm_64`|6.3.0| | | | | |`cublasSgemm`| | | | |`hipblasSgemm`|1.8.2| | | | | |`cublasSgemmBatched`| | | | |`hipblasSgemmBatched`|1.8.2| | | | | -|`cublasSgemmBatched_64`|12.0| | | |`hipblasSgemmBatched_64`|6.3.0| | | |6.3.0| +|`cublasSgemmBatched_64`|12.0| | | |`hipblasSgemmBatched_64`|6.3.0| | | | | |`cublasSgemmGroupedBatched`|12.4| | | | | | | | | | |`cublasSgemmGroupedBatched_64`|12.4| | | | | | | | | | |`cublasSgemmStridedBatched`|8.0| | | |`hipblasSgemmStridedBatched`|1.8.2| | | | | -|`cublasSgemmStridedBatched_64`|12.0| | | |`hipblasSgemmStridedBatched_64`|6.3.0| | | |6.3.0| -|`cublasSgemm_64`|12.0| | | |`hipblasSgemm_64`|6.3.0| | | |6.3.0| +|`cublasSgemmStridedBatched_64`|12.0| | | |`hipblasSgemmStridedBatched_64`|6.3.0| | | | | +|`cublasSgemm_64`|12.0| | | |`hipblasSgemm_64`|6.3.0| | | | | |`cublasSgemm_v2`| | | | |`hipblasSgemm`|1.8.2| | | | | -|`cublasSgemm_v2_64`|12.0| | | |`hipblasSgemm_64`|6.3.0| | | |6.3.0| +|`cublasSgemm_v2_64`|12.0| | | |`hipblasSgemm_64`|6.3.0| | | | | |`cublasSgemvBatched`|11.6| | | |`hipblasSgemvBatched`|1.6.0| | | | | |`cublasSgemvBatched_64`|12.0| | | |`hipblasSgemvBatched_64`|6.2.0| | | | | |`cublasSgemvStridedBatched`|11.6| | | |`hipblasSgemvStridedBatched`|3.0.0| | | | | |`cublasSgemvStridedBatched_64`|12.0| | | |`hipblasSgemvStridedBatched_64`|6.2.0| | | | | |`cublasSsymm`| | | | |`hipblasSsymm`|3.6.0| | | | | -|`cublasSsymm_64`|12.0| | | |`hipblasSsymm_64`|6.3.0| | | |6.3.0| +|`cublasSsymm_64`|12.0| | | |`hipblasSsymm_64`|6.3.0| | | | | |`cublasSsymm_v2`| | | | |`hipblasSsymm`|3.6.0| | | | | -|`cublasSsymm_v2_64`|12.0| | | |`hipblasSsymm_64`|6.3.0| | | |6.3.0| +|`cublasSsymm_v2_64`|12.0| | | |`hipblasSsymm_64`|6.3.0| | | | | |`cublasSsyr2k`| | | | |`hipblasSsyr2k`|3.5.0| | | | | -|`cublasSsyr2k_64`|12.0| | | |`hipblasSsyr2k_64`|6.3.0| | | |6.3.0| +|`cublasSsyr2k_64`|12.0| | | |`hipblasSsyr2k_64`|6.3.0| | | | | |`cublasSsyr2k_v2`| | | | |`hipblasSsyr2k`|3.5.0| | | | | -|`cublasSsyr2k_v2_64`|12.0| | | |`hipblasSsyr2k_64`|6.3.0| | | |6.3.0| +|`cublasSsyr2k_v2_64`|12.0| | | |`hipblasSsyr2k_64`|6.3.0| | | | | |`cublasSsyrk`| | | | |`hipblasSsyrk`|3.5.0| | | | | -|`cublasSsyrk_64`|12.0| | | |`hipblasSsyrk_64`|6.3.0| | | |6.3.0| +|`cublasSsyrk_64`|12.0| | | |`hipblasSsyrk_64`|6.3.0| | | | | |`cublasSsyrk_v2`| | | | |`hipblasSsyrk`|3.5.0| | | | | -|`cublasSsyrk_v2_64`|12.0| | | |`hipblasSsyrk_64`|6.3.0| | | |6.3.0| +|`cublasSsyrk_v2_64`|12.0| | | |`hipblasSsyrk_64`|6.3.0| | | | | |`cublasSsyrkx`| | | | |`hipblasSsyrkx`|3.5.0| | | | | -|`cublasSsyrkx_64`|12.0| | | |`hipblasSsyrkx_64`|6.3.0| | | |6.3.0| +|`cublasSsyrkx_64`|12.0| | | |`hipblasSsyrkx_64`|6.3.0| | | | | |`cublasStrmm`| | | | |`hipblasStrmm`|3.2.0| |6.0.0| | | -|`cublasStrmm_64`|12.0| | | |`hipblasStrmm_64`|6.3.0| | | |6.3.0| +|`cublasStrmm_64`|12.0| | | |`hipblasStrmm_64`|6.3.0| | | | | |`cublasStrmm_v2`| | | | |`hipblasStrmm`|3.2.0| |6.0.0| | | -|`cublasStrmm_v2_64`|12.0| | | |`hipblasStrmm_64`|6.3.0| | | |6.3.0| +|`cublasStrmm_v2_64`|12.0| | | |`hipblasStrmm_64`|6.3.0| | | | | |`cublasStrsm`| | | | |`hipblasStrsm`|1.8.2| | | | | -|`cublasStrsm_64`|12.0| | | |`hipblasStrsm_64`|6.3.0| | | |6.3.0| +|`cublasStrsm_64`|12.0| | | |`hipblasStrsm_64`|6.3.0| | | | | |`cublasStrsm_v2`| | | | |`hipblasStrsm`|1.8.2| | | | | -|`cublasStrsm_v2_64`|12.0| | | |`hipblasStrsm_64`|6.3.0| | | |6.3.0| +|`cublasStrsm_v2_64`|12.0| | | |`hipblasStrsm_64`|6.3.0| | | | | |`cublasTSSgemvBatched`|11.6| | | | | | | | | | |`cublasTSSgemvBatched_64`|12.0| | | | | | | | | | |`cublasTSSgemvStridedBatched`|11.6| | | | | | | | | | @@ -1769,52 +1769,52 @@ |`cublasZgemm3m`|8.0| | | | | | | | | | |`cublasZgemm3m_64`|12.0| | | | | | | | | | |`cublasZgemmBatched`| | | | |`hipblasZgemmBatched_v2`|6.0.0| | | | | -|`cublasZgemmBatched_64`|12.0| | | |`hipblasZgemmBatched_v2_64`|6.3.0| | | |6.3.0| +|`cublasZgemmBatched_64`|12.0| | | |`hipblasZgemmBatched_v2_64`|6.3.0| | | | | |`cublasZgemmStridedBatched`|8.0| | | |`hipblasZgemmStridedBatched_v2`|6.0.0| | | | | -|`cublasZgemmStridedBatched_64`|12.0| | | |`hipblasZgemmStridedBatched_v2_64`|6.3.0| | | |6.3.0| -|`cublasZgemm_64`|12.0| | | |`hipblasZgemm_v2_64`|6.3.0| | | |6.3.0| +|`cublasZgemmStridedBatched_64`|12.0| | | |`hipblasZgemmStridedBatched_v2_64`|6.3.0| | | | | +|`cublasZgemm_64`|12.0| | | |`hipblasZgemm_v2_64`|6.3.0| | | | | |`cublasZgemm_v2`| | | | |`hipblasZgemm_v2`|6.0.0| | | | | -|`cublasZgemm_v2_64`|12.0| | | |`hipblasZgemm_v2_64`|6.3.0| | | |6.3.0| +|`cublasZgemm_v2_64`|12.0| | | |`hipblasZgemm_v2_64`|6.3.0| | | | | |`cublasZgemvBatched`|11.6| | | |`hipblasZgemvBatched_v2`|6.0.0| | | | | |`cublasZgemvBatched_64`|12.0| | | |`hipblasZgemvBatched_v2_64`|6.2.0| | | | | |`cublasZgemvStridedBatched`|11.6| | | |`hipblasZgemvStridedBatched_v2`|6.0.0| | | | | |`cublasZgemvStridedBatched_64`|12.0| | | |`hipblasZgemvStridedBatched_v2_64`|6.2.0| | | | | |`cublasZhemm`| | | | |`hipblasZhemm_v2`|6.0.0| | | | | -|`cublasZhemm_64`|12.0| | | |`hipblasZhemm_v2_64`|6.3.0| | | |6.3.0| +|`cublasZhemm_64`|12.0| | | |`hipblasZhemm_v2_64`|6.3.0| | | | | |`cublasZhemm_v2`| | | | |`hipblasZhemm_v2`|6.0.0| | | | | -|`cublasZhemm_v2_64`|12.0| | | |`hipblasZhemm_v2_64`|6.3.0| | | |6.3.0| +|`cublasZhemm_v2_64`|12.0| | | |`hipblasZhemm_v2_64`|6.3.0| | | | | |`cublasZher2k`| | | | |`hipblasZher2k_v2`|6.0.0| | | | | -|`cublasZher2k_64`|12.0| | | |`hipblasZher2k_v2_64`|6.3.0| | | |6.3.0| +|`cublasZher2k_64`|12.0| | | |`hipblasZher2k_v2_64`|6.3.0| | | | | |`cublasZher2k_v2`| | | | |`hipblasZher2k_v2`|6.0.0| | | | | -|`cublasZher2k_v2_64`|12.0| | | |`hipblasZher2k_v2_64`|6.3.0| | | |6.3.0| +|`cublasZher2k_v2_64`|12.0| | | |`hipblasZher2k_v2_64`|6.3.0| | | | | |`cublasZherk`| | | | |`hipblasZherk_v2`|6.0.0| | | | | -|`cublasZherk_64`|12.0| | | |`hipblasZherk_v2_64`|6.3.0| | | |6.3.0| +|`cublasZherk_64`|12.0| | | |`hipblasZherk_v2_64`|6.3.0| | | | | |`cublasZherk_v2`| | | | |`hipblasZherk_v2`|6.0.0| | | | | -|`cublasZherk_v2_64`|12.0| | | |`hipblasZherk_v2_64`|6.3.0| | | |6.3.0| +|`cublasZherk_v2_64`|12.0| | | |`hipblasZherk_v2_64`|6.3.0| | | | | |`cublasZherkx`| | | | |`hipblasZherkx_v2`|6.0.0| | | | | -|`cublasZherkx_64`|12.0| | | |`hipblasZherkx_v2_64`|6.3.0| | | |6.3.0| +|`cublasZherkx_64`|12.0| | | |`hipblasZherkx_v2_64`|6.3.0| | | | | |`cublasZsymm`| | | | |`hipblasZsymm_v2`|6.0.0| | | | | -|`cublasZsymm_64`|12.0| | | |`hipblasZsymm_v2_64`|6.3.0| | | |6.3.0| +|`cublasZsymm_64`|12.0| | | |`hipblasZsymm_v2_64`|6.3.0| | | | | |`cublasZsymm_v2`| | | | |`hipblasZsymm_v2`|6.0.0| | | | | -|`cublasZsymm_v2_64`|12.0| | | |`hipblasZsymm_v2_64`|6.3.0| | | |6.3.0| +|`cublasZsymm_v2_64`|12.0| | | |`hipblasZsymm_v2_64`|6.3.0| | | | | |`cublasZsyr2k`| | | | |`hipblasZsyr2k_v2`|6.0.0| | | | | -|`cublasZsyr2k_64`|12.0| | | |`hipblasZsyr2k_v2_64`|6.3.0| | | |6.3.0| +|`cublasZsyr2k_64`|12.0| | | |`hipblasZsyr2k_v2_64`|6.3.0| | | | | |`cublasZsyr2k_v2`| | | | |`hipblasZsyr2k_v2`|6.0.0| | | | | -|`cublasZsyr2k_v2_64`|12.0| | | |`hipblasZsyr2k_v2_64`|6.3.0| | | |6.3.0| +|`cublasZsyr2k_v2_64`|12.0| | | |`hipblasZsyr2k_v2_64`|6.3.0| | | | | |`cublasZsyrk`| | | | |`hipblasZsyrk_v2`|6.0.0| | | | | -|`cublasZsyrk_64`|12.0| | | |`hipblasZsyrk_v2_64`|6.3.0| | | |6.3.0| +|`cublasZsyrk_64`|12.0| | | |`hipblasZsyrk_v2_64`|6.3.0| | | | | |`cublasZsyrk_v2`| | | | |`hipblasZsyrk_v2`|6.0.0| | | | | -|`cublasZsyrk_v2_64`|12.0| | | |`hipblasZsyrk_v2_64`|6.3.0| | | |6.3.0| +|`cublasZsyrk_v2_64`|12.0| | | |`hipblasZsyrk_v2_64`|6.3.0| | | | | |`cublasZsyrkx`| | | | |`hipblasZsyrkx_v2`|6.0.0| | | | | -|`cublasZsyrkx_64`|12.0| | | |`hipblasZsyrkx_v2_64`|6.3.0| | | |6.3.0| +|`cublasZsyrkx_64`|12.0| | | |`hipblasZsyrkx_v2_64`|6.3.0| | | | | |`cublasZtrmm`| | | | |`hipblasZtrmm_v2`|6.0.0| | | | | -|`cublasZtrmm_64`|12.0| | | |`hipblasZtrmm_v2_64`|6.3.0| | | |6.3.0| +|`cublasZtrmm_64`|12.0| | | |`hipblasZtrmm_v2_64`|6.3.0| | | | | |`cublasZtrmm_v2`| | | | |`hipblasZtrmm_v2`|6.0.0| | | | | -|`cublasZtrmm_v2_64`|12.0| | | |`hipblasZtrmm_v2_64`|6.3.0| | | |6.3.0| +|`cublasZtrmm_v2_64`|12.0| | | |`hipblasZtrmm_v2_64`|6.3.0| | | | | |`cublasZtrsm`| | | | |`hipblasZtrsm_v2`|6.0.0| | | | | -|`cublasZtrsm_64`|12.0| | | |`hipblasZtrsm_v2_64`|6.3.0| | | |6.3.0| +|`cublasZtrsm_64`|12.0| | | |`hipblasZtrsm_v2_64`|6.3.0| | | | | |`cublasZtrsm_v2`| | | | |`hipblasZtrsm_v2`|6.0.0| | | | | -|`cublasZtrsm_v2_64`|12.0| | | |`hipblasZtrsm_v2_64`|6.3.0| | | |6.3.0| +|`cublasZtrsm_v2_64`|12.0| | | |`hipblasZtrsm_v2_64`|6.3.0| | | | | ## **8. BLAS-like Extension** @@ -1825,9 +1825,9 @@ |`cublasAxpyEx`|8.0| | | |`hipblasAxpyEx_v2`|6.0.0| | | | | |`cublasAxpyEx_64`|12.0| | | |`hipblasAxpyEx_v2_64`|6.2.0| | | | | |`cublasCdgmm`| | | | |`hipblasCdgmm_v2`|6.0.0| | | | | -|`cublasCdgmm_64`|12.0| | | |`hipblasCdgmm_v2_64`|6.3.0| | | |6.3.0| +|`cublasCdgmm_64`|12.0| | | |`hipblasCdgmm_v2_64`|6.3.0| | | | | |`cublasCgeam`| | | | |`hipblasCgeam_v2`|6.0.0| | | | | -|`cublasCgeam_64`|12.0| | | |`hipblasCgeam_v2_64`|6.3.0| | | |6.3.0| +|`cublasCgeam_64`|12.0| | | |`hipblasCgeam_v2_64`|6.3.0| | | | | |`cublasCgelsBatched`| | | | |`hipblasCgelsBatched_v2`|6.0.0| | | | | |`cublasCgemmEx`|8.0| | | | | | | | | | |`cublasCgemmEx_64`|12.0| | | | | | | | | | @@ -1848,12 +1848,12 @@ |`cublasCsyrkEx_64`|12.0| | | | | | | | | | |`cublasCtpttr`| | | | | | | | | | | |`cublasCtrsmBatched`| | | | |`hipblasCtrsmBatched_v2`|6.0.0| | | | | -|`cublasCtrsmBatched_64`|12.0| | | |`hipblasCtrsmBatched_v2_64`|6.3.0| | | |6.3.0| +|`cublasCtrsmBatched_64`|12.0| | | |`hipblasCtrsmBatched_v2_64`|6.3.0| | | | | |`cublasCtrttp`| | | | | | | | | | | |`cublasDdgmm`| | | | |`hipblasDdgmm`|3.6.0| | | | | -|`cublasDdgmm_64`|12.0| | | |`hipblasDdgmm_64`|6.3.0| | | |6.3.0| +|`cublasDdgmm_64`|12.0| | | |`hipblasDdgmm_64`|6.3.0| | | | | |`cublasDgeam`| | | | |`hipblasDgeam`|1.8.2| | | | | -|`cublasDgeam_64`|12.0| | | |`hipblasDgeam_64`|6.3.0| | | |6.3.0| +|`cublasDgeam_64`|12.0| | | |`hipblasDgeam_64`|6.3.0| | | | | |`cublasDgelsBatched`| | | | |`hipblasDgelsBatched`|5.4.0| | | | | |`cublasDgeqrfBatched`| | | | |`hipblasDgeqrfBatched`|3.5.0| | | | | |`cublasDgetrfBatched`| | | | |`hipblasDgetrfBatched`|3.5.0| | | | | @@ -1866,14 +1866,14 @@ |`cublasDotcEx_64`|12.0| | | |`hipblasDotcEx_v2_64`|6.2.0| | | | | |`cublasDtpttr`| | | | | | | | | | | |`cublasDtrsmBatched`| | | | |`hipblasDtrsmBatched`|3.2.0| | | | | -|`cublasDtrsmBatched_64`|12.0| | | |`hipblasDtrsmBatched_64`|6.3.0| | | |6.3.0| +|`cublasDtrsmBatched_64`|12.0| | | |`hipblasDtrsmBatched_64`|6.3.0| | | | | |`cublasDtrttp`| | | | | | | | | | | |`cublasGemmBatchedEx`|9.1| |11.0| |`hipblasGemmBatchedEx_v2`|6.0.0| | | | | -|`cublasGemmBatchedEx_64`|12.0| | | |`hipblasGemmBatchedEx_v2_64`|6.3.0| | | |6.3.0| +|`cublasGemmBatchedEx_64`|12.0| | | |`hipblasGemmBatchedEx_v2_64`|6.3.0| | | | | |`cublasGemmEx`|8.0| |11.0| |`hipblasGemmEx_v2`|6.0.0| | | | | -|`cublasGemmEx_64`|12.0| | | |`hipblasGemmEx_v2_64`|6.3.0| | | |6.3.0| +|`cublasGemmEx_64`|12.0| | | |`hipblasGemmEx_v2_64`|6.3.0| | | | | |`cublasGemmStridedBatchedEx`|9.1| |11.0| |`hipblasGemmStridedBatchedEx_v2`|6.0.0| | | | | -|`cublasGemmStridedBatchedEx_64`|12.0| | | |`hipblasGemmStridedBatchedEx_v2_64`|6.3.0| | | |6.3.0| +|`cublasGemmStridedBatchedEx_64`|12.0| | | |`hipblasGemmStridedBatchedEx_v2_64`|6.3.0| | | | | |`cublasIamaxEx`|10.1| | | | | | | | | | |`cublasIamaxEx_64`|12.0| | | | | | | | | | |`cublasIaminEx`|10.1| | | | | | | | | | @@ -1887,9 +1887,9 @@ |`cublasScalEx`|8.0| | | |`hipblasScalEx_v2`|6.0.0| | | | | |`cublasScalEx_64`|12.0| | | |`hipblasScalEx_v2_64`|6.2.0| | | | | |`cublasSdgmm`| | | | |`hipblasSdgmm`|3.6.0| | | | | -|`cublasSdgmm_64`|12.0| | | |`hipblasSdgmm_64`|6.3.0| | | |6.3.0| +|`cublasSdgmm_64`|12.0| | | |`hipblasSdgmm_64`|6.3.0| | | | | |`cublasSgeam`| | | | |`hipblasSgeam`|1.8.2| | | | | -|`cublasSgeam_64`|12.0| | | |`hipblasSgeam_64`|6.3.0| | | |6.3.0| +|`cublasSgeam_64`|12.0| | | |`hipblasSgeam_64`|6.3.0| | | | | |`cublasSgelsBatched`| | | | |`hipblasSgelsBatched`|5.4.0| | | | | |`cublasSgemmEx`|7.5| | | | | | | | | | |`cublasSgemmEx_64`|12.0| | | | | | | | | | @@ -1900,15 +1900,15 @@ |`cublasSmatinvBatched`| | | | | | | | | | | |`cublasStpttr`| | | | | | | | | | | |`cublasStrsmBatched`| | | | |`hipblasStrsmBatched`|3.2.0| | | | | -|`cublasStrsmBatched_64`|12.0| | | |`hipblasStrsmBatched_64`|6.3.0| | | |6.3.0| +|`cublasStrsmBatched_64`|12.0| | | |`hipblasStrsmBatched_64`|6.3.0| | | | | |`cublasStrttp`| | | | | | | | | | | |`cublasSwapEx`|10.1| | | | | | | | | | |`cublasSwapEx_64`|12.0| | | | | | | | | | |`cublasUint8gemmBias`|8.0| | | | | | | | | | |`cublasZdgmm`| | | | |`hipblasZdgmm_v2`|6.0.0| | | | | -|`cublasZdgmm_64`|12.0| | | |`hipblasZdgmm_v2_64`|6.3.0| | | |6.3.0| +|`cublasZdgmm_64`|12.0| | | |`hipblasZdgmm_v2_64`|6.3.0| | | | | |`cublasZgeam`| | | | |`hipblasZgeam_v2`|6.0.0| | | | | -|`cublasZgeam_64`|12.0| | | |`hipblasZgeam_v2_64`|6.3.0| | | |6.3.0| +|`cublasZgeam_64`|12.0| | | |`hipblasZgeam_v2_64`|6.3.0| | | | | |`cublasZgelsBatched`| | | | |`hipblasZgelsBatched_v2`|6.0.0| | | | | |`cublasZgeqrfBatched`| | | | |`hipblasZgeqrfBatched_v2`|6.0.0| | | | | |`cublasZgetrfBatched`| | | | |`hipblasZgetrfBatched_v2`|6.0.0| | | | | @@ -1917,7 +1917,7 @@ |`cublasZmatinvBatched`| | | | | | | | | | | |`cublasZtpttr`| | | | | | | | | | | |`cublasZtrsmBatched`| | | | |`hipblasZtrsmBatched_v2`|6.0.0| | | | | -|`cublasZtrsmBatched_64`|12.0| | | |`hipblasZtrsmBatched_v2_64`|6.3.0| | | |6.3.0| +|`cublasZtrsmBatched_64`|12.0| | | |`hipblasZtrsmBatched_v2_64`|6.3.0| | | | | |`cublasZtrttp`| | | | | | | | | | | ## **9. BLASLt Function Reference** diff --git a/docs/tables/CUBLAS_API_supported_by_HIP_and_ROC.md b/docs/tables/CUBLAS_API_supported_by_HIP_and_ROC.md index d569d999..7e5276cf 100644 --- a/docs/tables/CUBLAS_API_supported_by_HIP_and_ROC.md +++ b/docs/tables/CUBLAS_API_supported_by_HIP_and_ROC.md @@ -1623,88 +1623,88 @@ |`cublasCgemm3mStridedBatched_64`|12.0| | | | | | | | | | | | | | | | |`cublasCgemm3m_64`|12.0| | | | | | | | | | | | | | | | |`cublasCgemmBatched`| | | | |`hipblasCgemmBatched_v2`|6.0.0| | | | |`rocblas_cgemm_batched`|3.5.0| | | | | -|`cublasCgemmBatched_64`|12.0| | | |`hipblasCgemmBatched_v2_64`|6.3.0| | | |6.3.0|`rocblas_cgemm_batched_64`|6.3.0| | | |6.3.0| +|`cublasCgemmBatched_64`|12.0| | | |`hipblasCgemmBatched_v2_64`|6.3.0| | | | |`rocblas_cgemm_batched_64`|6.3.0| | | | | |`cublasCgemmStridedBatched`|8.0| | | |`hipblasCgemmStridedBatched_v2`|6.0.0| | | | |`rocblas_cgemm_strided_batched`|1.5.0| | | | | -|`cublasCgemmStridedBatched_64`|12.0| | | |`hipblasCgemmStridedBatched_v2_64`|6.3.0| | | |6.3.0|`rocblas_cgemm_strided_batched_64`|6.3.0| | | |6.3.0| -|`cublasCgemm_64`|12.0| | | |`hipblasCgemm_v2_64`|6.3.0| | | |6.3.0|`rocblas_cgemm_64`|6.3.0| | | |6.3.0| +|`cublasCgemmStridedBatched_64`|12.0| | | |`hipblasCgemmStridedBatched_v2_64`|6.3.0| | | | |`rocblas_cgemm_strided_batched_64`|6.3.0| | | | | +|`cublasCgemm_64`|12.0| | | |`hipblasCgemm_v2_64`|6.3.0| | | | |`rocblas_cgemm_64`|6.3.0| | | | | |`cublasCgemm_v2`| | | | |`hipblasCgemm_v2`|6.0.0| | | | |`rocblas_cgemm`|1.5.0| | | | | -|`cublasCgemm_v2_64`|12.0| | | |`hipblasCgemm_v2_64`|6.3.0| | | |6.3.0|`rocblas_cgemm_64`|6.3.0| | | |6.3.0| +|`cublasCgemm_v2_64`|12.0| | | |`hipblasCgemm_v2_64`|6.3.0| | | | |`rocblas_cgemm_64`|6.3.0| | | | | |`cublasCgemvBatched`|11.6| | | |`hipblasCgemvBatched_v2`|6.0.0| | | | |`rocblas_cgemv_batched`|3.5.0| | | | | |`cublasCgemvBatched_64`|12.0| | | |`hipblasCgemvBatched_v2_64`|6.2.0| | | | |`rocblas_cgemv_batched_64`|6.2.0| | | | | |`cublasCgemvStridedBatched`|11.6| | | |`hipblasCgemvStridedBatched_v2`|6.0.0| | | | |`rocblas_cgemv_strided_batched`|3.5.0| | | | | |`cublasCgemvStridedBatched_64`|12.0| | | |`hipblasCgemvStridedBatched_v2_64`|6.2.0| | | | |`rocblas_cgemv_strided_batched_64`|6.2.0| | | | | |`cublasChemm`| | | | |`hipblasChemm_v2`|6.0.0| | | | |`rocblas_chemm`|3.5.0| | | | | -|`cublasChemm_64`|12.0| | | |`hipblasChemm_v2_64`|6.3.0| | | |6.3.0|`rocblas_chemm_64`|6.3.0| | | |6.3.0| +|`cublasChemm_64`|12.0| | | |`hipblasChemm_v2_64`|6.3.0| | | | |`rocblas_chemm_64`|6.3.0| | | | | |`cublasChemm_v2`| | | | |`hipblasChemm_v2`|6.0.0| | | | |`rocblas_chemm`|3.5.0| | | | | -|`cublasChemm_v2_64`|12.0| | | |`hipblasChemm_v2_64`|6.3.0| | | |6.3.0|`rocblas_chemm_64`|6.3.0| | | |6.3.0| +|`cublasChemm_v2_64`|12.0| | | |`hipblasChemm_v2_64`|6.3.0| | | | |`rocblas_chemm_64`|6.3.0| | | | | |`cublasCher2k`| | | | |`hipblasCher2k_v2`|6.0.0| | | | |`rocblas_cher2k`|3.5.0| | | | | -|`cublasCher2k_64`|12.0| | | |`hipblasCher2k_v2_64`|6.3.0| | | |6.3.0|`rocblas_cher2k_64`|6.3.0| | | |6.3.0| +|`cublasCher2k_64`|12.0| | | |`hipblasCher2k_v2_64`|6.3.0| | | | |`rocblas_cher2k_64`|6.3.0| | | | | |`cublasCher2k_v2`| | | | |`hipblasCher2k_v2`|6.0.0| | | | |`rocblas_cher2k`|3.5.0| | | | | -|`cublasCher2k_v2_64`|12.0| | | |`hipblasCher2k_v2_64`|6.3.0| | | |6.3.0|`rocblas_cher2k_64`|6.3.0| | | |6.3.0| +|`cublasCher2k_v2_64`|12.0| | | |`hipblasCher2k_v2_64`|6.3.0| | | | |`rocblas_cher2k_64`|6.3.0| | | | | |`cublasCherk`| | | | |`hipblasCherk_v2`|6.0.0| | | | |`rocblas_cherk`|3.5.0| | | | | -|`cublasCherk_64`|12.0| | | |`hipblasCherk_v2_64`|6.3.0| | | |6.3.0|`rocblas_cherk_64`|6.3.0| | | |6.3.0| +|`cublasCherk_64`|12.0| | | |`hipblasCherk_v2_64`|6.3.0| | | | |`rocblas_cherk_64`|6.3.0| | | | | |`cublasCherk_v2`| | | | |`hipblasCherk_v2`|6.0.0| | | | |`rocblas_cherk`|3.5.0| | | | | -|`cublasCherk_v2_64`|12.0| | | |`hipblasCherk_v2_64`|6.3.0| | | |6.3.0|`rocblas_cherk_64`|6.3.0| | | |6.3.0| +|`cublasCherk_v2_64`|12.0| | | |`hipblasCherk_v2_64`|6.3.0| | | | |`rocblas_cherk_64`|6.3.0| | | | | |`cublasCherkx`| | | | |`hipblasCherkx_v2`|6.0.0| | | | |`rocblas_cherkx`|3.5.0| | | | | -|`cublasCherkx_64`|12.0| | | |`hipblasCherkx_v2_64`|6.3.0| | | |6.3.0|`rocblas_cherkx_64`|6.3.0| | | |6.3.0| +|`cublasCherkx_64`|12.0| | | |`hipblasCherkx_v2_64`|6.3.0| | | | |`rocblas_cherkx_64`|6.3.0| | | | | |`cublasCsymm`| | | | |`hipblasCsymm_v2`|6.0.0| | | | |`rocblas_csymm`|3.5.0| | | | | -|`cublasCsymm_64`|12.0| | | |`hipblasCsymm_v2_64`|6.3.0| | | |6.3.0|`rocblas_csymm_64`|6.3.0| | | |6.3.0| +|`cublasCsymm_64`|12.0| | | |`hipblasCsymm_v2_64`|6.3.0| | | | |`rocblas_csymm_64`|6.3.0| | | | | |`cublasCsymm_v2`| | | | |`hipblasCsymm_v2`|6.0.0| | | | |`rocblas_csymm`|3.5.0| | | | | -|`cublasCsymm_v2_64`|12.0| | | |`hipblasCsymm_v2_64`|6.3.0| | | |6.3.0|`rocblas_csymm_64`|6.3.0| | | |6.3.0| +|`cublasCsymm_v2_64`|12.0| | | |`hipblasCsymm_v2_64`|6.3.0| | | | |`rocblas_csymm_64`|6.3.0| | | | | |`cublasCsyr2k`| | | | |`hipblasCsyr2k_v2`|6.0.0| | | | |`rocblas_csyr2k`|3.5.0| | | | | -|`cublasCsyr2k_64`|12.0| | | |`hipblasCsyr2k_v2_64`|6.3.0| | | |6.3.0|`rocblas_csyr2k_64`|6.3.0| | | |6.3.0| +|`cublasCsyr2k_64`|12.0| | | |`hipblasCsyr2k_v2_64`|6.3.0| | | | |`rocblas_csyr2k_64`|6.3.0| | | | | |`cublasCsyr2k_v2`| | | | |`hipblasCsyr2k_v2`|6.0.0| | | | |`rocblas_csyr2k`|3.5.0| | | | | -|`cublasCsyr2k_v2_64`|12.0| | | |`hipblasCsyr2k_v2_64`|6.3.0| | | |6.3.0|`rocblas_csyr2k_64`|6.3.0| | | |6.3.0| +|`cublasCsyr2k_v2_64`|12.0| | | |`hipblasCsyr2k_v2_64`|6.3.0| | | | |`rocblas_csyr2k_64`|6.3.0| | | | | |`cublasCsyrk`| | | | |`hipblasCsyrk_v2`|6.0.0| | | | |`rocblas_csyrk`|3.5.0| | | | | -|`cublasCsyrk_64`|12.0| | | |`hipblasCsyrk_v2_64`|6.3.0| | | |6.3.0|`rocblas_csyrk_64`|6.3.0| | | |6.3.0| +|`cublasCsyrk_64`|12.0| | | |`hipblasCsyrk_v2_64`|6.3.0| | | | |`rocblas_csyrk_64`|6.3.0| | | | | |`cublasCsyrk_v2`| | | | |`hipblasCsyrk_v2`|6.0.0| | | | |`rocblas_csyrk`|3.5.0| | | | | -|`cublasCsyrk_v2_64`|12.0| | | |`hipblasCsyrk_v2_64`|6.3.0| | | |6.3.0|`rocblas_csyrk_64`|6.3.0| | | |6.3.0| +|`cublasCsyrk_v2_64`|12.0| | | |`hipblasCsyrk_v2_64`|6.3.0| | | | |`rocblas_csyrk_64`|6.3.0| | | | | |`cublasCsyrkx`| | | | |`hipblasCsyrkx_v2`|6.0.0| | | | |`rocblas_csyrkx`|3.5.0| | | | | -|`cublasCsyrkx_64`|12.0| | | |`hipblasCsyrkx_v2_64`|6.3.0| | | |6.3.0|`rocblas_csyrkx_64`|6.3.0| | | |6.3.0| +|`cublasCsyrkx_64`|12.0| | | |`hipblasCsyrkx_v2_64`|6.3.0| | | | |`rocblas_csyrkx_64`|6.3.0| | | | | |`cublasCtrmm`| | | | |`hipblasCtrmm_v2`|6.0.0| | | | |`rocblas_ctrmm`|3.5.0| |6.0.0| | | -|`cublasCtrmm_64`|12.0| | | |`hipblasCtrmm_v2_64`|6.3.0| | | |6.3.0|`rocblas_ctrmm_64`|6.3.0| | | |6.3.0| +|`cublasCtrmm_64`|12.0| | | |`hipblasCtrmm_v2_64`|6.3.0| | | | |`rocblas_ctrmm_64`|6.3.0| | | | | |`cublasCtrmm_v2`| | | | |`hipblasCtrmm_v2`|6.0.0| | | | |`rocblas_ctrmm`|3.5.0| |6.0.0| | | -|`cublasCtrmm_v2_64`|12.0| | | |`hipblasCtrmm_v2_64`|6.3.0| | | |6.3.0|`rocblas_ctrmm_64`|6.3.0| | | |6.3.0| +|`cublasCtrmm_v2_64`|12.0| | | |`hipblasCtrmm_v2_64`|6.3.0| | | | |`rocblas_ctrmm_64`|6.3.0| | | | | |`cublasCtrsm`| | | | |`hipblasCtrsm_v2`|6.0.0| | | | |`rocblas_ctrsm`|3.5.0| | | | | -|`cublasCtrsm_64`|12.0| | | |`hipblasCtrsm_v2_64`|6.3.0| | | |6.3.0|`rocblas_ctrsm_64`|6.2.0| | | | | +|`cublasCtrsm_64`|12.0| | | |`hipblasCtrsm_v2_64`|6.3.0| | | | |`rocblas_ctrsm_64`|6.2.0| | | | | |`cublasCtrsm_v2`| | | | |`hipblasCtrsm_v2`|6.0.0| | | | |`rocblas_ctrsm`|3.5.0| | | | | -|`cublasCtrsm_v2_64`|12.0| | | |`hipblasCtrsm_v2_64`|6.3.0| | | |6.3.0|`rocblas_ctrsm_64`|6.2.0| | | | | +|`cublasCtrsm_v2_64`|12.0| | | |`hipblasCtrsm_v2_64`|6.3.0| | | | |`rocblas_ctrsm_64`|6.2.0| | | | | |`cublasDgemm`| | | | |`hipblasDgemm`|1.8.2| | | | |`rocblas_dgemm`|1.5.0| | | | | |`cublasDgemmBatched`| | | | |`hipblasDgemmBatched`|1.8.2| | | | |`rocblas_dgemm_batched`|3.5.0| | | | | -|`cublasDgemmBatched_64`|12.0| | | |`hipblasDgemmBatched_64`|6.3.0| | | |6.3.0|`rocblas_dgemm_batched_64`|6.3.0| | | |6.3.0| +|`cublasDgemmBatched_64`|12.0| | | |`hipblasDgemmBatched_64`|6.3.0| | | | |`rocblas_dgemm_batched_64`|6.3.0| | | | | |`cublasDgemmGroupedBatched`|12.4| | | | | | | | | | | | | | | | |`cublasDgemmGroupedBatched_64`|12.4| | | | | | | | | | | | | | | | |`cublasDgemmStridedBatched`|8.0| | | |`hipblasDgemmStridedBatched`|1.8.2| | | | |`rocblas_dgemm_strided_batched`|1.5.0| | | | | -|`cublasDgemmStridedBatched_64`|12.0| | | |`hipblasDgemmStridedBatched_64`|6.3.0| | | |6.3.0|`rocblas_dgemm_strided_batched_64`|6.3.0| | | |6.3.0| -|`cublasDgemm_64`|12.0| | | |`hipblasDgemm_64`|6.3.0| | | |6.3.0|`rocblas_dgemm_64`|6.3.0| | | |6.3.0| +|`cublasDgemmStridedBatched_64`|12.0| | | |`hipblasDgemmStridedBatched_64`|6.3.0| | | | |`rocblas_dgemm_strided_batched_64`|6.3.0| | | | | +|`cublasDgemm_64`|12.0| | | |`hipblasDgemm_64`|6.3.0| | | | |`rocblas_dgemm_64`|6.3.0| | | | | |`cublasDgemm_v2`| | | | |`hipblasDgemm`|1.8.2| | | | |`rocblas_dgemm`|1.5.0| | | | | -|`cublasDgemm_v2_64`|12.0| | | |`hipblasDgemm_64`|6.3.0| | | |6.3.0|`rocblas_dgemm_64`|6.3.0| | | |6.3.0| +|`cublasDgemm_v2_64`|12.0| | | |`hipblasDgemm_64`|6.3.0| | | | |`rocblas_dgemm_64`|6.3.0| | | | | |`cublasDgemvBatched`|11.6| | | |`hipblasDgemvBatched`|3.0.0| | | | |`rocblas_dgemv_batched`|3.5.0| | | | | |`cublasDgemvBatched_64`|12.0| | | |`hipblasDgemvBatched_64`|6.2.0| | | | |`rocblas_dgemv_batched_64`|6.2.0| | | | | |`cublasDgemvStridedBatched`|11.6| | | |`hipblasDgemvStridedBatched`|3.0.0| | | | |`rocblas_dgemv_strided_batched`|3.5.0| | | | | |`cublasDgemvStridedBatched_64`|12.0| | | |`hipblasDgemvStridedBatched_64`|6.2.0| | | | |`rocblas_dgemv_strided_batched_64`|6.2.0| | | | | |`cublasDsymm`| | | | |`hipblasDsymm`|3.6.0| | | | |`rocblas_dsymm`|3.5.0| | | | | -|`cublasDsymm_64`|12.0| | | |`hipblasDsymm_64`|6.3.0| | | |6.3.0|`rocblas_dsymm_64`|6.3.0| | | |6.3.0| +|`cublasDsymm_64`|12.0| | | |`hipblasDsymm_64`|6.3.0| | | | |`rocblas_dsymm_64`|6.3.0| | | | | |`cublasDsymm_v2`| | | | |`hipblasDsymm`|3.6.0| | | | |`rocblas_dsymm`|3.5.0| | | | | -|`cublasDsymm_v2_64`|12.0| | | |`hipblasDsymm_64`|6.3.0| | | |6.3.0|`rocblas_dsymm_64`|6.3.0| | | |6.3.0| +|`cublasDsymm_v2_64`|12.0| | | |`hipblasDsymm_64`|6.3.0| | | | |`rocblas_dsymm_64`|6.3.0| | | | | |`cublasDsyr2k`| | | | |`hipblasDsyr2k`|3.5.0| | | | |`rocblas_dsyr2k`|3.5.0| | | | | -|`cublasDsyr2k_64`|12.0| | | |`hipblasDsyr2k_64`|6.3.0| | | |6.3.0|`rocblas_dsyr2k_64`|6.3.0| | | |6.3.0| +|`cublasDsyr2k_64`|12.0| | | |`hipblasDsyr2k_64`|6.3.0| | | | |`rocblas_dsyr2k_64`|6.3.0| | | | | |`cublasDsyr2k_v2`| | | | |`hipblasDsyr2k`|3.5.0| | | | |`rocblas_dsyr2k`|3.5.0| | | | | -|`cublasDsyr2k_v2_64`|12.0| | | |`hipblasDsyr2k_64`|6.3.0| | | |6.3.0|`rocblas_dsyr2k_64`|6.3.0| | | |6.3.0| +|`cublasDsyr2k_v2_64`|12.0| | | |`hipblasDsyr2k_64`|6.3.0| | | | |`rocblas_dsyr2k_64`|6.3.0| | | | | |`cublasDsyrk`| | | | |`hipblasDsyrk`|3.5.0| | | | |`rocblas_dsyrk`|3.5.0| | | | | -|`cublasDsyrk_64`|12.0| | | |`hipblasDsyrk_64`|6.3.0| | | |6.3.0|`rocblas_dsyrk_64`|6.3.0| | | |6.3.0| +|`cublasDsyrk_64`|12.0| | | |`hipblasDsyrk_64`|6.3.0| | | | |`rocblas_dsyrk_64`|6.3.0| | | | | |`cublasDsyrk_v2`| | | | |`hipblasDsyrk`|3.5.0| | | | |`rocblas_dsyrk`|3.5.0| | | | | -|`cublasDsyrk_v2_64`|12.0| | | |`hipblasDsyrk_64`|6.3.0| | | |6.3.0|`rocblas_dsyrk_64`|6.3.0| | | |6.3.0| +|`cublasDsyrk_v2_64`|12.0| | | |`hipblasDsyrk_64`|6.3.0| | | | |`rocblas_dsyrk_64`|6.3.0| | | | | |`cublasDsyrkx`| | | | |`hipblasDsyrkx`|3.5.0| | | | |`rocblas_dsyrkx`|3.5.0| | | | | -|`cublasDsyrkx_64`|12.0| | | |`hipblasDsyrkx_64`|6.3.0| | | |6.3.0|`rocblas_dsyrkx_64`|6.3.0| | | |6.3.0| +|`cublasDsyrkx_64`|12.0| | | |`hipblasDsyrkx_64`|6.3.0| | | | |`rocblas_dsyrkx_64`|6.3.0| | | | | |`cublasDtrmm`| | | | |`hipblasDtrmm`|3.2.0| |6.0.0| | |`rocblas_dtrmm`|3.5.0| |6.0.0| | | -|`cublasDtrmm_64`|12.0| | | |`hipblasDtrmm_64`|6.3.0| | | |6.3.0|`rocblas_dtrmm_64`|6.3.0| | | |6.3.0| +|`cublasDtrmm_64`|12.0| | | |`hipblasDtrmm_64`|6.3.0| | | | |`rocblas_dtrmm_64`|6.3.0| | | | | |`cublasDtrmm_v2`| | | | |`hipblasDtrmm`|3.2.0| |6.0.0| | |`rocblas_dtrmm`|3.5.0| |6.0.0| | | -|`cublasDtrmm_v2_64`|12.0| | | |`hipblasDtrmm_64`|6.3.0| | | |6.3.0|`rocblas_dtrmm_64`|6.3.0| | | |6.3.0| +|`cublasDtrmm_v2_64`|12.0| | | |`hipblasDtrmm_64`|6.3.0| | | | |`rocblas_dtrmm_64`|6.3.0| | | | | |`cublasDtrsm`| | | | |`hipblasDtrsm`|1.8.2| | | | |`rocblas_dtrsm`|1.5.0| | | | | -|`cublasDtrsm_64`|12.0| | | |`hipblasDtrsm_64`|6.3.0| | | |6.3.0|`rocblas_dtrsm_64`|6.2.0| | | | | +|`cublasDtrsm_64`|12.0| | | |`hipblasDtrsm_64`|6.3.0| | | | |`rocblas_dtrsm_64`|6.2.0| | | | | |`cublasDtrsm_v2`| | | | |`hipblasDtrsm`|1.8.2| | | | |`rocblas_dtrsm`|1.5.0| | | | | -|`cublasDtrsm_v2_64`|12.0| | | |`hipblasDtrsm_64`|6.3.0| | | |6.3.0|`rocblas_dtrsm_64`|6.2.0| | | | | +|`cublasDtrsm_v2_64`|12.0| | | |`hipblasDtrsm_64`|6.3.0| | | | |`rocblas_dtrsm_64`|6.2.0| | | | | |`cublasGemmGroupedBatchedEx`|12.5| | | | | | | | | | | | | | | | |`cublasGemmGroupedBatchedEx_64`|12.5| | | | | | | | | | | | | | | | |`cublasHSHgemvBatched`|11.6| | | | | | | | | |`rocblas_hshgemv_batched`|6.0.0| | | | | @@ -1717,46 +1717,46 @@ |`cublasHSSgemvStridedBatched_64`|12.0| | | | | | | | | |`rocblas_hssgemv_strided_batched_64`|6.2.0| | | | | |`cublasHgemm`|7.5| | | |`hipblasHgemm`|1.8.2| | | | |`rocblas_hgemm`|1.5.0| | | | | |`cublasHgemmBatched`|9.0| | | |`hipblasHgemmBatched`|3.0.0| | | | |`rocblas_hgemm_batched`|3.5.0| | | | | -|`cublasHgemmBatched_64`|12.0| | | |`hipblasHgemmBatched_64`|6.3.0| | | |6.3.0|`rocblas_hgemm_batched_64`|6.3.0| | | |6.3.0| +|`cublasHgemmBatched_64`|12.0| | | |`hipblasHgemmBatched_64`|6.3.0| | | | |`rocblas_hgemm_batched_64`|6.3.0| | | | | |`cublasHgemmStridedBatched`|8.0| | | |`hipblasHgemmStridedBatched`|3.0.0| | | | |`rocblas_hgemm_strided_batched`|1.5.0| | | | | -|`cublasHgemmStridedBatched_64`|12.0| | | |`hipblasHgemmStridedBatched_64`|6.3.0| | | |6.3.0|`rocblas_hgemm_strided_batched_64`|6.3.0| | | |6.3.0| -|`cublasHgemm_64`|12.0| | | |`hipblasHgemm_64`|6.3.0| | | |6.3.0|`rocblas_hgemm_64`|6.3.0| | | |6.3.0| +|`cublasHgemmStridedBatched_64`|12.0| | | |`hipblasHgemmStridedBatched_64`|6.3.0| | | | |`rocblas_hgemm_strided_batched_64`|6.3.0| | | | | +|`cublasHgemm_64`|12.0| | | |`hipblasHgemm_64`|6.3.0| | | | |`rocblas_hgemm_64`|6.3.0| | | | | |`cublasSgemm`| | | | |`hipblasSgemm`|1.8.2| | | | |`rocblas_sgemm`|1.5.0| | | | | |`cublasSgemmBatched`| | | | |`hipblasSgemmBatched`|1.8.2| | | | |`rocblas_sgemm_batched`|3.5.0| | | | | -|`cublasSgemmBatched_64`|12.0| | | |`hipblasSgemmBatched_64`|6.3.0| | | |6.3.0|`rocblas_sgemm_batched_64`|6.3.0| | | |6.3.0| +|`cublasSgemmBatched_64`|12.0| | | |`hipblasSgemmBatched_64`|6.3.0| | | | |`rocblas_sgemm_batched_64`|6.3.0| | | | | |`cublasSgemmGroupedBatched`|12.4| | | | | | | | | | | | | | | | |`cublasSgemmGroupedBatched_64`|12.4| | | | | | | | | | | | | | | | |`cublasSgemmStridedBatched`|8.0| | | |`hipblasSgemmStridedBatched`|1.8.2| | | | |`rocblas_sgemm_strided_batched`|1.5.0| | | | | -|`cublasSgemmStridedBatched_64`|12.0| | | |`hipblasSgemmStridedBatched_64`|6.3.0| | | |6.3.0|`rocblas_sgemm_strided_batched_64`|6.3.0| | | |6.3.0| -|`cublasSgemm_64`|12.0| | | |`hipblasSgemm_64`|6.3.0| | | |6.3.0|`rocblas_sgemm_64`|6.3.0| | | |6.3.0| +|`cublasSgemmStridedBatched_64`|12.0| | | |`hipblasSgemmStridedBatched_64`|6.3.0| | | | |`rocblas_sgemm_strided_batched_64`|6.3.0| | | | | +|`cublasSgemm_64`|12.0| | | |`hipblasSgemm_64`|6.3.0| | | | |`rocblas_sgemm_64`|6.3.0| | | | | |`cublasSgemm_v2`| | | | |`hipblasSgemm`|1.8.2| | | | |`rocblas_sgemm`|1.5.0| | | | | -|`cublasSgemm_v2_64`|12.0| | | |`hipblasSgemm_64`|6.3.0| | | |6.3.0|`rocblas_sgemm_64`|6.3.0| | | |6.3.0| +|`cublasSgemm_v2_64`|12.0| | | |`hipblasSgemm_64`|6.3.0| | | | |`rocblas_sgemm_64`|6.3.0| | | | | |`cublasSgemvBatched`|11.6| | | |`hipblasSgemvBatched`|1.6.0| | | | |`rocblas_sgemv_batched`|3.5.0| | | | | |`cublasSgemvBatched_64`|12.0| | | |`hipblasSgemvBatched_64`|6.2.0| | | | |`rocblas_sgemv_batched_64`|6.2.0| | | | | |`cublasSgemvStridedBatched`|11.6| | | |`hipblasSgemvStridedBatched`|3.0.0| | | | |`rocblas_sgemv_strided_batched`|3.5.0| | | | | |`cublasSgemvStridedBatched_64`|12.0| | | |`hipblasSgemvStridedBatched_64`|6.2.0| | | | |`rocblas_sgemv_strided_batched_64`|6.2.0| | | | | |`cublasSsymm`| | | | |`hipblasSsymm`|3.6.0| | | | |`rocblas_ssymm`|3.5.0| | | | | -|`cublasSsymm_64`|12.0| | | |`hipblasSsymm_64`|6.3.0| | | |6.3.0|`rocblas_ssymm_64`|6.3.0| | | |6.3.0| +|`cublasSsymm_64`|12.0| | | |`hipblasSsymm_64`|6.3.0| | | | |`rocblas_ssymm_64`|6.3.0| | | | | |`cublasSsymm_v2`| | | | |`hipblasSsymm`|3.6.0| | | | |`rocblas_ssymm`|3.5.0| | | | | -|`cublasSsymm_v2_64`|12.0| | | |`hipblasSsymm_64`|6.3.0| | | |6.3.0|`rocblas_ssymm_64`|6.3.0| | | |6.3.0| +|`cublasSsymm_v2_64`|12.0| | | |`hipblasSsymm_64`|6.3.0| | | | |`rocblas_ssymm_64`|6.3.0| | | | | |`cublasSsyr2k`| | | | |`hipblasSsyr2k`|3.5.0| | | | |`rocblas_ssyr2k`|3.5.0| | | | | -|`cublasSsyr2k_64`|12.0| | | |`hipblasSsyr2k_64`|6.3.0| | | |6.3.0|`rocblas_ssyr2k_64`|6.3.0| | | |6.3.0| +|`cublasSsyr2k_64`|12.0| | | |`hipblasSsyr2k_64`|6.3.0| | | | |`rocblas_ssyr2k_64`|6.3.0| | | | | |`cublasSsyr2k_v2`| | | | |`hipblasSsyr2k`|3.5.0| | | | |`rocblas_ssyr2k`|3.5.0| | | | | -|`cublasSsyr2k_v2_64`|12.0| | | |`hipblasSsyr2k_64`|6.3.0| | | |6.3.0|`rocblas_ssyr2k_64`|6.3.0| | | |6.3.0| +|`cublasSsyr2k_v2_64`|12.0| | | |`hipblasSsyr2k_64`|6.3.0| | | | |`rocblas_ssyr2k_64`|6.3.0| | | | | |`cublasSsyrk`| | | | |`hipblasSsyrk`|3.5.0| | | | |`rocblas_ssyrk`|3.5.0| | | | | -|`cublasSsyrk_64`|12.0| | | |`hipblasSsyrk_64`|6.3.0| | | |6.3.0|`rocblas_ssyrk_64`|6.3.0| | | |6.3.0| +|`cublasSsyrk_64`|12.0| | | |`hipblasSsyrk_64`|6.3.0| | | | |`rocblas_ssyrk_64`|6.3.0| | | | | |`cublasSsyrk_v2`| | | | |`hipblasSsyrk`|3.5.0| | | | |`rocblas_ssyrk`|3.5.0| | | | | -|`cublasSsyrk_v2_64`|12.0| | | |`hipblasSsyrk_64`|6.3.0| | | |6.3.0|`rocblas_ssyrk_64`|6.3.0| | | |6.3.0| +|`cublasSsyrk_v2_64`|12.0| | | |`hipblasSsyrk_64`|6.3.0| | | | |`rocblas_ssyrk_64`|6.3.0| | | | | |`cublasSsyrkx`| | | | |`hipblasSsyrkx`|3.5.0| | | | |`rocblas_ssyrkx`|3.5.0| | | | | -|`cublasSsyrkx_64`|12.0| | | |`hipblasSsyrkx_64`|6.3.0| | | |6.3.0|`rocblas_ssyrkx_64`|6.3.0| | | |6.3.0| +|`cublasSsyrkx_64`|12.0| | | |`hipblasSsyrkx_64`|6.3.0| | | | |`rocblas_ssyrkx_64`|6.3.0| | | | | |`cublasStrmm`| | | | |`hipblasStrmm`|3.2.0| |6.0.0| | |`rocblas_strmm`|3.5.0| |6.0.0| | | -|`cublasStrmm_64`|12.0| | | |`hipblasStrmm_64`|6.3.0| | | |6.3.0|`rocblas_strmm_64`|6.3.0| | | |6.3.0| +|`cublasStrmm_64`|12.0| | | |`hipblasStrmm_64`|6.3.0| | | | |`rocblas_strmm_64`|6.3.0| | | | | |`cublasStrmm_v2`| | | | |`hipblasStrmm`|3.2.0| |6.0.0| | |`rocblas_strmm`|3.5.0| |6.0.0| | | -|`cublasStrmm_v2_64`|12.0| | | |`hipblasStrmm_64`|6.3.0| | | |6.3.0|`rocblas_strmm_64`|6.3.0| | | |6.3.0| +|`cublasStrmm_v2_64`|12.0| | | |`hipblasStrmm_64`|6.3.0| | | | |`rocblas_strmm_64`|6.3.0| | | | | |`cublasStrsm`| | | | |`hipblasStrsm`|1.8.2| | | | |`rocblas_strsm`|1.5.0| | | | | -|`cublasStrsm_64`|12.0| | | |`hipblasStrsm_64`|6.3.0| | | |6.3.0|`rocblas_strsm_64`|6.2.0| | | | | +|`cublasStrsm_64`|12.0| | | |`hipblasStrsm_64`|6.3.0| | | | |`rocblas_strsm_64`|6.2.0| | | | | |`cublasStrsm_v2`| | | | |`hipblasStrsm`|1.8.2| | | | |`rocblas_strsm`|1.5.0| | | | | -|`cublasStrsm_v2_64`|12.0| | | |`hipblasStrsm_64`|6.3.0| | | |6.3.0|`rocblas_strsm_64`|6.2.0| | | | | +|`cublasStrsm_v2_64`|12.0| | | |`hipblasStrsm_64`|6.3.0| | | | |`rocblas_strsm_64`|6.2.0| | | | | |`cublasTSSgemvBatched`|11.6| | | | | | | | | |`rocblas_tssgemv_batched`|6.0.0| | | | | |`cublasTSSgemvBatched_64`|12.0| | | | | | | | | |`rocblas_tssgemv_batched_64`|6.2.0| | | | | |`cublasTSSgemvStridedBatched`|11.6| | | | | | | | | |`rocblas_tssgemv_strided_batched`|6.0.0| | | | | @@ -1769,52 +1769,52 @@ |`cublasZgemm3m`|8.0| | | | | | | | | | | | | | | | |`cublasZgemm3m_64`|12.0| | | | | | | | | | | | | | | | |`cublasZgemmBatched`| | | | |`hipblasZgemmBatched_v2`|6.0.0| | | | |`rocblas_zgemm_batched`|3.5.0| | | | | -|`cublasZgemmBatched_64`|12.0| | | |`hipblasZgemmBatched_v2_64`|6.3.0| | | |6.3.0|`rocblas_zgemm_batched_64`|6.3.0| | | |6.3.0| +|`cublasZgemmBatched_64`|12.0| | | |`hipblasZgemmBatched_v2_64`|6.3.0| | | | |`rocblas_zgemm_batched_64`|6.3.0| | | | | |`cublasZgemmStridedBatched`|8.0| | | |`hipblasZgemmStridedBatched_v2`|6.0.0| | | | |`rocblas_zgemm_strided_batched`|1.5.0| | | | | -|`cublasZgemmStridedBatched_64`|12.0| | | |`hipblasZgemmStridedBatched_v2_64`|6.3.0| | | |6.3.0|`rocblas_zgemm_strided_batched_64`|6.3.0| | | |6.3.0| -|`cublasZgemm_64`|12.0| | | |`hipblasZgemm_v2_64`|6.3.0| | | |6.3.0|`rocblas_zgemm_64`|6.3.0| | | |6.3.0| +|`cublasZgemmStridedBatched_64`|12.0| | | |`hipblasZgemmStridedBatched_v2_64`|6.3.0| | | | |`rocblas_zgemm_strided_batched_64`|6.3.0| | | | | +|`cublasZgemm_64`|12.0| | | |`hipblasZgemm_v2_64`|6.3.0| | | | |`rocblas_zgemm_64`|6.3.0| | | | | |`cublasZgemm_v2`| | | | |`hipblasZgemm_v2`|6.0.0| | | | |`rocblas_zgemm`|1.5.0| | | | | -|`cublasZgemm_v2_64`|12.0| | | |`hipblasZgemm_v2_64`|6.3.0| | | |6.3.0|`rocblas_zgemm_64`|6.3.0| | | |6.3.0| +|`cublasZgemm_v2_64`|12.0| | | |`hipblasZgemm_v2_64`|6.3.0| | | | |`rocblas_zgemm_64`|6.3.0| | | | | |`cublasZgemvBatched`|11.6| | | |`hipblasZgemvBatched_v2`|6.0.0| | | | |`rocblas_zgemv_batched`|3.5.0| | | | | |`cublasZgemvBatched_64`|12.0| | | |`hipblasZgemvBatched_v2_64`|6.2.0| | | | |`rocblas_zgemv_batched_64`|6.2.0| | | | | |`cublasZgemvStridedBatched`|11.6| | | |`hipblasZgemvStridedBatched_v2`|6.0.0| | | | |`rocblas_zgemv_strided_batched`|3.5.0| | | | | |`cublasZgemvStridedBatched_64`|12.0| | | |`hipblasZgemvStridedBatched_v2_64`|6.2.0| | | | |`rocblas_zgemv_strided_batched_64`|6.2.0| | | | | |`cublasZhemm`| | | | |`hipblasZhemm_v2`|6.0.0| | | | |`rocblas_zhemm`|3.5.0| | | | | -|`cublasZhemm_64`|12.0| | | |`hipblasZhemm_v2_64`|6.3.0| | | |6.3.0|`rocblas_zhemm_64`|6.3.0| | | |6.3.0| +|`cublasZhemm_64`|12.0| | | |`hipblasZhemm_v2_64`|6.3.0| | | | |`rocblas_zhemm_64`|6.3.0| | | | | |`cublasZhemm_v2`| | | | |`hipblasZhemm_v2`|6.0.0| | | | |`rocblas_zhemm`|3.5.0| | | | | -|`cublasZhemm_v2_64`|12.0| | | |`hipblasZhemm_v2_64`|6.3.0| | | |6.3.0|`rocblas_zhemm_64`|6.3.0| | | |6.3.0| +|`cublasZhemm_v2_64`|12.0| | | |`hipblasZhemm_v2_64`|6.3.0| | | | |`rocblas_zhemm_64`|6.3.0| | | | | |`cublasZher2k`| | | | |`hipblasZher2k_v2`|6.0.0| | | | |`rocblas_zher2k`|3.5.0| | | | | -|`cublasZher2k_64`|12.0| | | |`hipblasZher2k_v2_64`|6.3.0| | | |6.3.0|`rocblas_zher2k_64`|6.3.0| | | |6.3.0| +|`cublasZher2k_64`|12.0| | | |`hipblasZher2k_v2_64`|6.3.0| | | | |`rocblas_zher2k_64`|6.3.0| | | | | |`cublasZher2k_v2`| | | | |`hipblasZher2k_v2`|6.0.0| | | | |`rocblas_zher2k`|3.5.0| | | | | -|`cublasZher2k_v2_64`|12.0| | | |`hipblasZher2k_v2_64`|6.3.0| | | |6.3.0|`rocblas_zher2k_64`|6.3.0| | | |6.3.0| +|`cublasZher2k_v2_64`|12.0| | | |`hipblasZher2k_v2_64`|6.3.0| | | | |`rocblas_zher2k_64`|6.3.0| | | | | |`cublasZherk`| | | | |`hipblasZherk_v2`|6.0.0| | | | |`rocblas_zherk`|3.5.0| | | | | -|`cublasZherk_64`|12.0| | | |`hipblasZherk_v2_64`|6.3.0| | | |6.3.0|`rocblas_zherk_64`|6.3.0| | | |6.3.0| +|`cublasZherk_64`|12.0| | | |`hipblasZherk_v2_64`|6.3.0| | | | |`rocblas_zherk_64`|6.3.0| | | | | |`cublasZherk_v2`| | | | |`hipblasZherk_v2`|6.0.0| | | | |`rocblas_zherk`|3.5.0| | | | | -|`cublasZherk_v2_64`|12.0| | | |`hipblasZherk_v2_64`|6.3.0| | | |6.3.0|`rocblas_zherk_64`|6.3.0| | | |6.3.0| +|`cublasZherk_v2_64`|12.0| | | |`hipblasZherk_v2_64`|6.3.0| | | | |`rocblas_zherk_64`|6.3.0| | | | | |`cublasZherkx`| | | | |`hipblasZherkx_v2`|6.0.0| | | | |`rocblas_zherkx`|3.5.0| | | | | -|`cublasZherkx_64`|12.0| | | |`hipblasZherkx_v2_64`|6.3.0| | | |6.3.0|`rocblas_zherkx_64`|6.3.0| | | |6.3.0| +|`cublasZherkx_64`|12.0| | | |`hipblasZherkx_v2_64`|6.3.0| | | | |`rocblas_zherkx_64`|6.3.0| | | | | |`cublasZsymm`| | | | |`hipblasZsymm_v2`|6.0.0| | | | |`rocblas_zsymm`|3.5.0| | | | | -|`cublasZsymm_64`|12.0| | | |`hipblasZsymm_v2_64`|6.3.0| | | |6.3.0|`rocblas_zsymm_64`|6.3.0| | | |6.3.0| +|`cublasZsymm_64`|12.0| | | |`hipblasZsymm_v2_64`|6.3.0| | | | |`rocblas_zsymm_64`|6.3.0| | | | | |`cublasZsymm_v2`| | | | |`hipblasZsymm_v2`|6.0.0| | | | |`rocblas_zsymm`|3.5.0| | | | | -|`cublasZsymm_v2_64`|12.0| | | |`hipblasZsymm_v2_64`|6.3.0| | | |6.3.0|`rocblas_zsymm_64`|6.3.0| | | |6.3.0| +|`cublasZsymm_v2_64`|12.0| | | |`hipblasZsymm_v2_64`|6.3.0| | | | |`rocblas_zsymm_64`|6.3.0| | | | | |`cublasZsyr2k`| | | | |`hipblasZsyr2k_v2`|6.0.0| | | | |`rocblas_zsyr2k`|3.5.0| | | | | -|`cublasZsyr2k_64`|12.0| | | |`hipblasZsyr2k_v2_64`|6.3.0| | | |6.3.0|`rocblas_zsyr2k_64`|6.3.0| | | |6.3.0| +|`cublasZsyr2k_64`|12.0| | | |`hipblasZsyr2k_v2_64`|6.3.0| | | | |`rocblas_zsyr2k_64`|6.3.0| | | | | |`cublasZsyr2k_v2`| | | | |`hipblasZsyr2k_v2`|6.0.0| | | | |`rocblas_zsyr2k`|3.5.0| | | | | -|`cublasZsyr2k_v2_64`|12.0| | | |`hipblasZsyr2k_v2_64`|6.3.0| | | |6.3.0|`rocblas_zsyr2k_64`|6.3.0| | | |6.3.0| +|`cublasZsyr2k_v2_64`|12.0| | | |`hipblasZsyr2k_v2_64`|6.3.0| | | | |`rocblas_zsyr2k_64`|6.3.0| | | | | |`cublasZsyrk`| | | | |`hipblasZsyrk_v2`|6.0.0| | | | |`rocblas_zsyrk`|3.5.0| | | | | -|`cublasZsyrk_64`|12.0| | | |`hipblasZsyrk_v2_64`|6.3.0| | | |6.3.0|`rocblas_zsyrk_64`|6.3.0| | | |6.3.0| +|`cublasZsyrk_64`|12.0| | | |`hipblasZsyrk_v2_64`|6.3.0| | | | |`rocblas_zsyrk_64`|6.3.0| | | | | |`cublasZsyrk_v2`| | | | |`hipblasZsyrk_v2`|6.0.0| | | | |`rocblas_zsyrk`|3.5.0| | | | | -|`cublasZsyrk_v2_64`|12.0| | | |`hipblasZsyrk_v2_64`|6.3.0| | | |6.3.0|`rocblas_zsyrk_64`|6.3.0| | | |6.3.0| +|`cublasZsyrk_v2_64`|12.0| | | |`hipblasZsyrk_v2_64`|6.3.0| | | | |`rocblas_zsyrk_64`|6.3.0| | | | | |`cublasZsyrkx`| | | | |`hipblasZsyrkx_v2`|6.0.0| | | | |`rocblas_zsyrkx`|3.5.0| | | | | -|`cublasZsyrkx_64`|12.0| | | |`hipblasZsyrkx_v2_64`|6.3.0| | | |6.3.0|`rocblas_zsyrkx_64`|6.3.0| | | |6.3.0| +|`cublasZsyrkx_64`|12.0| | | |`hipblasZsyrkx_v2_64`|6.3.0| | | | |`rocblas_zsyrkx_64`|6.3.0| | | | | |`cublasZtrmm`| | | | |`hipblasZtrmm_v2`|6.0.0| | | | |`rocblas_ztrmm`|3.5.0| |6.0.0| | | -|`cublasZtrmm_64`|12.0| | | |`hipblasZtrmm_v2_64`|6.3.0| | | |6.3.0|`rocblas_ztrmm_64`|6.3.0| | | |6.3.0| +|`cublasZtrmm_64`|12.0| | | |`hipblasZtrmm_v2_64`|6.3.0| | | | |`rocblas_ztrmm_64`|6.3.0| | | | | |`cublasZtrmm_v2`| | | | |`hipblasZtrmm_v2`|6.0.0| | | | |`rocblas_ztrmm`|3.5.0| |6.0.0| | | -|`cublasZtrmm_v2_64`|12.0| | | |`hipblasZtrmm_v2_64`|6.3.0| | | |6.3.0|`rocblas_ztrmm_64`|6.3.0| | | |6.3.0| +|`cublasZtrmm_v2_64`|12.0| | | |`hipblasZtrmm_v2_64`|6.3.0| | | | |`rocblas_ztrmm_64`|6.3.0| | | | | |`cublasZtrsm`| | | | |`hipblasZtrsm_v2`|6.0.0| | | | |`rocblas_ztrsm`|3.5.0| | | | | -|`cublasZtrsm_64`|12.0| | | |`hipblasZtrsm_v2_64`|6.3.0| | | |6.3.0|`rocblas_ztrsm_64`|6.2.0| | | | | +|`cublasZtrsm_64`|12.0| | | |`hipblasZtrsm_v2_64`|6.3.0| | | | |`rocblas_ztrsm_64`|6.2.0| | | | | |`cublasZtrsm_v2`| | | | |`hipblasZtrsm_v2`|6.0.0| | | | |`rocblas_ztrsm`|3.5.0| | | | | -|`cublasZtrsm_v2_64`|12.0| | | |`hipblasZtrsm_v2_64`|6.3.0| | | |6.3.0|`rocblas_ztrsm_64`|6.2.0| | | | | +|`cublasZtrsm_v2_64`|12.0| | | |`hipblasZtrsm_v2_64`|6.3.0| | | | |`rocblas_ztrsm_64`|6.2.0| | | | | ## **8. BLAS-like Extension** @@ -1825,9 +1825,9 @@ |`cublasAxpyEx`|8.0| | | |`hipblasAxpyEx_v2`|6.0.0| | | | |`rocblas_axpy_ex`|3.9.0| | | | | |`cublasAxpyEx_64`|12.0| | | |`hipblasAxpyEx_v2_64`|6.2.0| | | | |`rocblas_axpy_ex_64`|6.1.0| | | | | |`cublasCdgmm`| | | | |`hipblasCdgmm_v2`|6.0.0| | | | |`rocblas_cdgmm`|3.5.0| | | | | -|`cublasCdgmm_64`|12.0| | | |`hipblasCdgmm_v2_64`|6.3.0| | | |6.3.0|`rocblas_cdgmm_64`|6.3.0| | | |6.3.0| +|`cublasCdgmm_64`|12.0| | | |`hipblasCdgmm_v2_64`|6.3.0| | | | |`rocblas_cdgmm_64`|6.3.0| | | | | |`cublasCgeam`| | | | |`hipblasCgeam_v2`|6.0.0| | | | |`rocblas_cgeam`|3.5.0| | | | | -|`cublasCgeam_64`|12.0| | | |`hipblasCgeam_v2_64`|6.3.0| | | |6.3.0|`rocblas_cgeam_64`|6.3.0| | | |6.3.0| +|`cublasCgeam_64`|12.0| | | |`hipblasCgeam_v2_64`|6.3.0| | | | |`rocblas_cgeam_64`|6.3.0| | | | | |`cublasCgelsBatched`| | | | |`hipblasCgelsBatched_v2`|6.0.0| | | | | | | | | | | |`cublasCgemmEx`|8.0| | | | | | | | | | | | | | | | |`cublasCgemmEx_64`|12.0| | | | | | | | | | | | | | | | @@ -1848,12 +1848,12 @@ |`cublasCsyrkEx_64`|12.0| | | | | | | | | | | | | | | | |`cublasCtpttr`| | | | | | | | | | | | | | | | | |`cublasCtrsmBatched`| | | | |`hipblasCtrsmBatched_v2`|6.0.0| | | | |`rocblas_ctrsm_batched`|3.5.0| | | | | -|`cublasCtrsmBatched_64`|12.0| | | |`hipblasCtrsmBatched_v2_64`|6.3.0| | | |6.3.0|`rocblas_ctrsm_batched_64`|6.2.0| | | | | +|`cublasCtrsmBatched_64`|12.0| | | |`hipblasCtrsmBatched_v2_64`|6.3.0| | | | |`rocblas_ctrsm_batched_64`|6.2.0| | | | | |`cublasCtrttp`| | | | | | | | | | | | | | | | | |`cublasDdgmm`| | | | |`hipblasDdgmm`|3.6.0| | | | |`rocblas_ddgmm`|3.5.0| | | | | -|`cublasDdgmm_64`|12.0| | | |`hipblasDdgmm_64`|6.3.0| | | |6.3.0|`rocblas_ddgmm_64`|6.3.0| | | |6.3.0| +|`cublasDdgmm_64`|12.0| | | |`hipblasDdgmm_64`|6.3.0| | | | |`rocblas_ddgmm_64`|6.3.0| | | | | |`cublasDgeam`| | | | |`hipblasDgeam`|1.8.2| | | | |`rocblas_dgeam`|1.6.4| | | | | -|`cublasDgeam_64`|12.0| | | |`hipblasDgeam_64`|6.3.0| | | |6.3.0|`rocblas_dgeam_64`|6.3.0| | | |6.3.0| +|`cublasDgeam_64`|12.0| | | |`hipblasDgeam_64`|6.3.0| | | | |`rocblas_dgeam_64`|6.3.0| | | | | |`cublasDgelsBatched`| | | | |`hipblasDgelsBatched`|5.4.0| | | | | | | | | | | |`cublasDgeqrfBatched`| | | | |`hipblasDgeqrfBatched`|3.5.0| | | | | | | | | | | |`cublasDgetrfBatched`| | | | |`hipblasDgetrfBatched`|3.5.0| | | | | | | | | | | @@ -1866,14 +1866,14 @@ |`cublasDotcEx_64`|12.0| | | |`hipblasDotcEx_v2_64`|6.2.0| | | | |`rocblas_dotc_ex_64`|6.1.0| | | | | |`cublasDtpttr`| | | | | | | | | | | | | | | | | |`cublasDtrsmBatched`| | | | |`hipblasDtrsmBatched`|3.2.0| | | | |`rocblas_dtrsm_batched`|3.5.0| | | | | -|`cublasDtrsmBatched_64`|12.0| | | |`hipblasDtrsmBatched_64`|6.3.0| | | |6.3.0|`rocblas_dtrsm_batched_64`|6.2.0| | | | | +|`cublasDtrsmBatched_64`|12.0| | | |`hipblasDtrsmBatched_64`|6.3.0| | | | |`rocblas_dtrsm_batched_64`|6.2.0| | | | | |`cublasDtrttp`| | | | | | | | | | | | | | | | | |`cublasGemmBatchedEx`|9.1| |11.0| |`hipblasGemmBatchedEx_v2`|6.0.0| | | | |`rocblas_gemm_batched_ex`|3.5.0| | | | | -|`cublasGemmBatchedEx_64`|12.0| | | |`hipblasGemmBatchedEx_v2_64`|6.3.0| | | |6.3.0| | | | | | | +|`cublasGemmBatchedEx_64`|12.0| | | |`hipblasGemmBatchedEx_v2_64`|6.3.0| | | | | | | | | | | |`cublasGemmEx`|8.0| |11.0| |`hipblasGemmEx_v2`|6.0.0| | | | |`rocblas_gemm_ex`|1.8.2| | | | | -|`cublasGemmEx_64`|12.0| | | |`hipblasGemmEx_v2_64`|6.3.0| | | |6.3.0| | | | | | | +|`cublasGemmEx_64`|12.0| | | |`hipblasGemmEx_v2_64`|6.3.0| | | | | | | | | | | |`cublasGemmStridedBatchedEx`|9.1| |11.0| |`hipblasGemmStridedBatchedEx_v2`|6.0.0| | | | |`rocblas_gemm_strided_batched_ex`|1.9.0| | | | | -|`cublasGemmStridedBatchedEx_64`|12.0| | | |`hipblasGemmStridedBatchedEx_v2_64`|6.3.0| | | |6.3.0| | | | | | | +|`cublasGemmStridedBatchedEx_64`|12.0| | | |`hipblasGemmStridedBatchedEx_v2_64`|6.3.0| | | | | | | | | | | |`cublasIamaxEx`|10.1| | | | | | | | | | | | | | | | |`cublasIamaxEx_64`|12.0| | | | | | | | | | | | | | | | |`cublasIaminEx`|10.1| | | | | | | | | | | | | | | | @@ -1887,9 +1887,9 @@ |`cublasScalEx`|8.0| | | |`hipblasScalEx_v2`|6.0.0| | | | |`rocblas_scal_ex`|4.0.0| | | | | |`cublasScalEx_64`|12.0| | | |`hipblasScalEx_v2_64`|6.2.0| | | | |`rocblas_scal_ex_64`|6.1.0| | | | | |`cublasSdgmm`| | | | |`hipblasSdgmm`|3.6.0| | | | |`rocblas_sdgmm`|3.5.0| | | | | -|`cublasSdgmm_64`|12.0| | | |`hipblasSdgmm_64`|6.3.0| | | |6.3.0|`rocblas_sdgmm_64`|6.3.0| | | |6.3.0| +|`cublasSdgmm_64`|12.0| | | |`hipblasSdgmm_64`|6.3.0| | | | |`rocblas_sdgmm_64`|6.3.0| | | | | |`cublasSgeam`| | | | |`hipblasSgeam`|1.8.2| | | | |`rocblas_sgeam`|1.6.4| | | | | -|`cublasSgeam_64`|12.0| | | |`hipblasSgeam_64`|6.3.0| | | |6.3.0|`rocblas_sgeam_64`|6.3.0| | | |6.3.0| +|`cublasSgeam_64`|12.0| | | |`hipblasSgeam_64`|6.3.0| | | | |`rocblas_sgeam_64`|6.3.0| | | | | |`cublasSgelsBatched`| | | | |`hipblasSgelsBatched`|5.4.0| | | | | | | | | | | |`cublasSgemmEx`|7.5| | | | | | | | | | | | | | | | |`cublasSgemmEx_64`|12.0| | | | | | | | | | | | | | | | @@ -1900,15 +1900,15 @@ |`cublasSmatinvBatched`| | | | | | | | | | | | | | | | | |`cublasStpttr`| | | | | | | | | | | | | | | | | |`cublasStrsmBatched`| | | | |`hipblasStrsmBatched`|3.2.0| | | | |`rocblas_strsm_batched`|3.5.0| | | | | -|`cublasStrsmBatched_64`|12.0| | | |`hipblasStrsmBatched_64`|6.3.0| | | |6.3.0|`rocblas_strsm_batched_64`|6.2.0| | | | | +|`cublasStrsmBatched_64`|12.0| | | |`hipblasStrsmBatched_64`|6.3.0| | | | |`rocblas_strsm_batched_64`|6.2.0| | | | | |`cublasStrttp`| | | | | | | | | | | | | | | | | |`cublasSwapEx`|10.1| | | | | | | | | | | | | | | | |`cublasSwapEx_64`|12.0| | | | | | | | | | | | | | | | |`cublasUint8gemmBias`|8.0| | | | | | | | | | | | | | | | |`cublasZdgmm`| | | | |`hipblasZdgmm_v2`|6.0.0| | | | |`rocblas_zdgmm`|3.5.0| | | | | -|`cublasZdgmm_64`|12.0| | | |`hipblasZdgmm_v2_64`|6.3.0| | | |6.3.0|`rocblas_zdgmm_64`|6.3.0| | | |6.3.0| +|`cublasZdgmm_64`|12.0| | | |`hipblasZdgmm_v2_64`|6.3.0| | | | |`rocblas_zdgmm_64`|6.3.0| | | | | |`cublasZgeam`| | | | |`hipblasZgeam_v2`|6.0.0| | | | |`rocblas_zgeam`|3.5.0| | | | | -|`cublasZgeam_64`|12.0| | | |`hipblasZgeam_v2_64`|6.3.0| | | |6.3.0|`rocblas_zgeam_64`|6.3.0| | | |6.3.0| +|`cublasZgeam_64`|12.0| | | |`hipblasZgeam_v2_64`|6.3.0| | | | |`rocblas_zgeam_64`|6.3.0| | | | | |`cublasZgelsBatched`| | | | |`hipblasZgelsBatched_v2`|6.0.0| | | | | | | | | | | |`cublasZgeqrfBatched`| | | | |`hipblasZgeqrfBatched_v2`|6.0.0| | | | | | | | | | | |`cublasZgetrfBatched`| | | | |`hipblasZgetrfBatched_v2`|6.0.0| | | | | | | | | | | @@ -1917,7 +1917,7 @@ |`cublasZmatinvBatched`| | | | | | | | | | | | | | | | | |`cublasZtpttr`| | | | | | | | | | | | | | | | | |`cublasZtrsmBatched`| | | | |`hipblasZtrsmBatched_v2`|6.0.0| | | | |`rocblas_ztrsm_batched`|3.5.0| | | | | -|`cublasZtrsmBatched_64`|12.0| | | |`hipblasZtrsmBatched_v2_64`|6.3.0| | | |6.3.0|`rocblas_ztrsm_batched_64`|6.2.0| | | | | +|`cublasZtrsmBatched_64`|12.0| | | |`hipblasZtrsmBatched_v2_64`|6.3.0| | | | |`rocblas_ztrsm_batched_64`|6.2.0| | | | | |`cublasZtrttp`| | | | | | | | | | | | | | | | | ## **9. BLASLt Function Reference** diff --git a/docs/tables/CUBLAS_API_supported_by_ROC.md b/docs/tables/CUBLAS_API_supported_by_ROC.md index c76de30a..b9384be7 100644 --- a/docs/tables/CUBLAS_API_supported_by_ROC.md +++ b/docs/tables/CUBLAS_API_supported_by_ROC.md @@ -1623,84 +1623,84 @@ |`cublasCgemm3mStridedBatched_64`|12.0| | | | | | | | | | |`cublasCgemm3m_64`|12.0| | | | | | | | | | |`cublasCgemmBatched`| | | | |`rocblas_cgemm_batched`|3.5.0| | | | | -|`cublasCgemmBatched_64`|12.0| | | |`rocblas_cgemm_batched_64`|6.3.0| | | |6.3.0| +|`cublasCgemmBatched_64`|12.0| | | |`rocblas_cgemm_batched_64`|6.3.0| | | | | |`cublasCgemmStridedBatched`|8.0| | | |`rocblas_cgemm_strided_batched`|1.5.0| | | | | -|`cublasCgemmStridedBatched_64`|12.0| | | |`rocblas_cgemm_strided_batched_64`|6.3.0| | | |6.3.0| -|`cublasCgemm_64`|12.0| | | |`rocblas_cgemm_64`|6.3.0| | | |6.3.0| +|`cublasCgemmStridedBatched_64`|12.0| | | |`rocblas_cgemm_strided_batched_64`|6.3.0| | | | | +|`cublasCgemm_64`|12.0| | | |`rocblas_cgemm_64`|6.3.0| | | | | |`cublasCgemm_v2`| | | | |`rocblas_cgemm`|1.5.0| | | | | -|`cublasCgemm_v2_64`|12.0| | | |`rocblas_cgemm_64`|6.3.0| | | |6.3.0| +|`cublasCgemm_v2_64`|12.0| | | |`rocblas_cgemm_64`|6.3.0| | | | | |`cublasCgemvBatched`|11.6| | | |`rocblas_cgemv_batched`|3.5.0| | | | | |`cublasCgemvBatched_64`|12.0| | | |`rocblas_cgemv_batched_64`|6.2.0| | | | | |`cublasCgemvStridedBatched`|11.6| | | |`rocblas_cgemv_strided_batched`|3.5.0| | | | | |`cublasCgemvStridedBatched_64`|12.0| | | |`rocblas_cgemv_strided_batched_64`|6.2.0| | | | | |`cublasChemm`| | | | |`rocblas_chemm`|3.5.0| | | | | -|`cublasChemm_64`|12.0| | | |`rocblas_chemm_64`|6.3.0| | | |6.3.0| +|`cublasChemm_64`|12.0| | | |`rocblas_chemm_64`|6.3.0| | | | | |`cublasChemm_v2`| | | | |`rocblas_chemm`|3.5.0| | | | | -|`cublasChemm_v2_64`|12.0| | | |`rocblas_chemm_64`|6.3.0| | | |6.3.0| +|`cublasChemm_v2_64`|12.0| | | |`rocblas_chemm_64`|6.3.0| | | | | |`cublasCher2k`| | | | |`rocblas_cher2k`|3.5.0| | | | | -|`cublasCher2k_64`|12.0| | | |`rocblas_cher2k_64`|6.3.0| | | |6.3.0| +|`cublasCher2k_64`|12.0| | | |`rocblas_cher2k_64`|6.3.0| | | | | |`cublasCher2k_v2`| | | | |`rocblas_cher2k`|3.5.0| | | | | -|`cublasCher2k_v2_64`|12.0| | | |`rocblas_cher2k_64`|6.3.0| | | |6.3.0| +|`cublasCher2k_v2_64`|12.0| | | |`rocblas_cher2k_64`|6.3.0| | | | | |`cublasCherk`| | | | |`rocblas_cherk`|3.5.0| | | | | -|`cublasCherk_64`|12.0| | | |`rocblas_cherk_64`|6.3.0| | | |6.3.0| +|`cublasCherk_64`|12.0| | | |`rocblas_cherk_64`|6.3.0| | | | | |`cublasCherk_v2`| | | | |`rocblas_cherk`|3.5.0| | | | | -|`cublasCherk_v2_64`|12.0| | | |`rocblas_cherk_64`|6.3.0| | | |6.3.0| +|`cublasCherk_v2_64`|12.0| | | |`rocblas_cherk_64`|6.3.0| | | | | |`cublasCherkx`| | | | |`rocblas_cherkx`|3.5.0| | | | | -|`cublasCherkx_64`|12.0| | | |`rocblas_cherkx_64`|6.3.0| | | |6.3.0| +|`cublasCherkx_64`|12.0| | | |`rocblas_cherkx_64`|6.3.0| | | | | |`cublasCsymm`| | | | |`rocblas_csymm`|3.5.0| | | | | -|`cublasCsymm_64`|12.0| | | |`rocblas_csymm_64`|6.3.0| | | |6.3.0| +|`cublasCsymm_64`|12.0| | | |`rocblas_csymm_64`|6.3.0| | | | | |`cublasCsymm_v2`| | | | |`rocblas_csymm`|3.5.0| | | | | -|`cublasCsymm_v2_64`|12.0| | | |`rocblas_csymm_64`|6.3.0| | | |6.3.0| +|`cublasCsymm_v2_64`|12.0| | | |`rocblas_csymm_64`|6.3.0| | | | | |`cublasCsyr2k`| | | | |`rocblas_csyr2k`|3.5.0| | | | | -|`cublasCsyr2k_64`|12.0| | | |`rocblas_csyr2k_64`|6.3.0| | | |6.3.0| +|`cublasCsyr2k_64`|12.0| | | |`rocblas_csyr2k_64`|6.3.0| | | | | |`cublasCsyr2k_v2`| | | | |`rocblas_csyr2k`|3.5.0| | | | | -|`cublasCsyr2k_v2_64`|12.0| | | |`rocblas_csyr2k_64`|6.3.0| | | |6.3.0| +|`cublasCsyr2k_v2_64`|12.0| | | |`rocblas_csyr2k_64`|6.3.0| | | | | |`cublasCsyrk`| | | | |`rocblas_csyrk`|3.5.0| | | | | -|`cublasCsyrk_64`|12.0| | | |`rocblas_csyrk_64`|6.3.0| | | |6.3.0| +|`cublasCsyrk_64`|12.0| | | |`rocblas_csyrk_64`|6.3.0| | | | | |`cublasCsyrk_v2`| | | | |`rocblas_csyrk`|3.5.0| | | | | -|`cublasCsyrk_v2_64`|12.0| | | |`rocblas_csyrk_64`|6.3.0| | | |6.3.0| +|`cublasCsyrk_v2_64`|12.0| | | |`rocblas_csyrk_64`|6.3.0| | | | | |`cublasCsyrkx`| | | | |`rocblas_csyrkx`|3.5.0| | | | | -|`cublasCsyrkx_64`|12.0| | | |`rocblas_csyrkx_64`|6.3.0| | | |6.3.0| +|`cublasCsyrkx_64`|12.0| | | |`rocblas_csyrkx_64`|6.3.0| | | | | |`cublasCtrmm`| | | | |`rocblas_ctrmm`|3.5.0| |6.0.0| | | -|`cublasCtrmm_64`|12.0| | | |`rocblas_ctrmm_64`|6.3.0| | | |6.3.0| +|`cublasCtrmm_64`|12.0| | | |`rocblas_ctrmm_64`|6.3.0| | | | | |`cublasCtrmm_v2`| | | | |`rocblas_ctrmm`|3.5.0| |6.0.0| | | -|`cublasCtrmm_v2_64`|12.0| | | |`rocblas_ctrmm_64`|6.3.0| | | |6.3.0| +|`cublasCtrmm_v2_64`|12.0| | | |`rocblas_ctrmm_64`|6.3.0| | | | | |`cublasCtrsm`| | | | |`rocblas_ctrsm`|3.5.0| | | | | |`cublasCtrsm_64`|12.0| | | |`rocblas_ctrsm_64`|6.2.0| | | | | |`cublasCtrsm_v2`| | | | |`rocblas_ctrsm`|3.5.0| | | | | |`cublasCtrsm_v2_64`|12.0| | | |`rocblas_ctrsm_64`|6.2.0| | | | | |`cublasDgemm`| | | | |`rocblas_dgemm`|1.5.0| | | | | |`cublasDgemmBatched`| | | | |`rocblas_dgemm_batched`|3.5.0| | | | | -|`cublasDgemmBatched_64`|12.0| | | |`rocblas_dgemm_batched_64`|6.3.0| | | |6.3.0| +|`cublasDgemmBatched_64`|12.0| | | |`rocblas_dgemm_batched_64`|6.3.0| | | | | |`cublasDgemmGroupedBatched`|12.4| | | | | | | | | | |`cublasDgemmGroupedBatched_64`|12.4| | | | | | | | | | |`cublasDgemmStridedBatched`|8.0| | | |`rocblas_dgemm_strided_batched`|1.5.0| | | | | -|`cublasDgemmStridedBatched_64`|12.0| | | |`rocblas_dgemm_strided_batched_64`|6.3.0| | | |6.3.0| -|`cublasDgemm_64`|12.0| | | |`rocblas_dgemm_64`|6.3.0| | | |6.3.0| +|`cublasDgemmStridedBatched_64`|12.0| | | |`rocblas_dgemm_strided_batched_64`|6.3.0| | | | | +|`cublasDgemm_64`|12.0| | | |`rocblas_dgemm_64`|6.3.0| | | | | |`cublasDgemm_v2`| | | | |`rocblas_dgemm`|1.5.0| | | | | -|`cublasDgemm_v2_64`|12.0| | | |`rocblas_dgemm_64`|6.3.0| | | |6.3.0| +|`cublasDgemm_v2_64`|12.0| | | |`rocblas_dgemm_64`|6.3.0| | | | | |`cublasDgemvBatched`|11.6| | | |`rocblas_dgemv_batched`|3.5.0| | | | | |`cublasDgemvBatched_64`|12.0| | | |`rocblas_dgemv_batched_64`|6.2.0| | | | | |`cublasDgemvStridedBatched`|11.6| | | |`rocblas_dgemv_strided_batched`|3.5.0| | | | | |`cublasDgemvStridedBatched_64`|12.0| | | |`rocblas_dgemv_strided_batched_64`|6.2.0| | | | | |`cublasDsymm`| | | | |`rocblas_dsymm`|3.5.0| | | | | -|`cublasDsymm_64`|12.0| | | |`rocblas_dsymm_64`|6.3.0| | | |6.3.0| +|`cublasDsymm_64`|12.0| | | |`rocblas_dsymm_64`|6.3.0| | | | | |`cublasDsymm_v2`| | | | |`rocblas_dsymm`|3.5.0| | | | | -|`cublasDsymm_v2_64`|12.0| | | |`rocblas_dsymm_64`|6.3.0| | | |6.3.0| +|`cublasDsymm_v2_64`|12.0| | | |`rocblas_dsymm_64`|6.3.0| | | | | |`cublasDsyr2k`| | | | |`rocblas_dsyr2k`|3.5.0| | | | | -|`cublasDsyr2k_64`|12.0| | | |`rocblas_dsyr2k_64`|6.3.0| | | |6.3.0| +|`cublasDsyr2k_64`|12.0| | | |`rocblas_dsyr2k_64`|6.3.0| | | | | |`cublasDsyr2k_v2`| | | | |`rocblas_dsyr2k`|3.5.0| | | | | -|`cublasDsyr2k_v2_64`|12.0| | | |`rocblas_dsyr2k_64`|6.3.0| | | |6.3.0| +|`cublasDsyr2k_v2_64`|12.0| | | |`rocblas_dsyr2k_64`|6.3.0| | | | | |`cublasDsyrk`| | | | |`rocblas_dsyrk`|3.5.0| | | | | -|`cublasDsyrk_64`|12.0| | | |`rocblas_dsyrk_64`|6.3.0| | | |6.3.0| +|`cublasDsyrk_64`|12.0| | | |`rocblas_dsyrk_64`|6.3.0| | | | | |`cublasDsyrk_v2`| | | | |`rocblas_dsyrk`|3.5.0| | | | | -|`cublasDsyrk_v2_64`|12.0| | | |`rocblas_dsyrk_64`|6.3.0| | | |6.3.0| +|`cublasDsyrk_v2_64`|12.0| | | |`rocblas_dsyrk_64`|6.3.0| | | | | |`cublasDsyrkx`| | | | |`rocblas_dsyrkx`|3.5.0| | | | | -|`cublasDsyrkx_64`|12.0| | | |`rocblas_dsyrkx_64`|6.3.0| | | |6.3.0| +|`cublasDsyrkx_64`|12.0| | | |`rocblas_dsyrkx_64`|6.3.0| | | | | |`cublasDtrmm`| | | | |`rocblas_dtrmm`|3.5.0| |6.0.0| | | -|`cublasDtrmm_64`|12.0| | | |`rocblas_dtrmm_64`|6.3.0| | | |6.3.0| +|`cublasDtrmm_64`|12.0| | | |`rocblas_dtrmm_64`|6.3.0| | | | | |`cublasDtrmm_v2`| | | | |`rocblas_dtrmm`|3.5.0| |6.0.0| | | -|`cublasDtrmm_v2_64`|12.0| | | |`rocblas_dtrmm_64`|6.3.0| | | |6.3.0| +|`cublasDtrmm_v2_64`|12.0| | | |`rocblas_dtrmm_64`|6.3.0| | | | | |`cublasDtrsm`| | | | |`rocblas_dtrsm`|1.5.0| | | | | |`cublasDtrsm_64`|12.0| | | |`rocblas_dtrsm_64`|6.2.0| | | | | |`cublasDtrsm_v2`| | | | |`rocblas_dtrsm`|1.5.0| | | | | @@ -1717,42 +1717,42 @@ |`cublasHSSgemvStridedBatched_64`|12.0| | | |`rocblas_hssgemv_strided_batched_64`|6.2.0| | | | | |`cublasHgemm`|7.5| | | |`rocblas_hgemm`|1.5.0| | | | | |`cublasHgemmBatched`|9.0| | | |`rocblas_hgemm_batched`|3.5.0| | | | | -|`cublasHgemmBatched_64`|12.0| | | |`rocblas_hgemm_batched_64`|6.3.0| | | |6.3.0| +|`cublasHgemmBatched_64`|12.0| | | |`rocblas_hgemm_batched_64`|6.3.0| | | | | |`cublasHgemmStridedBatched`|8.0| | | |`rocblas_hgemm_strided_batched`|1.5.0| | | | | -|`cublasHgemmStridedBatched_64`|12.0| | | |`rocblas_hgemm_strided_batched_64`|6.3.0| | | |6.3.0| -|`cublasHgemm_64`|12.0| | | |`rocblas_hgemm_64`|6.3.0| | | |6.3.0| +|`cublasHgemmStridedBatched_64`|12.0| | | |`rocblas_hgemm_strided_batched_64`|6.3.0| | | | | +|`cublasHgemm_64`|12.0| | | |`rocblas_hgemm_64`|6.3.0| | | | | |`cublasSgemm`| | | | |`rocblas_sgemm`|1.5.0| | | | | |`cublasSgemmBatched`| | | | |`rocblas_sgemm_batched`|3.5.0| | | | | -|`cublasSgemmBatched_64`|12.0| | | |`rocblas_sgemm_batched_64`|6.3.0| | | |6.3.0| +|`cublasSgemmBatched_64`|12.0| | | |`rocblas_sgemm_batched_64`|6.3.0| | | | | |`cublasSgemmGroupedBatched`|12.4| | | | | | | | | | |`cublasSgemmGroupedBatched_64`|12.4| | | | | | | | | | |`cublasSgemmStridedBatched`|8.0| | | |`rocblas_sgemm_strided_batched`|1.5.0| | | | | -|`cublasSgemmStridedBatched_64`|12.0| | | |`rocblas_sgemm_strided_batched_64`|6.3.0| | | |6.3.0| -|`cublasSgemm_64`|12.0| | | |`rocblas_sgemm_64`|6.3.0| | | |6.3.0| +|`cublasSgemmStridedBatched_64`|12.0| | | |`rocblas_sgemm_strided_batched_64`|6.3.0| | | | | +|`cublasSgemm_64`|12.0| | | |`rocblas_sgemm_64`|6.3.0| | | | | |`cublasSgemm_v2`| | | | |`rocblas_sgemm`|1.5.0| | | | | -|`cublasSgemm_v2_64`|12.0| | | |`rocblas_sgemm_64`|6.3.0| | | |6.3.0| +|`cublasSgemm_v2_64`|12.0| | | |`rocblas_sgemm_64`|6.3.0| | | | | |`cublasSgemvBatched`|11.6| | | |`rocblas_sgemv_batched`|3.5.0| | | | | |`cublasSgemvBatched_64`|12.0| | | |`rocblas_sgemv_batched_64`|6.2.0| | | | | |`cublasSgemvStridedBatched`|11.6| | | |`rocblas_sgemv_strided_batched`|3.5.0| | | | | |`cublasSgemvStridedBatched_64`|12.0| | | |`rocblas_sgemv_strided_batched_64`|6.2.0| | | | | |`cublasSsymm`| | | | |`rocblas_ssymm`|3.5.0| | | | | -|`cublasSsymm_64`|12.0| | | |`rocblas_ssymm_64`|6.3.0| | | |6.3.0| +|`cublasSsymm_64`|12.0| | | |`rocblas_ssymm_64`|6.3.0| | | | | |`cublasSsymm_v2`| | | | |`rocblas_ssymm`|3.5.0| | | | | -|`cublasSsymm_v2_64`|12.0| | | |`rocblas_ssymm_64`|6.3.0| | | |6.3.0| +|`cublasSsymm_v2_64`|12.0| | | |`rocblas_ssymm_64`|6.3.0| | | | | |`cublasSsyr2k`| | | | |`rocblas_ssyr2k`|3.5.0| | | | | -|`cublasSsyr2k_64`|12.0| | | |`rocblas_ssyr2k_64`|6.3.0| | | |6.3.0| +|`cublasSsyr2k_64`|12.0| | | |`rocblas_ssyr2k_64`|6.3.0| | | | | |`cublasSsyr2k_v2`| | | | |`rocblas_ssyr2k`|3.5.0| | | | | -|`cublasSsyr2k_v2_64`|12.0| | | |`rocblas_ssyr2k_64`|6.3.0| | | |6.3.0| +|`cublasSsyr2k_v2_64`|12.0| | | |`rocblas_ssyr2k_64`|6.3.0| | | | | |`cublasSsyrk`| | | | |`rocblas_ssyrk`|3.5.0| | | | | -|`cublasSsyrk_64`|12.0| | | |`rocblas_ssyrk_64`|6.3.0| | | |6.3.0| +|`cublasSsyrk_64`|12.0| | | |`rocblas_ssyrk_64`|6.3.0| | | | | |`cublasSsyrk_v2`| | | | |`rocblas_ssyrk`|3.5.0| | | | | -|`cublasSsyrk_v2_64`|12.0| | | |`rocblas_ssyrk_64`|6.3.0| | | |6.3.0| +|`cublasSsyrk_v2_64`|12.0| | | |`rocblas_ssyrk_64`|6.3.0| | | | | |`cublasSsyrkx`| | | | |`rocblas_ssyrkx`|3.5.0| | | | | -|`cublasSsyrkx_64`|12.0| | | |`rocblas_ssyrkx_64`|6.3.0| | | |6.3.0| +|`cublasSsyrkx_64`|12.0| | | |`rocblas_ssyrkx_64`|6.3.0| | | | | |`cublasStrmm`| | | | |`rocblas_strmm`|3.5.0| |6.0.0| | | -|`cublasStrmm_64`|12.0| | | |`rocblas_strmm_64`|6.3.0| | | |6.3.0| +|`cublasStrmm_64`|12.0| | | |`rocblas_strmm_64`|6.3.0| | | | | |`cublasStrmm_v2`| | | | |`rocblas_strmm`|3.5.0| |6.0.0| | | -|`cublasStrmm_v2_64`|12.0| | | |`rocblas_strmm_64`|6.3.0| | | |6.3.0| +|`cublasStrmm_v2_64`|12.0| | | |`rocblas_strmm_64`|6.3.0| | | | | |`cublasStrsm`| | | | |`rocblas_strsm`|1.5.0| | | | | |`cublasStrsm_64`|12.0| | | |`rocblas_strsm_64`|6.2.0| | | | | |`cublasStrsm_v2`| | | | |`rocblas_strsm`|1.5.0| | | | | @@ -1769,48 +1769,48 @@ |`cublasZgemm3m`|8.0| | | | | | | | | | |`cublasZgemm3m_64`|12.0| | | | | | | | | | |`cublasZgemmBatched`| | | | |`rocblas_zgemm_batched`|3.5.0| | | | | -|`cublasZgemmBatched_64`|12.0| | | |`rocblas_zgemm_batched_64`|6.3.0| | | |6.3.0| +|`cublasZgemmBatched_64`|12.0| | | |`rocblas_zgemm_batched_64`|6.3.0| | | | | |`cublasZgemmStridedBatched`|8.0| | | |`rocblas_zgemm_strided_batched`|1.5.0| | | | | -|`cublasZgemmStridedBatched_64`|12.0| | | |`rocblas_zgemm_strided_batched_64`|6.3.0| | | |6.3.0| -|`cublasZgemm_64`|12.0| | | |`rocblas_zgemm_64`|6.3.0| | | |6.3.0| +|`cublasZgemmStridedBatched_64`|12.0| | | |`rocblas_zgemm_strided_batched_64`|6.3.0| | | | | +|`cublasZgemm_64`|12.0| | | |`rocblas_zgemm_64`|6.3.0| | | | | |`cublasZgemm_v2`| | | | |`rocblas_zgemm`|1.5.0| | | | | -|`cublasZgemm_v2_64`|12.0| | | |`rocblas_zgemm_64`|6.3.0| | | |6.3.0| +|`cublasZgemm_v2_64`|12.0| | | |`rocblas_zgemm_64`|6.3.0| | | | | |`cublasZgemvBatched`|11.6| | | |`rocblas_zgemv_batched`|3.5.0| | | | | |`cublasZgemvBatched_64`|12.0| | | |`rocblas_zgemv_batched_64`|6.2.0| | | | | |`cublasZgemvStridedBatched`|11.6| | | |`rocblas_zgemv_strided_batched`|3.5.0| | | | | |`cublasZgemvStridedBatched_64`|12.0| | | |`rocblas_zgemv_strided_batched_64`|6.2.0| | | | | |`cublasZhemm`| | | | |`rocblas_zhemm`|3.5.0| | | | | -|`cublasZhemm_64`|12.0| | | |`rocblas_zhemm_64`|6.3.0| | | |6.3.0| +|`cublasZhemm_64`|12.0| | | |`rocblas_zhemm_64`|6.3.0| | | | | |`cublasZhemm_v2`| | | | |`rocblas_zhemm`|3.5.0| | | | | -|`cublasZhemm_v2_64`|12.0| | | |`rocblas_zhemm_64`|6.3.0| | | |6.3.0| +|`cublasZhemm_v2_64`|12.0| | | |`rocblas_zhemm_64`|6.3.0| | | | | |`cublasZher2k`| | | | |`rocblas_zher2k`|3.5.0| | | | | -|`cublasZher2k_64`|12.0| | | |`rocblas_zher2k_64`|6.3.0| | | |6.3.0| +|`cublasZher2k_64`|12.0| | | |`rocblas_zher2k_64`|6.3.0| | | | | |`cublasZher2k_v2`| | | | |`rocblas_zher2k`|3.5.0| | | | | -|`cublasZher2k_v2_64`|12.0| | | |`rocblas_zher2k_64`|6.3.0| | | |6.3.0| +|`cublasZher2k_v2_64`|12.0| | | |`rocblas_zher2k_64`|6.3.0| | | | | |`cublasZherk`| | | | |`rocblas_zherk`|3.5.0| | | | | -|`cublasZherk_64`|12.0| | | |`rocblas_zherk_64`|6.3.0| | | |6.3.0| +|`cublasZherk_64`|12.0| | | |`rocblas_zherk_64`|6.3.0| | | | | |`cublasZherk_v2`| | | | |`rocblas_zherk`|3.5.0| | | | | -|`cublasZherk_v2_64`|12.0| | | |`rocblas_zherk_64`|6.3.0| | | |6.3.0| +|`cublasZherk_v2_64`|12.0| | | |`rocblas_zherk_64`|6.3.0| | | | | |`cublasZherkx`| | | | |`rocblas_zherkx`|3.5.0| | | | | -|`cublasZherkx_64`|12.0| | | |`rocblas_zherkx_64`|6.3.0| | | |6.3.0| +|`cublasZherkx_64`|12.0| | | |`rocblas_zherkx_64`|6.3.0| | | | | |`cublasZsymm`| | | | |`rocblas_zsymm`|3.5.0| | | | | -|`cublasZsymm_64`|12.0| | | |`rocblas_zsymm_64`|6.3.0| | | |6.3.0| +|`cublasZsymm_64`|12.0| | | |`rocblas_zsymm_64`|6.3.0| | | | | |`cublasZsymm_v2`| | | | |`rocblas_zsymm`|3.5.0| | | | | -|`cublasZsymm_v2_64`|12.0| | | |`rocblas_zsymm_64`|6.3.0| | | |6.3.0| +|`cublasZsymm_v2_64`|12.0| | | |`rocblas_zsymm_64`|6.3.0| | | | | |`cublasZsyr2k`| | | | |`rocblas_zsyr2k`|3.5.0| | | | | -|`cublasZsyr2k_64`|12.0| | | |`rocblas_zsyr2k_64`|6.3.0| | | |6.3.0| +|`cublasZsyr2k_64`|12.0| | | |`rocblas_zsyr2k_64`|6.3.0| | | | | |`cublasZsyr2k_v2`| | | | |`rocblas_zsyr2k`|3.5.0| | | | | -|`cublasZsyr2k_v2_64`|12.0| | | |`rocblas_zsyr2k_64`|6.3.0| | | |6.3.0| +|`cublasZsyr2k_v2_64`|12.0| | | |`rocblas_zsyr2k_64`|6.3.0| | | | | |`cublasZsyrk`| | | | |`rocblas_zsyrk`|3.5.0| | | | | -|`cublasZsyrk_64`|12.0| | | |`rocblas_zsyrk_64`|6.3.0| | | |6.3.0| +|`cublasZsyrk_64`|12.0| | | |`rocblas_zsyrk_64`|6.3.0| | | | | |`cublasZsyrk_v2`| | | | |`rocblas_zsyrk`|3.5.0| | | | | -|`cublasZsyrk_v2_64`|12.0| | | |`rocblas_zsyrk_64`|6.3.0| | | |6.3.0| +|`cublasZsyrk_v2_64`|12.0| | | |`rocblas_zsyrk_64`|6.3.0| | | | | |`cublasZsyrkx`| | | | |`rocblas_zsyrkx`|3.5.0| | | | | -|`cublasZsyrkx_64`|12.0| | | |`rocblas_zsyrkx_64`|6.3.0| | | |6.3.0| +|`cublasZsyrkx_64`|12.0| | | |`rocblas_zsyrkx_64`|6.3.0| | | | | |`cublasZtrmm`| | | | |`rocblas_ztrmm`|3.5.0| |6.0.0| | | -|`cublasZtrmm_64`|12.0| | | |`rocblas_ztrmm_64`|6.3.0| | | |6.3.0| +|`cublasZtrmm_64`|12.0| | | |`rocblas_ztrmm_64`|6.3.0| | | | | |`cublasZtrmm_v2`| | | | |`rocblas_ztrmm`|3.5.0| |6.0.0| | | -|`cublasZtrmm_v2_64`|12.0| | | |`rocblas_ztrmm_64`|6.3.0| | | |6.3.0| +|`cublasZtrmm_v2_64`|12.0| | | |`rocblas_ztrmm_64`|6.3.0| | | | | |`cublasZtrsm`| | | | |`rocblas_ztrsm`|3.5.0| | | | | |`cublasZtrsm_64`|12.0| | | |`rocblas_ztrsm_64`|6.2.0| | | | | |`cublasZtrsm_v2`| | | | |`rocblas_ztrsm`|3.5.0| | | | | @@ -1825,9 +1825,9 @@ |`cublasAxpyEx`|8.0| | | |`rocblas_axpy_ex`|3.9.0| | | | | |`cublasAxpyEx_64`|12.0| | | |`rocblas_axpy_ex_64`|6.1.0| | | | | |`cublasCdgmm`| | | | |`rocblas_cdgmm`|3.5.0| | | | | -|`cublasCdgmm_64`|12.0| | | |`rocblas_cdgmm_64`|6.3.0| | | |6.3.0| +|`cublasCdgmm_64`|12.0| | | |`rocblas_cdgmm_64`|6.3.0| | | | | |`cublasCgeam`| | | | |`rocblas_cgeam`|3.5.0| | | | | -|`cublasCgeam_64`|12.0| | | |`rocblas_cgeam_64`|6.3.0| | | |6.3.0| +|`cublasCgeam_64`|12.0| | | |`rocblas_cgeam_64`|6.3.0| | | | | |`cublasCgelsBatched`| | | | | | | | | | | |`cublasCgemmEx`|8.0| | | | | | | | | | |`cublasCgemmEx_64`|12.0| | | | | | | | | | @@ -1851,9 +1851,9 @@ |`cublasCtrsmBatched_64`|12.0| | | |`rocblas_ctrsm_batched_64`|6.2.0| | | | | |`cublasCtrttp`| | | | | | | | | | | |`cublasDdgmm`| | | | |`rocblas_ddgmm`|3.5.0| | | | | -|`cublasDdgmm_64`|12.0| | | |`rocblas_ddgmm_64`|6.3.0| | | |6.3.0| +|`cublasDdgmm_64`|12.0| | | |`rocblas_ddgmm_64`|6.3.0| | | | | |`cublasDgeam`| | | | |`rocblas_dgeam`|1.6.4| | | | | -|`cublasDgeam_64`|12.0| | | |`rocblas_dgeam_64`|6.3.0| | | |6.3.0| +|`cublasDgeam_64`|12.0| | | |`rocblas_dgeam_64`|6.3.0| | | | | |`cublasDgelsBatched`| | | | | | | | | | | |`cublasDgeqrfBatched`| | | | | | | | | | | |`cublasDgetrfBatched`| | | | | | | | | | | @@ -1887,9 +1887,9 @@ |`cublasScalEx`|8.0| | | |`rocblas_scal_ex`|4.0.0| | | | | |`cublasScalEx_64`|12.0| | | |`rocblas_scal_ex_64`|6.1.0| | | | | |`cublasSdgmm`| | | | |`rocblas_sdgmm`|3.5.0| | | | | -|`cublasSdgmm_64`|12.0| | | |`rocblas_sdgmm_64`|6.3.0| | | |6.3.0| +|`cublasSdgmm_64`|12.0| | | |`rocblas_sdgmm_64`|6.3.0| | | | | |`cublasSgeam`| | | | |`rocblas_sgeam`|1.6.4| | | | | -|`cublasSgeam_64`|12.0| | | |`rocblas_sgeam_64`|6.3.0| | | |6.3.0| +|`cublasSgeam_64`|12.0| | | |`rocblas_sgeam_64`|6.3.0| | | | | |`cublasSgelsBatched`| | | | | | | | | | | |`cublasSgemmEx`|7.5| | | | | | | | | | |`cublasSgemmEx_64`|12.0| | | | | | | | | | @@ -1906,9 +1906,9 @@ |`cublasSwapEx_64`|12.0| | | | | | | | | | |`cublasUint8gemmBias`|8.0| | | | | | | | | | |`cublasZdgmm`| | | | |`rocblas_zdgmm`|3.5.0| | | | | -|`cublasZdgmm_64`|12.0| | | |`rocblas_zdgmm_64`|6.3.0| | | |6.3.0| +|`cublasZdgmm_64`|12.0| | | |`rocblas_zdgmm_64`|6.3.0| | | | | |`cublasZgeam`| | | | |`rocblas_zgeam`|3.5.0| | | | | -|`cublasZgeam_64`|12.0| | | |`rocblas_zgeam_64`|6.3.0| | | |6.3.0| +|`cublasZgeam_64`|12.0| | | |`rocblas_zgeam_64`|6.3.0| | | | | |`cublasZgelsBatched`| | | | | | | | | | | |`cublasZgeqrfBatched`| | | | | | | | | | | |`cublasZgetrfBatched`| | | | | | | | | | | diff --git a/docs/tables/CUDA_Device_API_supported_by_HIP.md b/docs/tables/CUDA_Device_API_supported_by_HIP.md index 50759924..e9d89fff 100644 --- a/docs/tables/CUDA_Device_API_supported_by_HIP.md +++ b/docs/tables/CUDA_Device_API_supported_by_HIP.md @@ -14,10 +14,10 @@ |`__assertfail`| | | | |`__assertfail`|1.9.0| | | | | |`__ballot`| | | | |`__ballot`|1.6.0| | | | | |`__ballot_sync`|9.0| | | |`__ballot_sync`|6.2.0| | | | | -|`__bfloat1622float2`|11.0| | | | | | | | | | -|`__bfloat162bfloat162`|11.0| | | | | | | | | | +|`__bfloat1622float2`|11.0| | | |`__bfloat1622float2`|5.7.0| | | | | +|`__bfloat162bfloat162`|11.0| | | |`__bfloat162bfloat162`|5.7.0| | | | | |`__bfloat162char_rz`|12.2| | | | | | | | | | -|`__bfloat162float`|11.0| | | | | | | | | | +|`__bfloat162float`|11.0| | | |`__bfloat162float`|5.7.0| | | | | |`__bfloat162int_rd`|11.0| | | | | | | | | | |`__bfloat162int_rn`|11.0| | | | | | | | | | |`__bfloat162int_ru`|11.0| | | | | | | | | | @@ -64,7 +64,7 @@ |`__dmul_rn`| | | | |`__dmul_rn`|1.6.0| | | | | |`__dmul_ru`| | | | | | | | | | | |`__dmul_rz`| | | | | | | | | | | -|`__double2bfloat16`|11.0| | | | | | | | | | +|`__double2bfloat16`|11.0| | | |`__double2bfloat16`|5.7.0| | | | | |`__double2float_rd`| | | | |`__double2float_rd`|1.6.0| | | | | |`__double2float_rn`| | | | |`__double2float_rn`|1.6.0| | | | | |`__double2float_ru`| | | | |`__double2float_ru`|1.6.0| | | | | @@ -119,7 +119,7 @@ |`__finitel`| | | | | | | | | | | |`__float22bfloat162_rn`|11.0| | | | | | | | | | |`__float22half2_rn`| | | | |`__float22half2_rn`|1.6.0| | | | | -|`__float2bfloat16`|11.0| | | | | | | | | | +|`__float2bfloat16`|11.0| | | |`__float2bfloat16`|5.7.0| | | | | |`__float2bfloat162_rn`|11.0| | | | | | | | | | |`__float2bfloat16_rd`|11.0| | | | | | | | | | |`__float2bfloat16_rn`|11.0| | | | | | | | | | @@ -260,12 +260,12 @@ |`__hgtu`| | | | |`__hgtu`|1.9.0| | | | | |`__hgtu2`| | | | |`__hgtu2`|1.9.0| | | | | |`__hgtu2_mask`|12.0| | | | | | | | | | -|`__high2bfloat16`|11.0| | | | | | | | | | +|`__high2bfloat16`|11.0| | | |`__high2bfloat16`|5.7.0| | | | | |`__high2bfloat162`|11.0| | | | | | | | | | |`__high2float`| | | | |`__high2float`|1.6.0| | | | | |`__high2half`| | | | |`__high2half`|1.6.0| | | | | |`__high2half2`| | | | |`__high2half2`|1.6.0| | | | | -|`__highs2bfloat162`|11.0| | | | | | | | | | +|`__highs2bfloat162`|11.0| | | |`__highs2bfloat162`|5.7.0| | | | | |`__highs2half2`| | | | |`__highs2half2`|1.6.0| | | | | |`__hiloint2double`| | | | |`__hiloint2double`|1.6.0| | | | | |`__hisinf`| | | | |`__hisinf`|1.6.0| | | | | @@ -363,23 +363,23 @@ |`__low2half`| | | | |`__low2half`|1.6.0| | | | | |`__low2half2`| | | | |`__low2half2`|1.6.0| | | | | |`__lowhigh2highlow`| | | | |`__lowhigh2highlow`|1.6.0| | | | | -|`__lows2bfloat162`|11.0| | | | | | | | | | +|`__lows2bfloat162`|11.0| | | |`__lows2bfloat162`|5.7.0| | | | | |`__lows2half2`| | | | |`__lows2half2`|1.6.0| | | | | |`__match_all_sync`|9.0| | | |`__match_all_sync`|6.2.0| | | | | |`__match_any_sync`|9.0| | | |`__match_any_sync`|6.2.0| | | | | |`__mul24`| | | | |`__mul24`|1.6.0| | | | | |`__mul64hi`| | | | |`__mul64hi`|1.6.0| | | | | |`__mulhi`| | | | |`__mulhi`|1.6.0| | | | | -|`__nv_cvt_bfloat16raw2_to_fp8x2`|11.8| | | | | | | | | | -|`__nv_cvt_bfloat16raw_to_fp8`|11.8| | | | | | | | | | -|`__nv_cvt_double2_to_fp8x2`|11.8| | | | | | | | | | -|`__nv_cvt_double_to_fp8`|11.8| | | | | | | | | | -|`__nv_cvt_float2_to_fp8x2`|11.8| | | | | | | | | | -|`__nv_cvt_float_to_fp8`|11.8| | | | | | | | | | -|`__nv_cvt_fp8_to_halfraw`|11.8| | | | | | | | | | -|`__nv_cvt_fp8x2_to_halfraw2`|11.8| | | | | | | | | | -|`__nv_cvt_halfraw2_to_fp8x2`|11.8| | | | | | | | | | -|`__nv_cvt_halfraw_to_fp8`|11.8| | | | | | | | | | +|`__nv_cvt_bfloat16raw2_to_fp8x2`|11.8| | | |`__hip_cvt_bfloat16raw2_to_fp8x2`|6.2.0| | | | | +|`__nv_cvt_bfloat16raw_to_fp8`|11.8| | | |`__hip_cvt_bfloat16raw_to_fp8`|6.2.0| | | | | +|`__nv_cvt_double2_to_fp8x2`|11.8| | | |`__hip_cvt_double2_to_fp8x2`|6.2.0| | | | | +|`__nv_cvt_double_to_fp8`|11.8| | | |`__hip_cvt_double_to_fp8`|6.2.0| | | | | +|`__nv_cvt_float2_to_fp8x2`|11.8| | | |`__hip_cvt_float2_to_fp8x2`|6.2.0| | | | | +|`__nv_cvt_float_to_fp8`|11.8| | | |`__hip_cvt_float_to_fp8`|6.2.0| | | | | +|`__nv_cvt_fp8_to_halfraw`|11.8| | | |`__hip_cvt_fp8_to_halfraw`|6.2.0| | | | | +|`__nv_cvt_fp8x2_to_halfraw2`|11.8| | | |`__hip_cvt_fp8x2_to_halfraw2`|6.2.0| | | | | +|`__nv_cvt_halfraw2_to_fp8x2`|11.8| | | |`__hip_cvt_halfraw2_to_fp8x2`|6.2.0| | | | | +|`__nv_cvt_halfraw_to_fp8`|11.8| | | |`__hip_cvt_halfraw_to_fp8`|6.2.0| | | | | |`__pm0`| | | | | | | | | | | |`__pm1`| | | | | | | | | | | |`__pm2`| | | | | | | | | | | @@ -809,29 +809,30 @@ |**CUDA**|**A**|**D**|**C**|**R**|**HIP**|**A**|**D**|**C**|**R**|**E**| |:--|:-:|:-:|:-:|:-:|:--|:-:|:-:|:-:|:-:|:-:| -|`__NV_E4M3`|11.8| | | | | | | | | | -|`__NV_E5M2`|11.8| | | | | | | | | | -|`__NV_NOSAT`|11.8| | | | | | | | | | -|`__NV_SATFINITE`|11.8| | | | | | | | | | +|`__NV_E4M3`|11.8| | | |`__HIP_E4M3_FNUZ`|6.2.0| | | | | +|`__NV_E5M2`|11.8| | | |`__HIP_E5M2_FNUZ`|6.2.0| | | | | +|`__NV_NOSAT`|11.8| | | |`__HIP_NOSAT`|6.2.0| | | | | +|`__NV_SATFINITE`|11.8| | | |`__HIP_SATFINITE`|6.2.0| | | | | |`__half`| | | | |`__half`|1.6.0| | | | | |`__half2`| | | | |`__half2`|1.6.0| | | | | |`__half2_raw`| | | | |`__half2_raw`|1.9.0| | | | | |`__half_raw`| | | | |`__half_raw`|1.9.0| | | | | -|`__nv_bfloat16`|11.0| | | |`hip_bfloat16`|3.5.0| | | | | -|`__nv_bfloat162`|11.0| | | | | | | | | | -|`__nv_bfloat162_raw`|11.0| | | | | | | | | | -|`__nv_bfloat16_raw`|11.0| | | | | | | | | | -|`__nv_fp8_e4m3`|11.8| | | | | | | | | | -|`__nv_fp8_e5m2`|11.8| | | | | | | | | | -|`__nv_fp8_interpretation_t`|11.8| | | | | | | | | | -|`__nv_fp8_storage_t`|11.8| | | | | | | | | | -|`__nv_fp8x2_e4m3`|11.8| | | | | | | | | | -|`__nv_fp8x2_e5m2`|11.8| | | | | | | | | | -|`__nv_fp8x2_storage_t`|11.8| | | | | | | | | | -|`__nv_fp8x4_e4m3`|11.8| | | | | | | | | | -|`__nv_fp8x4_e5m2`|11.8| | | | | | | | | | -|`__nv_fp8x4_storage_t`|11.8| | | | | | | | | | -|`__nv_saturation_t`|11.8| | | | | | | | | | +|`__nv_bfloat16`|11.0| | | |`__hip_bfloat16`|5.7.0| | | | | +|`__nv_bfloat162`|11.0| | | |`__hip_bfloat162`|5.7.0| | | | | +|`__nv_bfloat162_raw`|11.0| | | |`__hip_bfloat162_raw`|6.2.0| | | | | +|`__nv_bfloat16_raw`|11.0| | | |`__hip_bfloat16_raw`|6.2.0| | | | | +|`__nv_fp8_e4m3`|11.8| | | |`__hip_fp8_e4m3_fnuz`|6.2.0| | | | | +|`__nv_fp8_e5m2`|11.8| | | |`__hip_fp8_e5m2_fnuz`|6.2.0| | | | | +|`__nv_fp8_interpretation_t`|11.8| | | |`__hip_fp8_interpretation_t`|6.2.0| | | | | +|`__nv_fp8_storage_t`|11.8| | | |`__hip_fp8_storage_t`|6.2.0| | | | | +|`__nv_fp8x2_e4m3`|11.8| | | |`__hip_fp8x2_e4m3_fnuz`|6.2.0| | | | | +|`__nv_fp8x2_e5m2`|11.8| | | |`__hip_fp8x2_e5m2_fnuz`|6.2.0| | | | | +|`__nv_fp8x2_storage_t`|11.8| | | |`__hip_fp8x2_storage_t`|6.2.0| | | | | +|`__nv_fp8x4_e4m3`|11.8| | | |`__hip_fp8x4_e4m3_fnuz`|6.2.0| | | | | +|`__nv_fp8x4_e5m2`|11.8| | | |`__hip_fp8x4_e5m2_fnuz`|6.2.0| | | | | +|`__nv_fp8x4_storage_t`|11.8| | | |`__hip_fp8x4_storage_t`|6.2.0| | | | | +|`__nv_saturation_t`|11.8| | | |`__hip_saturation_t`|6.2.0| | | | | +|`nv_bfloat16`|11.0| | | | | | | | | | |`nv_bfloat162`|11.0| | | | | | | | | | diff --git a/docs/tables/CUDA_Driver_API_functions_supported_by_HIP.md b/docs/tables/CUDA_Driver_API_functions_supported_by_HIP.md index 3040876b..2b948d6c 100644 --- a/docs/tables/CUDA_Driver_API_functions_supported_by_HIP.md +++ b/docs/tables/CUDA_Driver_API_functions_supported_by_HIP.md @@ -30,12 +30,12 @@ |`CUDA_ARRAY_SPARSE_PROPERTIES`|11.1| | | | | | | | | | |`CUDA_ARRAY_SPARSE_PROPERTIES_st`|11.1| | | | | | | | | | |`CUDA_ARRAY_SPARSE_PROPERTIES_v1`|11.3| | | | | | | | | | -|`CUDA_BATCH_MEM_OP_NODE_PARAMS`|11.7| | | | | | | | | | -|`CUDA_BATCH_MEM_OP_NODE_PARAMS_st`|11.7| | |12.2| | | | | | | -|`CUDA_BATCH_MEM_OP_NODE_PARAMS_v1`|12.2| | | | | | | | | | -|`CUDA_BATCH_MEM_OP_NODE_PARAMS_v1_st`|12.2| | | | | | | | | | -|`CUDA_BATCH_MEM_OP_NODE_PARAMS_v2`|12.2| | | | | | | | | | -|`CUDA_BATCH_MEM_OP_NODE_PARAMS_v2_st`|12.2| | | | | | | | | | +|`CUDA_BATCH_MEM_OP_NODE_PARAMS`|11.7| | | |`hipBatchMemOpNodeParams`|6.4.0| | | |6.4.0| +|`CUDA_BATCH_MEM_OP_NODE_PARAMS_st`|11.7| | |12.2|`hipBatchMemOpNodeParams`|6.4.0| | | |6.4.0| +|`CUDA_BATCH_MEM_OP_NODE_PARAMS_v1`|12.2| | | |`hipBatchMemOpNodeParams`|6.4.0| | | |6.4.0| +|`CUDA_BATCH_MEM_OP_NODE_PARAMS_v1_st`|12.2| | | |`hipBatchMemOpNodeParams`|6.4.0| | | |6.4.0| +|`CUDA_BATCH_MEM_OP_NODE_PARAMS_v2`|12.2| | | |`hipBatchMemOpNodeParams`|6.4.0| | | |6.4.0| +|`CUDA_BATCH_MEM_OP_NODE_PARAMS_v2_st`|12.2| | | |`hipBatchMemOpNodeParams`|6.4.0| | | |6.4.0| |`CUDA_CB`| | | | | | | | | | | |`CUDA_CHILD_GRAPH_NODE_PARAMS`|12.2| | | |`hipChildGraphNodeParams`|6.1.0| | | | | |`CUDA_CHILD_GRAPH_NODE_PARAMS_st`|12.2| | | |`hipChildGraphNodeParams`|6.1.0| | | | | @@ -1375,9 +1375,9 @@ |`CUstreamAttrValue`|11.0| | | | | | | | | | |`CUstreamAttrValue_union`|11.0| | | | | | | | | | |`CUstreamAttrValue_v1`|11.3| | | | | | | | | | -|`CUstreamBatchMemOpParams`|8.0| | | | | | | | | | -|`CUstreamBatchMemOpParams_union`|8.0| | | | | | | | | | -|`CUstreamBatchMemOpParams_v1`|11.3| | | | | | | | | | +|`CUstreamBatchMemOpParams`|8.0| | | |`hipStreamBatchMemOpParams`|6.4.0| | | |6.4.0| +|`CUstreamBatchMemOpParams_union`|8.0| | | |`hipStreamBatchMemOpParams_union`|6.4.0| | | |6.4.0| +|`CUstreamBatchMemOpParams_v1`|11.3| | | |`hipStreamBatchMemOpParams`|6.4.0| | | |6.4.0| |`CUstreamBatchMemOpType`|8.0| | | | | | | | | | |`CUstreamBatchMemOpType_enum`|8.0| | | | | | | | | | |`CUstreamCallback`| | | | |`hipStreamCallback_t`|1.6.0| | | | | @@ -1837,8 +1837,8 @@ |**CUDA**|**A**|**D**|**C**|**R**|**HIP**|**A**|**D**|**C**|**R**|**E**| |:--|:-:|:-:|:-:|:-:|:--|:-:|:-:|:-:|:-:|:-:| -|`cuStreamBatchMemOp`|8.0| | | | | | | | | | -|`cuStreamBatchMemOp_v2`|11.7| | | | | | | | | | +|`cuStreamBatchMemOp`|8.0| | | |`hipStreamBatchMemOp`|6.4.0| | | |6.4.0| +|`cuStreamBatchMemOp_v2`|11.7| | | |`hipStreamBatchMemOp`|6.4.0| | | |6.4.0| |`cuStreamWaitValue32`|8.0| | | |`hipStreamWaitValue32`|4.2.0| | | | | |`cuStreamWaitValue32_v2`|11.7| | | |`hipStreamWaitValue32`|4.2.0| | | | | |`cuStreamWaitValue64`|9.0| | | |`hipStreamWaitValue64`|4.2.0| | | | | @@ -1889,7 +1889,7 @@ |`cuDeviceGetGraphMemAttribute`|11.4| | | |`hipDeviceGetGraphMemAttribute`|5.3.0| | | | | |`cuDeviceGraphMemTrim`|11.4| | | |`hipDeviceGraphMemTrim`|5.3.0| | | | | |`cuDeviceSetGraphMemAttribute`|11.4| | | |`hipDeviceSetGraphMemAttribute`|5.3.0| | | | | -|`cuGraphAddBatchMemOpNode`|11.7| | | |`hipGraphAddBatchMemOpNode`| | | | | | +|`cuGraphAddBatchMemOpNode`|11.7| | | |`hipGraphAddBatchMemOpNode`|6.4.0| | | |6.4.0| |`cuGraphAddChildGraphNode`|10.0| | | |`hipGraphAddChildGraphNode`|5.0.0| | | | | |`cuGraphAddDependencies`|10.0| | | |`hipGraphAddDependencies`|4.5.0| | | | | |`cuGraphAddDependencies_v2`|12.3| | | | | | | | | | @@ -1901,13 +1901,13 @@ |`cuGraphAddHostNode`|10.0| | | |`hipGraphAddHostNode`|5.0.0| | | | | |`cuGraphAddKernelNode`|10.0| | | |`hipGraphAddKernelNode`|4.3.0| | | | | |`cuGraphAddMemAllocNode`|11.4| | | |`hipGraphAddMemAllocNode`|5.5.0| | | | | -|`cuGraphAddMemFreeNode`|11.4| | | |`hipDrvGraphAddMemFreeNode`|6.3.0| | | |6.3.0| +|`cuGraphAddMemFreeNode`|11.4| | | |`hipDrvGraphAddMemFreeNode`|6.3.0| | | | | |`cuGraphAddMemcpyNode`|10.0| | | |`hipDrvGraphAddMemcpyNode`|6.0.0| | | | | |`cuGraphAddMemsetNode`|10.0| | | |`hipDrvGraphAddMemsetNode`|6.1.0| | | | | |`cuGraphAddNode`|12.2| | | |`hipGraphAddNode`|6.2.0| | | | | |`cuGraphAddNode_v2`|12.3| | | | | | | | | | -|`cuGraphBatchMemOpNodeGetParams`|11.7| | | |`hipGraphBatchMemOpNodeGetParams`| | | | | | -|`cuGraphBatchMemOpNodeSetParams`|11.7| | | |`hipGraphBatchMemOpNodeSetParams`| | | | | | +|`cuGraphBatchMemOpNodeGetParams`|11.7| | | |`hipGraphBatchMemOpNodeGetParams`|6.4.0| | | |6.4.0| +|`cuGraphBatchMemOpNodeSetParams`|11.7| | | |`hipGraphBatchMemOpNodeSetParams`|6.4.0| | | |6.4.0| |`cuGraphChildGraphNodeGetGraph`|10.0| | | |`hipGraphChildGraphNodeGetGraph`|5.0.0| | | | | |`cuGraphClone`|10.0| | | |`hipGraphClone`|5.0.0| | | | | |`cuGraphConditionalHandleCreate`|12.3| | | | | | | | | | @@ -1919,19 +1919,19 @@ |`cuGraphEventRecordNodeSetEvent`|11.1| | | |`hipGraphEventRecordNodeSetEvent`|5.0.0| | | | | |`cuGraphEventWaitNodeGetEvent`|11.1| | | |`hipGraphEventWaitNodeGetEvent`|5.0.0| | | | | |`cuGraphEventWaitNodeSetEvent`|11.1| | | |`hipGraphEventWaitNodeSetEvent`|5.0.0| | | | | -|`cuGraphExecBatchMemOpNodeSetParams`|11.7| | | |`hipGraphExecBatchMemOpNodeSetParams`| | | | | | +|`cuGraphExecBatchMemOpNodeSetParams`|11.7| | | |`hipGraphExecBatchMemOpNodeSetParams`|6.4.0| | | |6.4.0| |`cuGraphExecChildGraphNodeSetParams`|11.1| | | |`hipGraphExecChildGraphNodeSetParams`|5.0.0| | | | | |`cuGraphExecDestroy`|10.0| | | |`hipGraphExecDestroy`|4.3.0| | | | | |`cuGraphExecEventRecordNodeSetEvent`|11.1| | | |`hipGraphExecEventRecordNodeSetEvent`|5.0.0| | | | | |`cuGraphExecEventWaitNodeSetEvent`|11.1| | | |`hipGraphExecEventWaitNodeSetEvent`|5.0.0| | | | | |`cuGraphExecExternalSemaphoresSignalNodeSetParams`|11.2| | | |`hipGraphExecExternalSemaphoresSignalNodeSetParams`|5.7.0| | | | | |`cuGraphExecExternalSemaphoresWaitNodeSetParams`|11.2| | | |`hipGraphExecExternalSemaphoresWaitNodeSetParams`|5.7.0| | | | | -|`cuGraphExecGetFlags`|12.0| | | |`hipGraphExecGetFlags`|6.3.0| | | |6.3.0| +|`cuGraphExecGetFlags`|12.0| | | |`hipGraphExecGetFlags`|6.3.0| | | | | |`cuGraphExecHostNodeSetParams`|10.2| | | |`hipGraphExecHostNodeSetParams`|5.0.0| | | | | |`cuGraphExecKernelNodeSetParams`|10.1| | | |`hipGraphExecKernelNodeSetParams`|4.5.0| | | | | -|`cuGraphExecMemcpyNodeSetParams`|10.2| | | |`hipDrvGraphExecMemcpyNodeSetParams`|6.3.0| | | |6.3.0| -|`cuGraphExecMemsetNodeSetParams`|10.2| | | |`hipDrvGraphExecMemsetNodeSetParams`|6.3.0| | | |6.3.0| -|`cuGraphExecNodeSetParams`|12.2| | | |`hipGraphExecNodeSetParams`|6.3.0| | | |6.3.0| +|`cuGraphExecMemcpyNodeSetParams`|10.2| | | |`hipDrvGraphExecMemcpyNodeSetParams`|6.3.0| | | | | +|`cuGraphExecMemsetNodeSetParams`|10.2| | | |`hipDrvGraphExecMemsetNodeSetParams`|6.3.0| | | | | +|`cuGraphExecNodeSetParams`|12.2| | | |`hipGraphExecNodeSetParams`|6.3.0| | | | | |`cuGraphExecUpdate`|10.2| | | |`hipGraphExecUpdate`|5.0.0| | | | | |`cuGraphExternalSemaphoresSignalNodeGetParams`|11.2| | | |`hipGraphExternalSemaphoresSignalNodeGetParams`|5.7.0| | | | | |`cuGraphExternalSemaphoresSignalNodeSetParams`|11.2| | | |`hipGraphExternalSemaphoresSignalNodeSetParams`|5.7.0| | | | | @@ -1955,8 +1955,8 @@ |`cuGraphLaunch`|10.0| | | |`hipGraphLaunch`|4.3.0| | | | | |`cuGraphMemAllocNodeGetParams`|11.4| | | |`hipGraphMemAllocNodeGetParams`|5.5.0| | | | | |`cuGraphMemFreeNodeGetParams`|11.4| | | |`hipGraphMemFreeNodeGetParams`|5.5.0| | | | | -|`cuGraphMemcpyNodeGetParams`|10.0| | | |`hipDrvGraphMemcpyNodeGetParams`|6.3.0| | | |6.3.0| -|`cuGraphMemcpyNodeSetParams`|10.0| | | |`hipDrvGraphMemcpyNodeSetParams`|6.3.0| | | |6.3.0| +|`cuGraphMemcpyNodeGetParams`|10.0| | | |`hipDrvGraphMemcpyNodeGetParams`|6.3.0| | | | | +|`cuGraphMemcpyNodeSetParams`|10.0| | | |`hipDrvGraphMemcpyNodeSetParams`|6.3.0| | | | | |`cuGraphMemsetNodeGetParams`|10.0| | | |`hipGraphMemsetNodeGetParams`|4.5.0| | | | | |`cuGraphMemsetNodeSetParams`|10.0| | | |`hipGraphMemsetNodeSetParams`|4.5.0| | | | | |`cuGraphNodeFindInClone`|10.0| | | |`hipGraphNodeFindInClone`|5.0.0| | | | | @@ -1967,7 +1967,7 @@ |`cuGraphNodeGetEnabled`|11.6| | | |`hipGraphNodeGetEnabled`|5.5.0| | | | | |`cuGraphNodeGetType`|10.0| | | |`hipGraphNodeGetType`|5.0.0| | | | | |`cuGraphNodeSetEnabled`|11.6| | | |`hipGraphNodeSetEnabled`|5.5.0| | | | | -|`cuGraphNodeSetParams`|12.2| | | |`hipGraphNodeSetParams`|6.3.0| | | |6.3.0| +|`cuGraphNodeSetParams`|12.2| | | |`hipGraphNodeSetParams`|6.3.0| | | | | |`cuGraphReleaseUserObject`|11.3| | | |`hipGraphReleaseUserObject`|5.3.0| | | | | |`cuGraphRemoveDependencies`|10.0| | | |`hipGraphRemoveDependencies`|5.0.0| | | | | |`cuGraphRemoveDependencies_v2`|12.3| | | | | | | | | | diff --git a/docs/tables/CUDA_Runtime_API_functions_supported_by_HIP.md b/docs/tables/CUDA_Runtime_API_functions_supported_by_HIP.md index a681967b..6eba24f0 100644 --- a/docs/tables/CUDA_Runtime_API_functions_supported_by_HIP.md +++ b/docs/tables/CUDA_Runtime_API_functions_supported_by_HIP.md @@ -464,7 +464,7 @@ |`cudaGraphExecEventWaitNodeSetEvent`|11.1| | | |`hipGraphExecEventWaitNodeSetEvent`|5.0.0| | | | | |`cudaGraphExecExternalSemaphoresSignalNodeSetParams`|11.2| | | |`hipGraphExecExternalSemaphoresSignalNodeSetParams`|5.7.0| | | | | |`cudaGraphExecExternalSemaphoresWaitNodeSetParams`|11.2| | | |`hipGraphExecExternalSemaphoresWaitNodeSetParams`|5.7.0| | | | | -|`cudaGraphExecGetFlags`|12.0| | | |`hipGraphExecGetFlags`|6.3.0| | | |6.3.0| +|`cudaGraphExecGetFlags`|12.0| | | |`hipGraphExecGetFlags`|6.3.0| | | | | |`cudaGraphExecHostNodeSetParams`|11.0| | | |`hipGraphExecHostNodeSetParams`|5.0.0| | | | | |`cudaGraphExecKernelNodeSetParams`|11.0| | | |`hipGraphExecKernelNodeSetParams`|4.5.0| | | | | |`cudaGraphExecMemcpyNodeSetParams`|11.0| | | |`hipGraphExecMemcpyNodeSetParams`|5.0.0| | | | | @@ -472,7 +472,7 @@ |`cudaGraphExecMemcpyNodeSetParamsFromSymbol`|11.1| | | |`hipGraphExecMemcpyNodeSetParamsFromSymbol`|5.0.0| | | | | |`cudaGraphExecMemcpyNodeSetParamsToSymbol`|11.1| | | |`hipGraphExecMemcpyNodeSetParamsToSymbol`|5.0.0| | | | | |`cudaGraphExecMemsetNodeSetParams`|11.0| | | |`hipGraphExecMemsetNodeSetParams`|5.0.0| | | | | -|`cudaGraphExecNodeSetParams`|12.2| | | |`hipGraphExecNodeSetParams`|6.3.0| | | |6.3.0| +|`cudaGraphExecNodeSetParams`|12.2| | | |`hipGraphExecNodeSetParams`|6.3.0| | | | | |`cudaGraphExecUpdate`|11.0| | | |`hipGraphExecUpdate`|5.0.0| | | | | |`cudaGraphExternalSemaphoresSignalNodeGetParams`|11.2| | | |`hipGraphExternalSemaphoresSignalNodeGetParams`|5.7.0| | | | | |`cudaGraphExternalSemaphoresSignalNodeSetParams`|11.2| | | |`hipGraphExternalSemaphoresSignalNodeSetParams`|5.7.0| | | | | @@ -510,7 +510,7 @@ |`cudaGraphNodeGetEnabled`|11.6| | | |`hipGraphNodeGetEnabled`|5.5.0| | | | | |`cudaGraphNodeGetType`|11.0| | | |`hipGraphNodeGetType`|5.0.0| | | | | |`cudaGraphNodeSetEnabled`|11.6| | | |`hipGraphNodeSetEnabled`|5.5.0| | | | | -|`cudaGraphNodeSetParams`|12.2| | | |`hipGraphNodeSetParams`|6.3.0| | | |6.3.0| +|`cudaGraphNodeSetParams`|12.2| | | |`hipGraphNodeSetParams`|6.3.0| | | | | |`cudaGraphReleaseUserObject`|11.3| | | |`hipGraphReleaseUserObject`|5.3.0| | | | | |`cudaGraphRemoveDependencies`|11.0| | | |`hipGraphRemoveDependencies`|5.0.0| | | | | |`cudaGraphRemoveDependencies_v2`|12.3| | | | | | | | | | diff --git a/docs/tables/CUDNN_API_supported_by_HIP.md b/docs/tables/CUDNN_API_supported_by_HIP.md index 11608bf9..45a74d51 100644 --- a/docs/tables/CUDNN_API_supported_by_HIP.md +++ b/docs/tables/CUDNN_API_supported_by_HIP.md @@ -69,6 +69,7 @@ |`CUDNN_ATTR_OPERATIONGRAPH_ENGINE_GLOBAL_COUNT`|8.0.1| | | | | | | | | | |`CUDNN_ATTR_OPERATIONGRAPH_HANDLE`|8.0.1| | | | | | | | | | |`CUDNN_ATTR_OPERATIONGRAPH_IS_DYNAMIC_SHAPE_ENABLED`|9.4.0| | | | | | | | | | +|`CUDNN_ATTR_OPERATIONGRAPH_IS_SAME_TOPOLOGY`|9.6.0| | | | | | | | | | |`CUDNN_ATTR_OPERATIONGRAPH_OPS`|8.0.1| | | | | | | | | | |`CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_BN_SCALE_DESC`|8.2.0| | | | | | | | | | |`CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_BIAS_DESC`|8.2.0| | | | | | | | | | @@ -658,6 +659,7 @@ |`CUDNN_STATUS_BAD_PARAM`|1.0.0| | | |`HIPDNN_STATUS_BAD_PARAM`| | | | | | |`CUDNN_STATUS_BAD_PARAM_ATTRIBUTE_TYPE`|9.0.0| | | | | | | | | | |`CUDNN_STATUS_BAD_PARAM_CUDA_GRAPH_MISMATCH`|9.5.0| | | | | | | | | | +|`CUDNN_STATUS_BAD_PARAM_DESCRIPTOR_TYPE`|9.6.0| | | | | | | | | | |`CUDNN_STATUS_BAD_PARAM_DUPLICATED_ENTRIES`|9.0.0| | | | | | | | | | |`CUDNN_STATUS_BAD_PARAM_MISALIGNED_POINTER`|9.0.0| | | | | | | | | | |`CUDNN_STATUS_BAD_PARAM_NOT_FINALIZED`|9.0.0| | | | | | | | | | diff --git a/docs/tables/CUDNN_API_supported_by_HIP_and_MIOPEN.md b/docs/tables/CUDNN_API_supported_by_HIP_and_MIOPEN.md index 8b1f288e..64adaf7f 100644 --- a/docs/tables/CUDNN_API_supported_by_HIP_and_MIOPEN.md +++ b/docs/tables/CUDNN_API_supported_by_HIP_and_MIOPEN.md @@ -69,6 +69,7 @@ |`CUDNN_ATTR_OPERATIONGRAPH_ENGINE_GLOBAL_COUNT`|8.0.1| | | | | | | | | |`MIOPEN_ATTR_OPERATIONGRAPH_ENGINE_GLOBAL_COUNT`|6.2.0| | | | | |`CUDNN_ATTR_OPERATIONGRAPH_HANDLE`|8.0.1| | | | | | | | | |`MIOPEN_ATTR_OPERATIONGRAPH_HANDLE`|6.2.0| | | | | |`CUDNN_ATTR_OPERATIONGRAPH_IS_DYNAMIC_SHAPE_ENABLED`|9.4.0| | | | | | | | | | | | | | | | +|`CUDNN_ATTR_OPERATIONGRAPH_IS_SAME_TOPOLOGY`|9.6.0| | | | | | | | | | | | | | | | |`CUDNN_ATTR_OPERATIONGRAPH_OPS`|8.0.1| | | | | | | | | |`MIOPEN_ATTR_OPERATIONGRAPH_OPS`|6.2.0| | | | | |`CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_BN_SCALE_DESC`|8.2.0| | | | | | | | | |`MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_BN_SCALE_DESC`|6.2.0| | | | | |`CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_BIAS_DESC`|8.2.0| | | | | | | | | |`MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_BIAS_DESC`|6.2.0| | | | | @@ -658,6 +659,7 @@ |`CUDNN_STATUS_BAD_PARAM`|1.0.0| | | |`HIPDNN_STATUS_BAD_PARAM`| | | | | |`miopenStatusBadParm`|2.1.0| | | | | |`CUDNN_STATUS_BAD_PARAM_ATTRIBUTE_TYPE`|9.0.0| | | | | | | | | | | | | | | | |`CUDNN_STATUS_BAD_PARAM_CUDA_GRAPH_MISMATCH`|9.5.0| | | | | | | | | | | | | | | | +|`CUDNN_STATUS_BAD_PARAM_DESCRIPTOR_TYPE`|9.6.0| | | | | | | | | | | | | | | | |`CUDNN_STATUS_BAD_PARAM_DUPLICATED_ENTRIES`|9.0.0| | | | | | | | | | | | | | | | |`CUDNN_STATUS_BAD_PARAM_MISALIGNED_POINTER`|9.0.0| | | | | | | | | | | | | | | | |`CUDNN_STATUS_BAD_PARAM_NOT_FINALIZED`|9.0.0| | | | | | | | | | | | | | | | diff --git a/docs/tables/CUDNN_API_supported_by_MIOPEN.md b/docs/tables/CUDNN_API_supported_by_MIOPEN.md index f0a4172f..b7432d2e 100644 --- a/docs/tables/CUDNN_API_supported_by_MIOPEN.md +++ b/docs/tables/CUDNN_API_supported_by_MIOPEN.md @@ -69,6 +69,7 @@ |`CUDNN_ATTR_OPERATIONGRAPH_ENGINE_GLOBAL_COUNT`|8.0.1| | | |`MIOPEN_ATTR_OPERATIONGRAPH_ENGINE_GLOBAL_COUNT`|6.2.0| | | | | |`CUDNN_ATTR_OPERATIONGRAPH_HANDLE`|8.0.1| | | |`MIOPEN_ATTR_OPERATIONGRAPH_HANDLE`|6.2.0| | | | | |`CUDNN_ATTR_OPERATIONGRAPH_IS_DYNAMIC_SHAPE_ENABLED`|9.4.0| | | | | | | | | | +|`CUDNN_ATTR_OPERATIONGRAPH_IS_SAME_TOPOLOGY`|9.6.0| | | | | | | | | | |`CUDNN_ATTR_OPERATIONGRAPH_OPS`|8.0.1| | | |`MIOPEN_ATTR_OPERATIONGRAPH_OPS`|6.2.0| | | | | |`CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_BN_SCALE_DESC`|8.2.0| | | |`MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_BN_SCALE_DESC`|6.2.0| | | | | |`CUDNN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_BIAS_DESC`|8.2.0| | | |`MIOPEN_ATTR_OPERATION_BN_BWD_WEIGHTS_DBN_BIAS_DESC`|6.2.0| | | | | @@ -658,6 +659,7 @@ |`CUDNN_STATUS_BAD_PARAM`|1.0.0| | | |`miopenStatusBadParm`|2.1.0| | | | | |`CUDNN_STATUS_BAD_PARAM_ATTRIBUTE_TYPE`|9.0.0| | | | | | | | | | |`CUDNN_STATUS_BAD_PARAM_CUDA_GRAPH_MISMATCH`|9.5.0| | | | | | | | | | +|`CUDNN_STATUS_BAD_PARAM_DESCRIPTOR_TYPE`|9.6.0| | | | | | | | | | |`CUDNN_STATUS_BAD_PARAM_DUPLICATED_ENTRIES`|9.0.0| | | | | | | | | | |`CUDNN_STATUS_BAD_PARAM_MISALIGNED_POINTER`|9.0.0| | | | | | | | | | |`CUDNN_STATUS_BAD_PARAM_NOT_FINALIZED`|9.0.0| | | | | | | | | | diff --git a/docs/tables/CUSOLVER_API_supported_by_HIP.md b/docs/tables/CUSOLVER_API_supported_by_HIP.md index c2535454..fcf92523 100644 --- a/docs/tables/CUSOLVER_API_supported_by_HIP.md +++ b/docs/tables/CUSOLVER_API_supported_by_HIP.md @@ -310,7 +310,7 @@ |`cusolverDnGeqrf_bufferSize`|11.0|11.1| | | | | | | | | |`cusolverDnGesvd`|11.0|11.1| | | | | | | | | |`cusolverDnGesvd_bufferSize`|11.0|11.1| | | | | | | | | -|`cusolverDnGetDeterministicMode`|12.2| | | |`hipsolverDnGetDeterministicMode`|6.3.0| | | |6.3.0| +|`cusolverDnGetDeterministicMode`|12.2| | | |`hipsolverDnGetDeterministicMode`|6.3.0| | | | | |`cusolverDnGetStream`| | | | |`hipsolverGetStream`|4.5.0| | | | | |`cusolverDnGetrf`|11.0|11.1| | | | | | | | | |`cusolverDnGetrf_bufferSize`|11.0|11.1| | | | | | | | | @@ -365,7 +365,7 @@ |`cusolverDnSXgesv`|11.0| | | | | | | | | | |`cusolverDnSXgesv_bufferSize`|11.0| | | | | | | | | | |`cusolverDnSetAdvOptions`|11.0| | | |`hipsolverDnSetAdvOptions`|6.2.0| | | | | -|`cusolverDnSetDeterministicMode`|12.2| | | |`hipsolverDnSetDeterministicMode`|6.3.0| | | |6.3.0| +|`cusolverDnSetDeterministicMode`|12.2| | | |`hipsolverDnSetDeterministicMode`|6.3.0| | | | | |`cusolverDnSetStream`| | | | |`hipsolverSetStream`|4.5.0| | | | | |`cusolverDnSgebrd`| | | | |`hipsolverDnSgebrd`|5.1.0| | | | | |`cusolverDnSgebrd_bufferSize`| | | | |`hipsolverDnSgebrd_bufferSize`|5.1.0| | | | | @@ -428,8 +428,8 @@ |`cusolverDnSyevdx_bufferSize`|11.0|11.1| | | | | | | | | |`cusolverDnXgeev`|12.6| | | | | | | | | | |`cusolverDnXgeev_bufferSize`|12.6| | | | | | | | | | -|`cusolverDnXgeqrf`|11.1| | | |`hipsolverDnXgeqrf`|6.3.0| | | |6.3.0| -|`cusolverDnXgeqrf_bufferSize`|11.1| | | |`hipsolverDnXgeqrf_bufferSize`|6.3.0| | | |6.3.0| +|`cusolverDnXgeqrf`|11.1| | | |`hipsolverDnXgeqrf`|6.3.0| | | | | +|`cusolverDnXgeqrf_bufferSize`|11.1| | | |`hipsolverDnXgeqrf_bufferSize`|6.3.0| | | | | |`cusolverDnXgesvd`|11.1| | | | | | | | | | |`cusolverDnXgesvd_bufferSize`|11.1| | | | | | | | | | |`cusolverDnXgesvdjGetResidual`|9.0| | | |`hipsolverDnXgesvdjGetResidual`|5.1.0| | | | | @@ -446,9 +446,9 @@ |`cusolverDnXgetrs`|11.1| | | |`hipsolverDnXgetrs`|6.2.0| | | | | |`cusolverDnXlarft`|12.4| | | | | | | | | | |`cusolverDnXlarft_bufferSize`|12.4| | | | | | | | | | -|`cusolverDnXpotrf`|11.1| | | |`hipsolverDnXpotrf`|6.3.0| | | |6.3.0| -|`cusolverDnXpotrf_bufferSize`|11.1| | | |`hipsolverDnXpotrf_bufferSize`|6.3.0| | | |6.3.0| -|`cusolverDnXpotrs`|11.1| | | |`hipsolverDnXpotrs`|6.3.0| | | |6.3.0| +|`cusolverDnXpotrf`|11.1| | | |`hipsolverDnXpotrf`|6.3.0| | | | | +|`cusolverDnXpotrf_bufferSize`|11.1| | | |`hipsolverDnXpotrf_bufferSize`|6.3.0| | | | | +|`cusolverDnXpotrs`|11.1| | | |`hipsolverDnXpotrs`|6.3.0| | | | | |`cusolverDnXsyevBatched`|12.6| | | | | | | | | | |`cusolverDnXsyevBatched_bufferSize`|12.6| | | | | | | | | | |`cusolverDnXsyevd`|11.1| | | | | | | | | | diff --git a/docs/tables/CUSOLVER_API_supported_by_HIP_and_ROC.md b/docs/tables/CUSOLVER_API_supported_by_HIP_and_ROC.md index 44259ab8..66d9a080 100644 --- a/docs/tables/CUSOLVER_API_supported_by_HIP_and_ROC.md +++ b/docs/tables/CUSOLVER_API_supported_by_HIP_and_ROC.md @@ -310,7 +310,7 @@ |`cusolverDnGeqrf_bufferSize`|11.0|11.1| | | | | | | | | | | | | | | |`cusolverDnGesvd`|11.0|11.1| | | | | | | | | | | | | | | |`cusolverDnGesvd_bufferSize`|11.0|11.1| | | | | | | | | | | | | | | -|`cusolverDnGetDeterministicMode`|12.2| | | |`hipsolverDnGetDeterministicMode`|6.3.0| | | |6.3.0| | | | | | | +|`cusolverDnGetDeterministicMode`|12.2| | | |`hipsolverDnGetDeterministicMode`|6.3.0| | | | | | | | | | | |`cusolverDnGetStream`| | | | |`hipsolverGetStream`|4.5.0| | | | |`rocblas_get_stream`| | | | | | |`cusolverDnGetrf`|11.0|11.1| | | | | | | | | | | | | | | |`cusolverDnGetrf_bufferSize`|11.0|11.1| | | | | | | | | | | | | | | @@ -365,7 +365,7 @@ |`cusolverDnSXgesv`|11.0| | | | | | | | | | | | | | | | |`cusolverDnSXgesv_bufferSize`|11.0| | | | | | | | | | | | | | | | |`cusolverDnSetAdvOptions`|11.0| | | |`hipsolverDnSetAdvOptions`|6.2.0| | | | | | | | | | | -|`cusolverDnSetDeterministicMode`|12.2| | | |`hipsolverDnSetDeterministicMode`|6.3.0| | | |6.3.0| | | | | | | +|`cusolverDnSetDeterministicMode`|12.2| | | |`hipsolverDnSetDeterministicMode`|6.3.0| | | | | | | | | | | |`cusolverDnSetStream`| | | | |`hipsolverSetStream`|4.5.0| | | | |`rocblas_set_stream`| | | | | | |`cusolverDnSgebrd`| | | | |`hipsolverDnSgebrd`|5.1.0| | | | | | | | | | | |`cusolverDnSgebrd_bufferSize`| | | | |`hipsolverDnSgebrd_bufferSize`|5.1.0| | | | | | | | | | | @@ -428,8 +428,8 @@ |`cusolverDnSyevdx_bufferSize`|11.0|11.1| | | | | | | | | | | | | | | |`cusolverDnXgeev`|12.6| | | | | | | | | | | | | | | | |`cusolverDnXgeev_bufferSize`|12.6| | | | | | | | | | | | | | | | -|`cusolverDnXgeqrf`|11.1| | | |`hipsolverDnXgeqrf`|6.3.0| | | |6.3.0| | | | | | | -|`cusolverDnXgeqrf_bufferSize`|11.1| | | |`hipsolverDnXgeqrf_bufferSize`|6.3.0| | | |6.3.0| | | | | | | +|`cusolverDnXgeqrf`|11.1| | | |`hipsolverDnXgeqrf`|6.3.0| | | | | | | | | | | +|`cusolverDnXgeqrf_bufferSize`|11.1| | | |`hipsolverDnXgeqrf_bufferSize`|6.3.0| | | | | | | | | | | |`cusolverDnXgesvd`|11.1| | | | | | | | | | | | | | | | |`cusolverDnXgesvd_bufferSize`|11.1| | | | | | | | | | | | | | | | |`cusolverDnXgesvdjGetResidual`|9.0| | | |`hipsolverDnXgesvdjGetResidual`|5.1.0| | | | | | | | | | | @@ -446,9 +446,9 @@ |`cusolverDnXgetrs`|11.1| | | |`hipsolverDnXgetrs`|6.2.0| | | | | | | | | | | |`cusolverDnXlarft`|12.4| | | | | | | | | | | | | | | | |`cusolverDnXlarft_bufferSize`|12.4| | | | | | | | | | | | | | | | -|`cusolverDnXpotrf`|11.1| | | |`hipsolverDnXpotrf`|6.3.0| | | |6.3.0| | | | | | | -|`cusolverDnXpotrf_bufferSize`|11.1| | | |`hipsolverDnXpotrf_bufferSize`|6.3.0| | | |6.3.0| | | | | | | -|`cusolverDnXpotrs`|11.1| | | |`hipsolverDnXpotrs`|6.3.0| | | |6.3.0| | | | | | | +|`cusolverDnXpotrf`|11.1| | | |`hipsolverDnXpotrf`|6.3.0| | | | | | | | | | | +|`cusolverDnXpotrf_bufferSize`|11.1| | | |`hipsolverDnXpotrf_bufferSize`|6.3.0| | | | | | | | | | | +|`cusolverDnXpotrs`|11.1| | | |`hipsolverDnXpotrs`|6.3.0| | | | | | | | | | | |`cusolverDnXsyevBatched`|12.6| | | | | | | | | | | | | | | | |`cusolverDnXsyevBatched_bufferSize`|12.6| | | | | | | | | | | | | | | | |`cusolverDnXsyevd`|11.1| | | | | | | | | | | | | | | | diff --git a/docs/tables/CUTENSOR_API_supported_by_HIP.md b/docs/tables/CUTENSOR_API_supported_by_HIP.md new file mode 100644 index 00000000..4c06dff0 --- /dev/null +++ b/docs/tables/CUTENSOR_API_supported_by_HIP.md @@ -0,0 +1,201 @@ +# CUTENSOR API supported by HIP + +## **1. CUTENSOR Data types** + +|**CUDA**|**A**|**D**|**C**|**R**|**HIP**|**A**|**D**|**C**|**R**|**E**| +|:--|:-:|:-:|:-:|:-:|:--|:-:|:-:|:-:|:-:|:-:| +|`CUTENSOR_ALGO_DEFAULT`|1.0.1.0| | | |`HIPTENSOR_ALGO_DEFAULT`|5.7.0| | | | | +|`CUTENSOR_ALGO_DEFAULT_PATIENT`|1.4.0.0| | | |`HIPTENSOR_ALGO_DEFAULT_PATIENT`|5.7.0| | | | | +|`CUTENSOR_ALGO_GETT`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_ALGO_TGETT`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_ALGO_TTGT`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_AUTOTUNE_MODE_INCREMENTAL`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_AUTOTUNE_MODE_NONE`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_CACHE_MODE_NONE`|1.2.0.0| | | | | | | | | | +|`CUTENSOR_CACHE_MODE_PEDANTIC`|1.2.0.0| | | | | | | | | | +|`CUTENSOR_COMPUTE_16BF`|1.0.1.0| | |2.0.0.0|`HIPTENSOR_COMPUTE_16BF`|5.7.0| | | | | +|`CUTENSOR_COMPUTE_16F`|1.0.1.0| | |2.0.0.0|`HIPTENSOR_COMPUTE_16F`|5.7.0| | | | | +|`CUTENSOR_COMPUTE_32F`|1.0.1.0| | |2.0.0.0|`HIPTENSOR_COMPUTE_32F`|5.7.0| | | | | +|`CUTENSOR_COMPUTE_32I`|1.0.1.0| | |2.0.0.0|`HIPTENSOR_COMPUTE_32I`|5.7.0| | | | | +|`CUTENSOR_COMPUTE_32U`|1.0.1.0| | |2.0.0.0|`HIPTENSOR_COMPUTE_32U`|5.7.0| | | | | +|`CUTENSOR_COMPUTE_64F`|1.0.1.0| | |2.0.0.0|`HIPTENSOR_COMPUTE_64F`|5.7.0| | | | | +|`CUTENSOR_COMPUTE_8I`|1.0.1.0| | |2.0.0.0|`HIPTENSOR_COMPUTE_8I`|5.7.0| | | | | +|`CUTENSOR_COMPUTE_8U`|1.0.1.0| | |2.0.0.0|`HIPTENSOR_COMPUTE_8U`|5.7.0| | | | | +|`CUTENSOR_COMPUTE_TF32`|1.0.1.0| | |2.0.0.0| | | | | | | +|`CUTENSOR_C_16BF`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_C_16F`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_C_16I`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_C_16U`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_C_32F`|2.0.0.0| | | |`HIPTENSOR_COMPUTE_C32F`|6.1.0| | | | | +|`CUTENSOR_C_32I`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_C_32U`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_C_4I`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_C_4U`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_C_64F`|2.0.0.0| | | |`HIPTENSOR_COMPUTE_C64F`|5.7.0| | | | | +|`CUTENSOR_C_64I`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_C_64U`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_C_8I`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_C_8U`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_C_MIN_16F`|1.0.1.0|1.2.0.0| |2.0.0.0| | | | | | | +|`CUTENSOR_C_MIN_32F`|1.0.1.0|1.2.0.0| |2.0.0.0| | | | | | | +|`CUTENSOR_C_MIN_64F`|1.0.1.0|1.2.0.0| |2.0.0.0| | | | | | | +|`CUTENSOR_C_MIN_TF32`|1.0.1.0|1.2.0.0| |2.0.0.0| | | | | | | +|`CUTENSOR_JIT_MODE_DEFAULT`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_JIT_MODE_NONE`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_OPERATION_DESCRIPTOR_FLOPS`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_OPERATION_DESCRIPTOR_MOVED_BYTES`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_OPERATION_DESCRIPTOR_PADDING_LEFT`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_OPERATION_DESCRIPTOR_PADDING_RIGHT`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_OPERATION_DESCRIPTOR_PADDING_VALUE`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_OPERATION_DESCRIPTOR_SCALAR_TYPE`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_OPERATION_DESCRIPTOR_TAG`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_OP_ABS`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_ACOS`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_ACOSH`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_ADD`|1.0.1.0| | | |`HIPTENSOR_OP_ADD`|6.3.0| | | | | +|`CUTENSOR_OP_ASIN`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_ASINH`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_ATAN`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_ATANH`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_CEIL`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_CONJ`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_COS`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_COSH`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_EXP`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_FLOOR`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_IDENTITY`|1.0.1.0| | | |`HIPTENSOR_OP_IDENTITY`|5.7.0| | | | | +|`CUTENSOR_OP_LOG`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_MAX`|1.0.1.0| | | |`HIPTENSOR_OP_MAX`|6.3.0| | | | | +|`CUTENSOR_OP_MIN`|1.0.1.0| | | |`HIPTENSOR_OP_MIN`|6.3.0| | | | | +|`CUTENSOR_OP_MISH`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_OP_MUL`|1.0.1.0| | | |`HIPTENSOR_OP_MUL`|6.3.0| | | | | +|`CUTENSOR_OP_NEG`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_RCP`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_RELU`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_SIGMOID`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_SIN`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_SINH`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_SOFT_PLUS`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_OP_SOFT_SIGN`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_OP_SQRT`|1.0.1.0| | | |`HIPTENSOR_OP_SQRT`|6.2.0| | | | | +|`CUTENSOR_OP_SWISH`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_OP_TAN`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_TANH`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_OP_UNKNOWN`|1.0.1.0| | | |`HIPTENSOR_OP_UNKNOWN`|5.7.0| | | | | +|`CUTENSOR_PLAN_PREFERENCE_ALGO`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_PLAN_PREFERENCE_AUTOTUNE_MODE`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_PLAN_PREFERENCE_CACHE_MODE`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_PLAN_PREFERENCE_INCREMENTAL_COUNT`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_PLAN_PREFERENCE_JIT`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_PLAN_PREFERENCE_KERNEL_RANK`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_PLAN_REQUIRED_WORKSPACE`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_R_16BF`|2.0.0.0| | | |`HIPTENSOR_COMPUTE_16BF`|5.7.0| | | | | +|`CUTENSOR_R_16F`|2.0.0.0| | | |`HIPTENSOR_COMPUTE_16F`|5.7.0| | | | | +|`CUTENSOR_R_16I`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_R_16U`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_R_32F`|2.0.0.0| | | |`HIPTENSOR_COMPUTE_32F`|5.7.0| | | | | +|`CUTENSOR_R_32I`|2.0.0.0| | | |`HIPTENSOR_COMPUTE_32I`|5.7.0| | | | | +|`CUTENSOR_R_32U`|2.0.0.0| | | |`HIPTENSOR_COMPUTE_32U`|5.7.0| | | | | +|`CUTENSOR_R_4I`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_R_4U`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_R_64F`|2.0.0.0| | | |`HIPTENSOR_COMPUTE_64F`|5.7.0| | | | | +|`CUTENSOR_R_64I`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_R_64U`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_R_8I`|2.0.0.0| | | |`HIPTENSOR_COMPUTE_8I`|5.7.0| | | | | +|`CUTENSOR_R_8U`|2.0.0.0| | | |`HIPTENSOR_COMPUTE_8U`|5.7.0| | | | | +|`CUTENSOR_R_MIN_16BF`|1.0.1.0|1.2.0.0| |2.0.0.0| | | | | | | +|`CUTENSOR_R_MIN_16F`|1.0.1.0|1.2.0.0| |2.0.0.0| | | | | | | +|`CUTENSOR_R_MIN_32F`|1.0.1.0|1.2.0.0| |2.0.0.0| | | | | | | +|`CUTENSOR_R_MIN_32U`|1.0.1.0|1.2.0.0| |2.0.0.0| | | | | | | +|`CUTENSOR_R_MIN_64F`|1.0.1.0|1.2.0.0| |2.0.0.0| | | | | | | +|`CUTENSOR_R_MIN_8U`|1.0.1.0|1.2.0.0| |2.0.0.0| | | | | | | +|`CUTENSOR_R_MIN_TF32`|1.0.1.0|1.2.0.0| |2.0.0.0| | | | | | | +|`CUTENSOR_STATUS_ALLOC_FAILED`|1.0.1.0| | | |`HIPTENSOR_STATUS_ALLOC_FAILED`|5.7.0| | | | | +|`CUTENSOR_STATUS_ARCH_MISMATCH`|1.0.1.0| | | |`HIPTENSOR_STATUS_ARCH_MISMATCH`|5.7.0| | | | | +|`CUTENSOR_STATUS_CUBLAS_ERROR`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_STATUS_CUDA_ERROR`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_STATUS_EXECUTION_FAILED`|1.0.1.0| | | |`HIPTENSOR_STATUS_EXECUTION_FAILED`|5.7.0| | | | | +|`CUTENSOR_STATUS_INSUFFICIENT_DRIVER`|1.0.1.0| | | |`HIPTENSOR_STATUS_INSUFFICIENT_DRIVER`|5.7.0| | | | | +|`CUTENSOR_STATUS_INSUFFICIENT_WORKSPACE`|1.0.1.0| | | |`HIPTENSOR_STATUS_INSUFFICIENT_WORKSPACE`|5.7.0| | | | | +|`CUTENSOR_STATUS_INTERNAL_ERROR`|1.0.1.0| | | |`HIPTENSOR_STATUS_INTERNAL_ERROR`|5.7.0| | | | | +|`CUTENSOR_STATUS_INVALID_VALUE`|1.0.1.0| | | |`HIPTENSOR_STATUS_INVALID_VALUE`|5.7.0| | | | | +|`CUTENSOR_STATUS_IO_ERROR`|1.2.0.0| | | |`HIPTENSOR_STATUS_IO_ERROR`|5.7.0| | | | | +|`CUTENSOR_STATUS_LICENSE_ERROR`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_STATUS_MAPPING_ERROR`|1.0.1.0| | | | | | | | | | +|`CUTENSOR_STATUS_NOT_INITIALIZED`|1.0.1.0| | | |`HIPTENSOR_STATUS_NOT_INITIALIZED`|5.7.0| | | | | +|`CUTENSOR_STATUS_NOT_SUPPORTED`|1.0.1.0| | | |`HIPTENSOR_STATUS_NOT_SUPPORTED`|5.7.0| | | | | +|`CUTENSOR_STATUS_SUCCESS`|1.0.1.0| | | |`HIPTENSOR_STATUS_SUCCESS`|5.7.0| | | | | +|`CUTENSOR_WORKSPACE_DEFAULT`|2.0.0.0| | | | | | | | | | +|`CUTENSOR_WORKSPACE_MAX`|1.0.1.0| | | |`HIPTENSOR_WORKSPACE_MAX`|5.7.0| | | | | +|`CUTENSOR_WORKSPACE_MIN`|1.0.1.0| | | |`HIPTENSOR_WORKSPACE_MIN`|5.7.0| | | | | +|`CUTENSOR_WORKSPACE_RECOMMENDED`|1.0.1.0| | |2.0.0.0|`HIPTENSOR_WORKSPACE_RECOMMENDED`|5.7.0| | | | | +|`cutensorAlgo_t`|1.0.1.0| | | |`hiptensorAlgo_t`|5.7.0| | | | | +|`cutensorAutotuneMode_t`|1.2.0.0| | | | | | | | | | +|`cutensorCacheMode_t`|1.2.0.0| | | | | | | | | | +|`cutensorComputeType_t`| | | | |`hiptensorComputeType_t`|5.7.0| | | | | +|`cutensorContractionPlan_t`|1.0.1.0| | |2.0.0.0|`hiptensorContractionPlan_t`|5.7.0| | | | | +|`cutensorDataType_t`|2.0.0.0| | | |`hiptensorComputeType_t`|5.7.0| | | | | +|`cutensorHandle`|2.0.0.0| | | | | | | | | | +|`cutensorHandle_t`|1.0.1.0| | | |`hiptensorHandle_t`|5.7.0| | | | | +|`cutensorJitMode_t`|2.0.0.0| | | | | | | | | | +|`cutensorLoggerCallback_t`|1.3.2.0| | | |`hiptensorLoggerCallback_t`|5.7.0| | | | | +|`cutensorOperationDescriptorAttribute_t`|2.0.0.0| | | | | | | | | | +|`cutensorOperator_t`|1.0.1.0| | | |`hiptensorOperator_t`|5.7.0| | | | | +|`cutensorPlan`|2.0.0.0| | | | | | | | | | +|`cutensorPlanAttribute_t`|2.0.0.0| | | | | | | | | | +|`cutensorPlanPreferenceAttribute_t`|2.0.0.0| | | | | | | | | | +|`cutensorPlan_t`|2.0.0.0| | | |`hiptensorContractionPlan_t`|5.7.0| | | | | +|`cutensorStatus_t`|1.0.1.0| | | |`hiptensorStatus_t`|5.7.0| | | | | +|`cutensorTensorDescriptor`|2.0.0.0| | | | | | | | | | +|`cutensorTensorDescriptor_t`|1.0.1.0| | | |`hiptensorTensorDescriptor_t`|5.7.0| | | | | +|`cutensorWorksizePreference_t`|1.0.1.0| | | |`hiptensorWorksizePreference_t`|5.7.0| | | | | + +## **2. CUTENSOR Function Reference** + +|**CUDA**|**A**|**D**|**C**|**R**|**HIP**|**A**|**D**|**C**|**R**|**E**| +|:--|:-:|:-:|:-:|:-:|:--|:-:|:-:|:-:|:-:|:-:| +|`cutensorContract`|2.0.0.0| | | |`hiptensorContraction`|6.1.0| | | | | +|`cutensorContraction`|1.0.1.0| | |2.0.0.0|`hiptensorContraction`|6.1.0| | | | | +|`cutensorCreate`|1.7.0.0| | | |`hiptensorCreate`|5.7.0| | | | | +|`cutensorCreateContraction`|2.0.0.0| | | | | | | | | | +|`cutensorCreateElementwiseBinary`|2.0.0.0| | | | | | | | | | +|`cutensorCreateElementwiseTrinary`|2.0.0.0| | | | | | | | | | +|`cutensorCreatePermutation`|2.0.0.0| | | | | | | | | | +|`cutensorCreatePlan`|2.0.0.0| | | | | | | | | | +|`cutensorCreatePlanPreference`|2.0.0.0| | | | | | | | | | +|`cutensorCreateReduction`|2.0.0.0| | | | | | | | | | +|`cutensorCreateTensorDescriptor`|2.0.0.0| | | | | | | | | | +|`cutensorDestroy`|1.7.0.0| | | |`hiptensorDestroy`|5.7.0| | | | | +|`cutensorDestroyOperationDescriptor`|2.0.0.0| | | | | | | | | | +|`cutensorDestroyPlan`|2.0.0.0| | | | | | | | | | +|`cutensorDestroyPlanPreference`|2.0.0.0| | | | | | | | | | +|`cutensorDestroyTensorDescriptor`|2.0.0.0| | | | | | | | | | +|`cutensorElementwiseBinaryExecute`|2.0.0.0| | | | | | | | | | +|`cutensorElementwiseTrinaryExecute`|2.0.0.0| | | | | | | | | | +|`cutensorEstimateWorkspaceSize`|2.0.0.0| | | | | | | | | | +|`cutensorGetCudartVersion`|1.0.1.0| | | |`hiptensorGetHiprtVersion`|5.7.0| | | | | +|`cutensorGetErrorString`|1.0.1.0| | | |`hiptensorGetErrorString`|5.7.0| | | | | +|`cutensorGetVersion`|1.0.1.0| | | | | | | | | | +|`cutensorHandleReadPlanCacheFromFile`|2.0.0.0| | | | | | | | | | +|`cutensorHandleResizePlanCache`|2.0.0.0| | | | | | | | | | +|`cutensorHandleWritePlanCacheToFile`|2.0.0.0| | | | | | | | | | +|`cutensorInitTensorDescriptor`|1.0.1.0| | |2.0.0.0|`hiptensorInitTensorDescriptor`|5.7.0| | | | | +|`cutensorLoggerForceDisable`|1.3.2.0| | | |`hiptensorLoggerForceDisable`|5.7.0| | | | | +|`cutensorLoggerOpenFile`|1.3.2.0| | | |`hiptensorLoggerOpenFile`|5.7.0| | | | | +|`cutensorLoggerSetCallback`|1.3.2.0| | | |`hiptensorLoggerSetCallback`|5.7.0| | | | | +|`cutensorLoggerSetFile`|1.3.2.0| | | |`hiptensorLoggerSetFile`|5.7.0| | | | | +|`cutensorLoggerSetLevel`|1.3.2.0| | | |`hiptensorLoggerSetLevel`|5.7.0| | | | | +|`cutensorLoggerSetMask`|1.3.2.0| | | |`hiptensorLoggerSetMask`|5.7.0| | | | | +|`cutensorOperationDescriptorGetAttribute`|2.0.0.0| | | | | | | | | | +|`cutensorOperationDescriptorSetAttribute`|2.0.0.0| | | | | | | | | | +|`cutensorPermutation`|1.0.1.0| | |2.0.0.0|`hiptensorPermutation`|6.1.0| | | | | +|`cutensorPermute`|2.0.0.0| | | | | | | | | | +|`cutensorPlanGetAttribute`|2.0.0.0| | | | | | | | | | +|`cutensorPlanPreferenceSetAttribute`|2.0.0.0| | | | | | | | | | +|`cutensorReadKernelCacheFromFile`|2.0.0.0| | | | | | | | | | +|`cutensorReduce`|2.0.0.0| | | | | | | | | | +|`cutensorReduction`|1.0.1.0| | |2.0.0.0|`hiptensorReduction`|6.3.0| | | | | +|`cutensorWriteKernelCacheToFile`|2.0.0.0| | | | | | | | | | + + +\*A - Added; D - Deprecated; C - Changed; R - Removed; E - Experimental \ No newline at end of file diff --git a/packaging/hipify-clang.txt b/packaging/hipify-clang.txt index 306e982d..e989f29e 100755 --- a/packaging/hipify-clang.txt +++ b/packaging/hipify-clang.txt @@ -50,7 +50,7 @@ if(DEFINED ENV{ROCM_LIBPATCH_VERSION}) endif() #Debian package specific variables -set(CPACK_DEBIAN_PACKAGE_HOMEPAGE ${CPACK_DEBIAN_PACKAGE_HOMEPAGE} CACHE STRING "https://github.com/RadeonOpenCompute/ROCm") +set(CPACK_DEBIAN_PACKAGE_HOMEPAGE ${CPACK_DEBIAN_PACKAGE_HOMEPAGE} CACHE STRING "https://github.com/ROCm") if(ROCM_DEP_ROCMCORE) set(CPACK_DEBIAN_PACKAGE_DEPENDS "rocm-core") endif() diff --git a/src/ArgParse.cpp b/src/ArgParse.cpp index aff874f4..01131de4 100644 --- a/src/ArgParse.cpp +++ b/src/ArgParse.cpp @@ -214,7 +214,7 @@ cl::opt Versions("versions", cl::value_desc("versions"), cl::cat(ToolTemplateCategory)); -// NOTE: A temporary solution; to remove after fixing https://github.com/ROCmSoftwarePlatform/hipBLAS/issues/366 +// NOTE: A temporary solution; to remove after fixing https://github.com/ROCm/hipBLAS/issues/366 cl::opt UseHipDataType("use-hip-data-types", cl::desc("Use 'hipDataType' instead of 'hipblasDatatype_t' or 'rocblas_datatype'"), cl::value_desc("use-hip-data-types"), diff --git a/src/CUDA2HIP.cpp b/src/CUDA2HIP.cpp index d6d8feb0..56650fce 100644 --- a/src/CUDA2HIP.cpp +++ b/src/CUDA2HIP.cpp @@ -33,6 +33,7 @@ const std::map CUDA_INCLUDE_MAP { {"device_functions.h", {"hip/device_functions.h", "", CONV_INCLUDE, API_RUNTIME, 0}}, {"driver_types.h", {"hip/driver_types.h", "", CONV_INCLUDE, API_RUNTIME, 0}}, {"cuda_fp16.h", {"hip/hip_fp16.h", "", CONV_INCLUDE, API_RUNTIME, 0}}, + {"cuda_fp8.h", {"hip/hip_fp8.h", "", CONV_INCLUDE, API_RUNTIME, 0}}, {"cuda_texture_types.h", {"hip/hip_texture_types.h", "", CONV_INCLUDE, API_RUNTIME, 0}}, {"texture_fetch_functions.h", {"", "", CONV_INCLUDE, API_RUNTIME, 0}}, {"vector_types.h", {"hip/hip_vector_types.h", "", CONV_INCLUDE, API_RUNTIME, 0}}, @@ -67,6 +68,8 @@ const std::map CUDA_INCLUDE_MAP { {"curand_uniform.h", {"hiprand/hiprand_kernel.h", "rocrand/rocrand_uniform.h", CONV_INCLUDE, API_RAND, 0}}, // cuDNN includes {"cudnn.h", {"hipDNN.h", "miopen/miopen.h", CONV_INCLUDE_CUDA_MAIN_H, API_DNN, 0}}, + // cuTensor includes + {"cutensor.h", {"hiptensor.h", "", CONV_INCLUDE_CUDA_MAIN_H, API_TENSOR, 0}}, // cuFFT includes {"cufft.h", {"hipfft/hipfft.h", "", CONV_INCLUDE_CUDA_MAIN_H, API_FFT, 0}}, {"cufftXt.h", {"hipfft/hipfftXt.h", "", CONV_INCLUDE, API_FFT, 0}}, @@ -125,8 +128,11 @@ const std::map &CUDA_RENAMES_MAP() { ret.insert(CUDA_RTC_TYPE_NAME_MAP.begin(), CUDA_RTC_TYPE_NAME_MAP.end()); ret.insert(CUDA_RTC_FUNCTION_MAP.begin(), CUDA_RTC_FUNCTION_MAP.end()); ret.insert(CUDA_DEVICE_TYPE_NAME_MAP.begin(), CUDA_DEVICE_TYPE_NAME_MAP.end()); + ret.insert(CUDA_DEVICE_FUNCTION_MAP.begin(), CUDA_DEVICE_FUNCTION_MAP.end()); ret.insert(CUDA_SOLVER_TYPE_NAME_MAP.begin(), CUDA_SOLVER_TYPE_NAME_MAP.end()); ret.insert(CUDA_SOLVER_FUNCTION_MAP.begin(), CUDA_SOLVER_FUNCTION_MAP.end()); + ret.insert(CUDA_TENSOR_TYPE_NAME_MAP.begin(), CUDA_TENSOR_TYPE_NAME_MAP.end()); + ret.insert(CUDA_TENSOR_FUNCTION_MAP.begin(), CUDA_TENSOR_FUNCTION_MAP.end()); return ret; }; @@ -161,6 +167,8 @@ const std::map &CUDA_VERSIONS_MAP() { ret.insert(CUDA_RTC_FUNCTION_VER_MAP.begin(), CUDA_RTC_FUNCTION_VER_MAP.end()); ret.insert(CUDA_SOLVER_TYPE_NAME_VER_MAP.begin(), CUDA_SOLVER_TYPE_NAME_VER_MAP.end()); ret.insert(CUDA_SOLVER_FUNCTION_VER_MAP.begin(), CUDA_SOLVER_FUNCTION_VER_MAP.end()); + ret.insert(CUDA_TENSOR_TYPE_NAME_VER_MAP.begin(), CUDA_TENSOR_TYPE_NAME_VER_MAP.end()); + ret.insert(CUDA_TENSOR_FUNCTION_VER_MAP.begin(), CUDA_TENSOR_FUNCTION_VER_MAP.end()); return ret; } @@ -195,5 +203,7 @@ const std::map &HIP_VERSIONS_MAP() { ret.insert(HIP_RTC_FUNCTION_VER_MAP.begin(), HIP_RTC_FUNCTION_VER_MAP.end()); ret.insert(HIP_SOLVER_TYPE_NAME_VER_MAP.begin(), HIP_SOLVER_TYPE_NAME_VER_MAP.end()); ret.insert(HIP_SOLVER_FUNCTION_VER_MAP.begin(), HIP_SOLVER_FUNCTION_VER_MAP.end()); + ret.insert(HIP_TENSOR_TYPE_NAME_VER_MAP.begin(), HIP_TENSOR_TYPE_NAME_VER_MAP.end()); + ret.insert(HIP_TENSOR_FUNCTION_VER_MAP.begin(), HIP_TENSOR_FUNCTION_VER_MAP.end()); return ret; } diff --git a/src/CUDA2HIP.h b/src/CUDA2HIP.h index b262f44b..bee5e8bf 100644 --- a/src/CUDA2HIP.h +++ b/src/CUDA2HIP.h @@ -85,6 +85,10 @@ extern const std::map CUDA_RTC_FUNCTION_MAP; extern const std::map CUDA_SOLVER_TYPE_NAME_MAP; // Maps the names of CUDA SOLVER API functions to the corresponding HIP functions extern const std::map CUDA_SOLVER_FUNCTION_MAP; +// Maps the names of CUDA TENSOR API types to the corresponding HIP types +extern const std::map CUDA_TENSOR_TYPE_NAME_MAP; +// Maps the names of CUDA TENSOR API functions to the corresponding HIP functions +extern const std::map CUDA_TENSOR_FUNCTION_MAP; /** * The union of all the above maps, except includes. @@ -122,6 +126,8 @@ extern const std::map CUDA_RTC_TYPE_NAME_VER_M extern const std::map CUDA_RTC_FUNCTION_VER_MAP; extern const std::map CUDA_SOLVER_TYPE_NAME_VER_MAP; extern const std::map CUDA_SOLVER_FUNCTION_VER_MAP; +extern const std::map CUDA_TENSOR_TYPE_NAME_VER_MAP; +extern const std::map CUDA_TENSOR_FUNCTION_VER_MAP; /** * The union of all the above CUDA maps. @@ -162,6 +168,8 @@ extern const std::map HIP_RTC_FUNCTION_VER_MAP; extern const std::map CUDA_RTC_FUNCTION_CHANGED_VER_MAP; extern const std::map HIP_SOLVER_TYPE_NAME_VER_MAP; extern const std::map HIP_SOLVER_FUNCTION_VER_MAP; +extern const std::map HIP_TENSOR_TYPE_NAME_VER_MAP; +extern const std::map HIP_TENSOR_FUNCTION_VER_MAP; /** * The union of all the above HIP maps. @@ -181,6 +189,7 @@ extern const std::map CUDA_DEVICE_FUNCTION_API_SE extern const std::map CUDA_RTC_API_SECTION_MAP; extern const std::map CUDA_CUB_API_SECTION_MAP; extern const std::map CUDA_SOLVER_API_SECTION_MAP; +extern const std::map CUDA_TENSOR_API_SECTION_MAP; namespace driver { enum CUDA_DRIVER_API_SECTIONS { diff --git a/src/CUDA2HIP_BLAS_API_functions.cpp b/src/CUDA2HIP_BLAS_API_functions.cpp index 6dda671f..d7cc90bb 100644 --- a/src/CUDA2HIP_BLAS_API_functions.cpp +++ b/src/CUDA2HIP_BLAS_API_functions.cpp @@ -421,9 +421,9 @@ const std::map CUDA_BLAS_FUNCTION_MAP { {"cublasHgemmBatched", {"hipblasHgemmBatched", "rocblas_hgemm_batched", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3}}, {"cublasHgemmBatched_64", {"hipblasHgemmBatched_64", "rocblas_hgemm_batched_64", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3}}, {"cublasSgemmStridedBatched", {"hipblasSgemmStridedBatched", "rocblas_sgemm_strided_batched", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3}}, - {"cublasSgemmStridedBatched_64", {"hipblasSgemmStridedBatched_64", "rocblas_sgemm_strided_batched_64", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3, HIP_EXPERIMENTAL}}, + {"cublasSgemmStridedBatched_64", {"hipblasSgemmStridedBatched_64", "rocblas_sgemm_strided_batched_64", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3}}, {"cublasDgemmStridedBatched", {"hipblasDgemmStridedBatched", "rocblas_dgemm_strided_batched", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3}}, - {"cublasDgemmStridedBatched_64", {"hipblasDgemmStridedBatched_64", "rocblas_dgemm_strided_batched_64", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3, HIP_EXPERIMENTAL}}, + {"cublasDgemmStridedBatched_64", {"hipblasDgemmStridedBatched_64", "rocblas_dgemm_strided_batched_64", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3}}, {"cublasCgemmBatched", {"hipblasCgemmBatched_v2", "rocblas_cgemm_batched", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3}}, {"cublasCgemmBatched_64", {"hipblasCgemmBatched_v2_64", "rocblas_cgemm_batched_64", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3}}, {"cublasCgemm3mBatched", {"hipblasCgemm3mBatched", "", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3, UNSUPPORTED}}, @@ -431,13 +431,13 @@ const std::map CUDA_BLAS_FUNCTION_MAP { {"cublasZgemmBatched", {"hipblasZgemmBatched_v2", "rocblas_zgemm_batched", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3}}, {"cublasZgemmBatched_64", {"hipblasZgemmBatched_v2_64", "rocblas_zgemm_batched_64", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3}}, {"cublasCgemmStridedBatched", {"hipblasCgemmStridedBatched_v2", "rocblas_cgemm_strided_batched", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3}}, - {"cublasCgemmStridedBatched_64", {"hipblasCgemmStridedBatched_v2_64", "rocblas_cgemm_strided_batched_64", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3, HIP_EXPERIMENTAL}}, + {"cublasCgemmStridedBatched_64", {"hipblasCgemmStridedBatched_v2_64", "rocblas_cgemm_strided_batched_64", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3}}, {"cublasCgemm3mStridedBatched", {"hipblasCgemm3mStridedBatched", "", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3, UNSUPPORTED}}, {"cublasCgemm3mStridedBatched_64", {"hipblasCgemm3mStridedBatched_64", "", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3, UNSUPPORTED}}, {"cublasZgemmStridedBatched", {"hipblasZgemmStridedBatched_v2", "rocblas_zgemm_strided_batched", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3}}, - {"cublasZgemmStridedBatched_64", {"hipblasZgemmStridedBatched_v2_64", "rocblas_zgemm_strided_batched_64", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3, HIP_EXPERIMENTAL}}, + {"cublasZgemmStridedBatched_64", {"hipblasZgemmStridedBatched_v2_64", "rocblas_zgemm_strided_batched_64", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3}}, {"cublasHgemmStridedBatched", {"hipblasHgemmStridedBatched", "rocblas_hgemm_strided_batched", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3}}, - {"cublasHgemmStridedBatched_64", {"hipblasHgemmStridedBatched_64", "rocblas_hgemm_strided_batched_64", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3, HIP_EXPERIMENTAL}}, + {"cublasHgemmStridedBatched_64", {"hipblasHgemmStridedBatched_64", "rocblas_hgemm_strided_batched_64", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3}}, {"cublasGemmGroupedBatchedEx", {"hipblasGemmGroupedBatchedEx", "", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3, UNSUPPORTED}}, {"cublasGemmGroupedBatchedEx_64", {"hipblasGemmGroupedBatchedEx_64", "", CONV_LIB_FUNC, API_BLAS, SEC::BLAS_LEVEL_3, UNSUPPORTED}}, @@ -2023,68 +2023,68 @@ const std::map HIP_BLAS_FUNCTION_VER_MAP { {"hipblasNrm2Ex_v2_64", {HIP_6020, HIP_0, HIP_0, }}, {"hipblasRotEx_v2_64", {HIP_6020, HIP_0, HIP_0, }}, {"hipblasScalEx_v2_64", {HIP_6020, HIP_0, HIP_0, }}, - {"hipblasHgemm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasSgemm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasDgemm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasCgemm_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasZgemm_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasHgemmBatched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasSgemmBatched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasDgemmBatched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasCgemmBatched_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasZgemmBatched_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasHgemmStridedBatched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasSgemmStridedBatched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasDgemmStridedBatched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasCgemmStridedBatched_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasZgemmStridedBatched_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasCherk_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasZherk_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasCherkx_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasZherkx_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasCher2k_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasZher2k_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasSsymm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasDsymm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasCsymm_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasZsymm_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasSsyrk_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasDsyrk_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasCsyrk_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasZsyrk_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasSsyr2k_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasDsyr2k_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasCsyr2k_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasZsyr2k_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasSsyrkx_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasDsyrkx_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasCsyrkx_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasZsyrkx_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasSgeam_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasDgeam_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasCgeam_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasZgeam_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasChemm_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasZhemm_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasStrmm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasDtrmm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasCtrmm_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasZtrmm_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasStrsm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasDtrsm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasCtrsm_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasZtrsm_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasStrsmBatched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasDtrsmBatched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasCtrsmBatched_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasZtrsmBatched_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasSdgmm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasDdgmm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasCdgmm_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasZdgmm_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasGemmEx_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasGemmBatchedEx_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipblasGemmStridedBatchedEx_v2_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, + {"hipblasHgemm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasSgemm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasDgemm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasCgemm_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasZgemm_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasHgemmBatched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasSgemmBatched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasDgemmBatched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasCgemmBatched_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasZgemmBatched_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasHgemmStridedBatched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasSgemmStridedBatched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasDgemmStridedBatched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasCgemmStridedBatched_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasZgemmStridedBatched_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasCherk_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasZherk_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasCherkx_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasZherkx_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasCher2k_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasZher2k_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasSsymm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasDsymm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasCsymm_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasZsymm_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasSsyrk_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasDsyrk_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasCsyrk_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasZsyrk_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasSsyr2k_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasDsyr2k_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasCsyr2k_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasZsyr2k_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasSsyrkx_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasDsyrkx_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasCsyrkx_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasZsyrkx_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasSgeam_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasDgeam_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasCgeam_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasZgeam_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasChemm_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasZhemm_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasStrmm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasDtrmm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasCtrmm_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasZtrmm_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasStrsm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasDtrsm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasCtrsm_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasZtrsm_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasStrsmBatched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasDtrsmBatched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasCtrsmBatched_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasZtrsmBatched_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasSdgmm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasDdgmm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasCdgmm_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasZdgmm_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasGemmEx_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasGemmBatchedEx_v2_64", {HIP_6030, HIP_0, HIP_0, }}, + {"hipblasGemmStridedBatchedEx_v2_64", {HIP_6030, HIP_0, HIP_0, }}, {"rocblas_status_to_string", {HIP_3050, HIP_0, HIP_0 }}, {"rocblas_sscal", {HIP_1050, HIP_0, HIP_0 }}, @@ -2473,60 +2473,60 @@ const std::map HIP_BLAS_FUNCTION_VER_MAP { {"rocblas_dtrsm_batched_64", {HIP_6020, HIP_0, HIP_0 }}, {"rocblas_ctrsm_batched_64", {HIP_6020, HIP_0, HIP_0 }}, {"rocblas_ztrsm_batched_64", {HIP_6020, HIP_0, HIP_0 }}, - {"rocblas_hgemm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_sgemm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_dgemm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_cgemm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_zgemm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_hgemm_batched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_sgemm_batched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_dgemm_batched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_cgemm_batched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_zgemm_batched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_hgemm_strided_batched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_sgemm_strided_batched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_dgemm_strided_batched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_cgemm_strided_batched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_zgemm_strided_batched_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_cherk_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_zherk_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_cherkx_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_zherkx_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_cher2k_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_zher2k_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_ssymm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_dsymm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_csymm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_zsymm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_ssyrk_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_dsyrk_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_csyrk_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_zsyrk_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_ssyr2k_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_dsyr2k_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_csyr2k_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_zsyr2k_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_ssyrkx_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_dsyrkx_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_csyrkx_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_zsyrkx_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_sgeam_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_dgeam_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_cgeam_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_zgeam_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_chemm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_zhemm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_strmm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_dtrmm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_ctrmm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_ztrmm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_sdgmm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_ddgmm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_cdgmm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_zdgmm_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_gemm_ex_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_gemm_batched_ex_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"rocblas_gemm_strided_batched_ex_64", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, + {"rocblas_hgemm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_sgemm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_dgemm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_cgemm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_zgemm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_hgemm_batched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_sgemm_batched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_dgemm_batched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_cgemm_batched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_zgemm_batched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_hgemm_strided_batched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_sgemm_strided_batched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_dgemm_strided_batched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_cgemm_strided_batched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_zgemm_strided_batched_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_cherk_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_zherk_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_cherkx_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_zherkx_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_cher2k_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_zher2k_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_ssymm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_dsymm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_csymm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_zsymm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_ssyrk_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_dsyrk_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_csyrk_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_zsyrk_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_ssyr2k_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_dsyr2k_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_csyr2k_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_zsyr2k_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_ssyrkx_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_dsyrkx_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_csyrkx_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_zsyrkx_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_sgeam_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_dgeam_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_cgeam_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_zgeam_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_chemm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_zhemm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_strmm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_dtrmm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_ctrmm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_ztrmm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_sdgmm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_ddgmm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_cdgmm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_zdgmm_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_gemm_ex_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_gemm_batched_ex_64", {HIP_6030, HIP_0, HIP_0, }}, + {"rocblas_gemm_strided_batched_ex_64", {HIP_6030, HIP_0, HIP_0, }}, }; const std::map HIP_BLAS_FUNCTION_CHANGED_VER_MAP { diff --git a/src/CUDA2HIP_DNN_API_types.cpp b/src/CUDA2HIP_DNN_API_types.cpp index 49fedd2d..218bbeab 100644 --- a/src/CUDA2HIP_DNN_API_types.cpp +++ b/src/CUDA2HIP_DNN_API_types.cpp @@ -70,6 +70,7 @@ const std::map CUDA_DNN_TYPE_NAME_MAP { {"CUDNN_STATUS_BAD_PARAM_DUPLICATED_ENTRIES", {"HIPDNN_STATUS_BAD_PARAM_DUPLICATED_ENTRIES", "", CONV_NUMERIC_LITERAL, API_DNN, 1, UNSUPPORTED}}, {"CUDNN_STATUS_BAD_PARAM_ATTRIBUTE_TYPE", {"HIPDNN_STATUS_BAD_PARAM_ATTRIBUTE_TYPE", "", CONV_NUMERIC_LITERAL, API_DNN, 1, UNSUPPORTED}}, {"CUDNN_STATUS_BAD_PARAM_CUDA_GRAPH_MISMATCH", {"HIPDNN_STATUS_BAD_PARAM_CUDA_GRAPH_MISMATCH", "", CONV_NUMERIC_LITERAL, API_DNN, 1, UNSUPPORTED}}, + {"CUDNN_STATUS_BAD_PARAM_DESCRIPTOR_TYPE", {"HIPDNN_STATUS_BAD_PARAM_DESCRIPTOR_TYPE", "", CONV_NUMERIC_LITERAL, API_DNN, 1, UNSUPPORTED}}, {"CUDNN_STATUS_NOT_SUPPORTED_GRAPH_PATTERN", {"HIPDNN_STATUS_NOT_SUPPORTED_GRAPH_PATTERN", "", CONV_NUMERIC_LITERAL, API_DNN, 1, UNSUPPORTED}}, {"CUDNN_STATUS_NOT_SUPPORTED_SHAPE", {"HIPDNN_STATUS_NOT_SUPPORTED_SHAPE", "", CONV_NUMERIC_LITERAL, API_DNN, 1, UNSUPPORTED}}, {"CUDNN_STATUS_NOT_SUPPORTED_DATA_TYPE", {"HIPDNN_STATUS_NOT_SUPPORTED_DATA_TYPE", "", CONV_NUMERIC_LITERAL, API_DNN, 1, UNSUPPORTED}}, @@ -534,6 +535,7 @@ const std::map CUDA_DNN_TYPE_NAME_MAP { {"CUDNN_ATTR_OPERATIONGRAPH_OPS", {"HIPDNN_ATTR_OPERATIONGRAPH_OPS", "MIOPEN_ATTR_OPERATIONGRAPH_OPS", CONV_NUMERIC_LITERAL, API_DNN, 1, HIP_UNSUPPORTED}}, // 801 {"CUDNN_ATTR_OPERATIONGRAPH_ENGINE_GLOBAL_COUNT", {"HIPDNN_ATTR_OPERATIONGRAPH_ENGINE_GLOBAL_COUNT", "MIOPEN_ATTR_OPERATIONGRAPH_ENGINE_GLOBAL_COUNT", CONV_NUMERIC_LITERAL, API_DNN, 1, HIP_UNSUPPORTED}}, // 802 {"CUDNN_ATTR_OPERATIONGRAPH_IS_DYNAMIC_SHAPE_ENABLED", {"HIPDNN_ATTR_OPERATIONGRAPH_IS_DYNAMIC_SHAPE_ENABLED", "", CONV_NUMERIC_LITERAL, API_DNN, 1, UNSUPPORTED}}, // 803 + {"CUDNN_ATTR_OPERATIONGRAPH_IS_SAME_TOPOLOGY", {"HIPDNN_ATTR_OPERATIONGRAPH_IS_SAME_TOPOLOGY", "", CONV_NUMERIC_LITERAL, API_DNN, 1, UNSUPPORTED}}, // 804 {"CUDNN_ATTR_TENSOR_BYTE_ALIGNMENT", {"HIPDNN_ATTR_TENSOR_BYTE_ALIGNMENT", "MIOPEN_ATTR_TENSOR_BYTE_ALIGNMENT", CONV_NUMERIC_LITERAL, API_DNN, 1, HIP_UNSUPPORTED}}, // 900 {"CUDNN_ATTR_TENSOR_DATA_TYPE", {"HIPDNN_ATTR_TENSOR_DATA_TYPE", "MIOPEN_ATTR_TENSOR_DATA_TYPE", CONV_NUMERIC_LITERAL, API_DNN, 1, HIP_UNSUPPORTED}}, // 901 {"CUDNN_ATTR_TENSOR_DIMENSIONS", {"HIPDNN_ATTR_TENSOR_DIMENSIONS", "MIOPEN_ATTR_TENSOR_DIMENSIONS", CONV_NUMERIC_LITERAL, API_DNN, 1, HIP_UNSUPPORTED}}, // 902 @@ -1799,6 +1801,8 @@ const std::map CUDA_DNN_TYPE_NAME_VER_MAP { {"CUDNN_ATTR_KERNEL_CACHE_OPERATION_GRAPH", {CUDNN_950, CUDA_0, CUDA_0 }}, {"CUDNN_BEHAVIOR_NOTE_SUPPORTS_CUDA_GRAPH_NATIVE_API", {CUDNN_950, CUDA_0, CUDA_0 }}, {"CUDNN_ATTR_KERNEL_CACHE_OPERATION_GRAPH", {CUDNN_950, CUDA_0, CUDA_0 }}, + {"CUDNN_STATUS_BAD_PARAM_DESCRIPTOR_TYPE", {CUDNN_960, CUDA_0, CUDA_0 }}, + {"CUDNN_ATTR_OPERATIONGRAPH_IS_SAME_TOPOLOGY", {CUDNN_960, CUDA_0, CUDA_0 }}, }; const std::map HIP_DNN_TYPE_NAME_VER_MAP { diff --git a/src/CUDA2HIP_Device_functions.cpp b/src/CUDA2HIP_Device_functions.cpp index 469d1e60..84090a9b 100644 --- a/src/CUDA2HIP_Device_functions.cpp +++ b/src/CUDA2HIP_Device_functions.cpp @@ -714,16 +714,16 @@ const std::map CUDA_DEVICE_FUNCTION_MAP { {"__half2char_rz", {"__half2char_rz", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, {"__half2uchar_rz", {"__half2uchar_rz", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, // bfp16 functions - {"__double2bfloat16", {"__double2bfloat16", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, - {"__float2bfloat16", {"__float2bfloat16", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, + {"__double2bfloat16", {"__double2bfloat16", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, + {"__float2bfloat16", {"__float2bfloat16", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, {"__float2bfloat16_rn", {"__float2bfloat16_rn", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, {"__float2bfloat16_rz", {"__float2bfloat16_rz", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, {"__float2bfloat16_rd", {"__float2bfloat16_rd", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, {"__float2bfloat16_ru", {"__float2bfloat16_ru", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, - {"__bfloat162float", {"__bfloat162float", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, + {"__bfloat162float", {"__bfloat162float", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, {"__float2bfloat162_rn", {"__float2bfloat162_rn", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, {"__floats2bfloat162_rn", {"__floats2bfloat162_rn", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, - {"__bfloat1622float2", {"__bfloat1622float2", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, + {"__bfloat1622float2", {"__bfloat1622float2", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, {"__bfloat162int_rn", {"__bfloat162int_rn", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, {"__bfloat162int_rz", {"__bfloat162int_rz", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, {"__bfloat162int_rd", {"__bfloat162int_rd", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, @@ -772,10 +772,10 @@ const std::map CUDA_DEVICE_FUNCTION_MAP { {"__ll2bfloat16_rz", {"__ll2bfloat16_rz", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, {"__ll2bfloat16_rd", {"__ll2bfloat16_rd", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, {"__ll2bfloat16_ru", {"__ll2bfloat16_ru", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, - {"__bfloat162bfloat162", {"__bfloat162bfloat162", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, - {"__lows2bfloat162", {"__lows2bfloat162", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, - {"__highs2bfloat162", {"__highs2bfloat162", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, - {"__high2bfloat16", {"__high2bfloat16", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, + {"__bfloat162bfloat162", {"__bfloat162bfloat162", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, + {"__lows2bfloat162", {"__lows2bfloat162", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, + {"__highs2bfloat162", {"__highs2bfloat162", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, + {"__high2bfloat16", {"__high2bfloat16", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, {"__low2bfloat16", {"__low2bfloat16", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, {"__halves2bfloat162", {"__halves2bfloat162", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, {"__low2bfloat162", {"__low2bfloat162", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, @@ -819,16 +819,16 @@ const std::map CUDA_DEVICE_FUNCTION_MAP { {"__assert_fail", {"__assert_fail", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, {"__assertfail", {"__assertfail", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, // fp8 functions - {"__nv_cvt_double_to_fp8", {"__hip_cvt_double_to_fp8", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, - {"__nv_cvt_double2_to_fp8x2", {"__hip_cvt_double2_to_fp8x2", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, - {"__nv_cvt_float_to_fp8", {"__hip_cvt_float_to_fp8", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, - {"__nv_cvt_float2_to_fp8x2", {"__hip_cvt_float2_to_fp8x2", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, - {"__nv_cvt_halfraw_to_fp8", {"__hip_cvt_halfraw_to_fp8", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, - {"__nv_cvt_halfraw2_to_fp8x2", {"__hip_cvt_halfraw2_to_fp8x2", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, - {"__nv_cvt_bfloat16raw_to_fp8", {"__hip_cvt_bfloat16raw_to_fp8", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, - {"__nv_cvt_bfloat16raw2_to_fp8x2", {"__hip_cvt_bfloat16raw2_to_fp8x2", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, - {"__nv_cvt_fp8_to_halfraw", {"__hip_cvt_fp8_to_halfraw", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, - {"__nv_cvt_fp8x2_to_halfraw2", {"__hip_cvt_fp8x2_to_halfraw2", "", CONV_DEVICE_FUNC, API_RUNTIME, 1, UNSUPPORTED}}, + {"__nv_cvt_double_to_fp8", {"__hip_cvt_double_to_fp8", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, + {"__nv_cvt_double2_to_fp8x2", {"__hip_cvt_double2_to_fp8x2", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, + {"__nv_cvt_float_to_fp8", {"__hip_cvt_float_to_fp8", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, + {"__nv_cvt_float2_to_fp8x2", {"__hip_cvt_float2_to_fp8x2", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, + {"__nv_cvt_halfraw_to_fp8", {"__hip_cvt_halfraw_to_fp8", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, + {"__nv_cvt_halfraw2_to_fp8x2", {"__hip_cvt_halfraw2_to_fp8x2", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, + {"__nv_cvt_bfloat16raw_to_fp8", {"__hip_cvt_bfloat16raw_to_fp8", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, + {"__nv_cvt_bfloat16raw2_to_fp8x2", {"__hip_cvt_bfloat16raw2_to_fp8x2", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, + {"__nv_cvt_fp8_to_halfraw", {"__hip_cvt_fp8_to_halfraw", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, + {"__nv_cvt_fp8x2_to_halfraw2", {"__hip_cvt_fp8x2_to_halfraw2", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, // intrinsics {"__all_sync", {"__all_sync", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, {"__any_sync", {"__any_sync", "", CONV_DEVICE_FUNC, API_RUNTIME, 1}}, @@ -1498,6 +1498,24 @@ const std::map HIP_DEVICE_FUNCTION_VER_MAP { {"__shfl_up_sync", {HIP_6020, HIP_0, HIP_0 }}, {"__shfl_down_sync", {HIP_6020, HIP_0, HIP_0 }}, {"__shfl_xor_sync", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_cvt_double_to_fp8", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_cvt_double2_to_fp8x2", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_cvt_float_to_fp8", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_cvt_float2_to_fp8x2", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_cvt_halfraw_to_fp8", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_cvt_halfraw2_to_fp8x2", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_cvt_bfloat16raw_to_fp8", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_cvt_bfloat16raw2_to_fp8x2", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_cvt_fp8_to_halfraw", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_cvt_fp8x2_to_halfraw2", {HIP_6020, HIP_0, HIP_0 }}, + {"__double2bfloat16", {HIP_5070, HIP_0, HIP_0 }}, + {"__float2bfloat16", {HIP_5070, HIP_0, HIP_0 }}, + {"__bfloat162float", {HIP_5070, HIP_0, HIP_0 }}, + {"__bfloat1622float2", {HIP_5070, HIP_0, HIP_0 }}, + {"__bfloat162bfloat162", {HIP_5070, HIP_0, HIP_0 }}, + {"__lows2bfloat162", {HIP_5070, HIP_0, HIP_0 }}, + {"__highs2bfloat162", {HIP_5070, HIP_0, HIP_0 }}, + {"__high2bfloat16", {HIP_5070, HIP_0, HIP_0 }}, }; const std::map CUDA_DEVICE_FUNCTION_API_SECTION_MAP { diff --git a/src/CUDA2HIP_Device_types.cpp b/src/CUDA2HIP_Device_types.cpp index 480c10c0..27ebd93c 100644 --- a/src/CUDA2HIP_Device_types.cpp +++ b/src/CUDA2HIP_Device_types.cpp @@ -30,27 +30,28 @@ const std::map CUDA_DEVICE_TYPE_NAME_MAP { {"__half2", {"__half2", "", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, {"__half2_raw", {"__half2_raw", "", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, // Bfloat16 Precision Device types - {"__nv_bfloat16", {"hip_bfloat16", "rocblas_bfloat16", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, - {"__nv_bfloat16_raw", {"__hip_bfloat16_raw", "", CONV_DEVICE_TYPE, API_RUNTIME, 2, UNSUPPORTED}}, - {"__nv_bfloat162", {"__hip_bfloat162", "", CONV_DEVICE_TYPE, API_RUNTIME, 2, UNSUPPORTED}}, + {"__nv_bfloat16", {"__hip_bfloat16", "rocblas_bfloat16", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, + {"nv_bfloat16", {"hip_bfloat16", "", CONV_DEVICE_TYPE, API_RUNTIME, 2, UNSUPPORTED}}, + {"__nv_bfloat16_raw", {"__hip_bfloat16_raw", "", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, + {"__nv_bfloat162", {"__hip_bfloat162", "", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, {"nv_bfloat162", {"hip_bfloat162", "", CONV_DEVICE_TYPE, API_RUNTIME, 2, UNSUPPORTED}}, - {"__nv_bfloat162_raw", {"__hip_bfloat162_raw", "", CONV_DEVICE_TYPE, API_RUNTIME, 2, UNSUPPORTED}}, + {"__nv_bfloat162_raw", {"__hip_bfloat162_raw", "", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, // float8 Precision Device types - {"__nv_fp8_storage_t", {"__hip_fp8_storage_t", "", CONV_DEVICE_TYPE, API_RUNTIME, 2, UNSUPPORTED}}, - {"__nv_fp8x2_storage_t", {"__hip_fp8x2_storage_t", "", CONV_DEVICE_TYPE, API_RUNTIME, 2, UNSUPPORTED}}, - {"__nv_fp8x4_storage_t", {"__hip_fp8x4_storage_t", "", CONV_DEVICE_TYPE, API_RUNTIME, 2, UNSUPPORTED}}, - {"__nv_fp8_e5m2", {"__hip_fp8_e5m2", "", CONV_DEVICE_TYPE, API_RUNTIME, 2, UNSUPPORTED}}, - {"__nv_fp8x2_e5m2", {"__hip_fp8x2_e5m2", "", CONV_DEVICE_TYPE, API_RUNTIME, 2, UNSUPPORTED}}, - {"__nv_fp8_e4m3", {"__hip_fp8_e4m3", "", CONV_DEVICE_TYPE, API_RUNTIME, 2, UNSUPPORTED}}, - {"__nv_fp8x2_e4m3", {"__hip_fp8x2_e4m3", "", CONV_DEVICE_TYPE, API_RUNTIME, 2, UNSUPPORTED}}, - {"__nv_fp8x4_e4m3", {"__hip_fp8x4_e4m3", "", CONV_DEVICE_TYPE, API_RUNTIME, 2, UNSUPPORTED}}, - {"__nv_saturation_t", {"__hip_saturation_t", "", CONV_DEVICE_TYPE, API_RUNTIME, 2, UNSUPPORTED}}, - {"__NV_NOSAT", {"__HIP_NOSAT", "", CONV_NUMERIC_LITERAL, API_RUNTIME, 2, UNSUPPORTED}}, - {"__NV_SATFINITE", {"__HIP_SATFINITE", "", CONV_NUMERIC_LITERAL, API_RUNTIME, 2, UNSUPPORTED}}, - {"__nv_fp8_interpretation_t", {"__hip_fp8_interpretation_t", "", CONV_DEVICE_TYPE, API_RUNTIME, 2, UNSUPPORTED}}, - {"__NV_E4M3", {"__HIP_E4M3", "", CONV_NUMERIC_LITERAL, API_RUNTIME, 2, UNSUPPORTED}}, - {"__NV_E5M2", {"__HIP_E5M2", "", CONV_NUMERIC_LITERAL, API_RUNTIME, 2, UNSUPPORTED}}, - {"__nv_fp8x4_e5m2", {"__hip_fp8x4_e5m2", "", CONV_NUMERIC_LITERAL, API_RUNTIME, 2, UNSUPPORTED}}, + {"__nv_fp8_storage_t", {"__hip_fp8_storage_t", "", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, + {"__nv_fp8x2_storage_t", {"__hip_fp8x2_storage_t", "", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, + {"__nv_fp8x4_storage_t", {"__hip_fp8x4_storage_t", "", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, + {"__nv_fp8_e5m2", {"__hip_fp8_e5m2_fnuz", "", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, + {"__nv_fp8x2_e5m2", {"__hip_fp8x2_e5m2_fnuz", "", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, + {"__nv_fp8_e4m3", {"__hip_fp8_e4m3_fnuz", "", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, + {"__nv_fp8x2_e4m3", {"__hip_fp8x2_e4m3_fnuz", "", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, + {"__nv_fp8x4_e4m3", {"__hip_fp8x4_e4m3_fnuz", "", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, + {"__nv_saturation_t", {"__hip_saturation_t", "", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, + {"__NV_NOSAT", {"__HIP_NOSAT", "", CONV_NUMERIC_LITERAL, API_RUNTIME, 2}}, + {"__NV_SATFINITE", {"__HIP_SATFINITE", "", CONV_NUMERIC_LITERAL, API_RUNTIME, 2}}, + {"__nv_fp8_interpretation_t", {"__hip_fp8_interpretation_t", "", CONV_DEVICE_TYPE, API_RUNTIME, 2}}, + {"__NV_E4M3", {"__HIP_E4M3_FNUZ", "", CONV_NUMERIC_LITERAL, API_RUNTIME, 2}}, + {"__NV_E5M2", {"__HIP_E5M2_FNUZ", "", CONV_NUMERIC_LITERAL, API_RUNTIME, 2}}, + {"__nv_fp8x4_e5m2", {"__hip_fp8x4_e5m2_fnuz", "", CONV_NUMERIC_LITERAL, API_RUNTIME, 2}}, }; const std::map CUDA_DEVICE_TYPE_NAME_VER_MAP { @@ -82,7 +83,25 @@ const std::map HIP_DEVICE_TYPE_NAME_VER_MAP { {"__half2", {HIP_1060, HIP_0, HIP_0 }}, {"__half_raw", {HIP_1090, HIP_0, HIP_0 }}, {"__half2_raw", {HIP_1090, HIP_0, HIP_0 }}, - {"hip_bfloat16", {HIP_3050, HIP_0, HIP_0 }}, + {"__hip_bfloat16", {HIP_5070, HIP_0, HIP_0 }}, + {"__hip_fp8_e4m3_fnuz", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_fp8_storage_t", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_fp8x2_storage_t", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_fp8x4_storage_t", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_fp8_e5m2_fnuz", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_fp8x2_e5m2_fnuz", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_fp8x2_e4m3_fnuz", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_fp8x4_e4m3_fnuz", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_saturation_t", {HIP_6020, HIP_0, HIP_0 }}, + {"__HIP_NOSAT", {HIP_6020, HIP_0, HIP_0 }}, + {"__HIP_SATFINITE", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_fp8_interpretation_t", {HIP_6020, HIP_0, HIP_0 }}, + {"__HIP_E4M3_FNUZ", {HIP_6020, HIP_0, HIP_0 }}, + {"__HIP_E5M2_FNUZ", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_fp8x4_e5m2_fnuz", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_bfloat16_raw", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_bfloat162_raw", {HIP_6020, HIP_0, HIP_0 }}, + {"__hip_bfloat162", {HIP_5070, HIP_0, HIP_0 }}, {"rocblas_half", {HIP_1050, HIP_0, HIP_0 }}, {"rocblas_bfloat16", {HIP_3050, HIP_0, HIP_0 }}, diff --git a/src/CUDA2HIP_Doc.cpp b/src/CUDA2HIP_Doc.cpp index 59f952c5..0017d1c5 100644 --- a/src/CUDA2HIP_Doc.cpp +++ b/src/CUDA2HIP_Doc.cpp @@ -135,6 +135,11 @@ namespace doc { const string sCUB_csv = sCUB + csv_ext; const string sCUCUB = "CUB"; + const string sTENSOR = "CUTENSOR_API_supported_by_HIP"; + const string sTENSOR_md = sTENSOR + md_ext; + const string sTENSOR_csv = sTENSOR + csv_ext; + const string sCUTENSOR = "CUTENSOR"; + const string sAPI_supported_by = "API supported by "; const string sCUDA = "CUDA"; const string sHIP = "HIP"; @@ -855,6 +860,29 @@ namespace doc { } }; + class TENSOR : public DOC { + public: + TENSOR(const string &outDir): DOC(outDir) {} + virtual ~TENSOR() {} + protected: + const sectionMap &getSections() const override { return CUDA_TENSOR_API_SECTION_MAP; } + const functionMap &getFunctions() const override { return CUDA_TENSOR_FUNCTION_MAP; } + const typeMap &getTypes() const override { return CUDA_TENSOR_TYPE_NAME_MAP; } + const versionMap &getFunctionVersions() const override { return CUDA_TENSOR_FUNCTION_VER_MAP; } + const hipVersionMap &getHipFunctionVersions() const override { return HIP_TENSOR_FUNCTION_VER_MAP; } + const versionMap &getTypeVersions() const override { return CUDA_TENSOR_TYPE_NAME_VER_MAP; } + const hipVersionMap &getHipTypeVersions() const override { return HIP_TENSOR_TYPE_NAME_VER_MAP; } + const string &getName() const override { return sCUTENSOR; } + const string &getFileName(docType format) const override { + switch (format) { + case none: + default: return sEmpty; + case md: return sTENSOR_md; + case csv: return sTENSOR_csv; + } + } + }; + bool generate(bool GenerateMD, bool GenerateCSV) { if (!GenerateMD && !GenerateCSV) return true; error_code EC; @@ -921,6 +949,8 @@ namespace doc { docs.addDoc(&rtc); CUB cub(sOut); docs.addDoc(&cub); + TENSOR tensor(sOut); + docs.addDoc(&tensor); return docs.generate(); } diff --git a/src/CUDA2HIP_Driver_API_functions.cpp b/src/CUDA2HIP_Driver_API_functions.cpp index 3c5d4e16..1d4b9819 100644 --- a/src/CUDA2HIP_Driver_API_functions.cpp +++ b/src/CUDA2HIP_Driver_API_functions.cpp @@ -556,8 +556,8 @@ const std::map CUDA_DRIVER_FUNCTION_MAP { // 21. Stream Memory Operations // no analogues - {"cuStreamBatchMemOp", {"hipStreamBatchMemOp", "", CONV_STREAM_MEMORY, API_DRIVER, SEC::STREAM_MEMORY, HIP_UNSUPPORTED}}, - {"cuStreamBatchMemOp_v2", {"hipStreamBatchMemOp", "", CONV_STREAM_MEMORY, API_DRIVER, SEC::STREAM_MEMORY, HIP_UNSUPPORTED}}, + {"cuStreamBatchMemOp", {"hipStreamBatchMemOp", "", CONV_STREAM_MEMORY, API_DRIVER, SEC::STREAM_MEMORY, HIP_EXPERIMENTAL}}, + {"cuStreamBatchMemOp_v2", {"hipStreamBatchMemOp", "", CONV_STREAM_MEMORY, API_DRIVER, SEC::STREAM_MEMORY, HIP_EXPERIMENTAL}}, // CUresult CUDAAPI cuStreamWriteValue32(CUstream stream, CUdeviceptr addr, cuuint32_t value, unsigned int flags); // hipError_t hipStreamWaitValue32(hipStream_t stream, void* ptr, int32_t value, unsigned int flags, uint32_t mask __dparm(0xFFFFFFFF)); {"cuStreamWaitValue32", {"hipStreamWaitValue32", "", CONV_STREAM_MEMORY, API_DRIVER, SEC::STREAM_MEMORY}}, @@ -710,9 +710,9 @@ const std::map CUDA_DRIVER_FUNCTION_MAP { // cudaGraphLaunch {"cuGraphLaunch", {"hipGraphLaunch", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, // NOTE: cudaGraphMemcpyNodeGetParams has a different signature - {"cuGraphMemcpyNodeGetParams", {"hipDrvGraphMemcpyNodeGetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH, HIP_EXPERIMENTAL}}, + {"cuGraphMemcpyNodeGetParams", {"hipDrvGraphMemcpyNodeGetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, // NOTE: cudaGraphMemcpyNodeSetParams has a different signature - {"cuGraphMemcpyNodeSetParams", {"hipDrvGraphMemcpyNodeSetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH, HIP_EXPERIMENTAL}}, + {"cuGraphMemcpyNodeSetParams", {"hipDrvGraphMemcpyNodeSetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, // cudaGraphMemsetNodeGetParams {"cuGraphMemsetNodeGetParams", {"hipGraphMemsetNodeGetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, // cudaGraphMemsetNodeSetParams @@ -738,9 +738,9 @@ const std::map CUDA_DRIVER_FUNCTION_MAP { // cudaGraphRemoveDependencies_v2 {"cuGraphRemoveDependencies_v2", {"hipGraphRemoveDependencies_v2", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH, HIP_UNSUPPORTED}}, // no analogue - {"cuGraphExecMemcpyNodeSetParams", {"hipDrvGraphExecMemcpyNodeSetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH, HIP_EXPERIMENTAL}}, + {"cuGraphExecMemcpyNodeSetParams", {"hipDrvGraphExecMemcpyNodeSetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, // no analogue - {"cuGraphExecMemsetNodeSetParams", {"hipDrvGraphExecMemsetNodeSetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH, HIP_EXPERIMENTAL}}, + {"cuGraphExecMemsetNodeSetParams", {"hipDrvGraphExecMemsetNodeSetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, // cudaGraphExecHostNodeSetParams {"cuGraphExecHostNodeSetParams", {"hipGraphExecHostNodeSetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, // TODO: take into account the new signature since 12.0 @@ -797,7 +797,7 @@ const std::map CUDA_DRIVER_FUNCTION_MAP { // cudaGraphMemAllocNodeGetParams {"cuGraphMemAllocNodeGetParams", {"hipGraphMemAllocNodeGetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, // no analogue - {"cuGraphAddMemFreeNode", {"hipDrvGraphAddMemFreeNode", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH, HIP_EXPERIMENTAL}}, + {"cuGraphAddMemFreeNode", {"hipDrvGraphAddMemFreeNode", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, // cudaGraphMemFreeNodeGetParams {"cuGraphMemFreeNodeGetParams", {"hipGraphMemFreeNodeGetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, // cudaDeviceGraphMemTrim @@ -808,26 +808,26 @@ const std::map CUDA_DRIVER_FUNCTION_MAP { {"cuDeviceSetGraphMemAttribute", {"hipDeviceSetGraphMemAttribute", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, // cudaGraphInstantiateWithFlags {"cuGraphInstantiateWithFlags", {"hipGraphInstantiateWithFlags", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, - // - {"cuGraphAddBatchMemOpNode", {"hipGraphAddBatchMemOpNode", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, - // - {"cuGraphBatchMemOpNodeGetParams", {"hipGraphBatchMemOpNodeGetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, - // - {"cuGraphBatchMemOpNodeSetParams", {"hipGraphBatchMemOpNodeSetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, - // - {"cuGraphExecBatchMemOpNodeSetParams", {"hipGraphExecBatchMemOpNodeSetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, + // no analogue yet + {"cuGraphAddBatchMemOpNode", {"hipGraphAddBatchMemOpNode", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH, HIP_EXPERIMENTAL}}, + // no analogue yet + {"cuGraphBatchMemOpNodeGetParams", {"hipGraphBatchMemOpNodeGetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH, HIP_EXPERIMENTAL}}, + // no analogue yet + {"cuGraphBatchMemOpNodeSetParams", {"hipGraphBatchMemOpNodeSetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH, HIP_EXPERIMENTAL}}, + // no analogue yet + {"cuGraphExecBatchMemOpNodeSetParams", {"hipGraphExecBatchMemOpNodeSetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH, HIP_EXPERIMENTAL}}, // cudaGraphInstantiateWithParams {"cuGraphInstantiateWithParams", {"hipGraphInstantiateWithParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, // cudaGraphExecGetFlags - {"cuGraphExecGetFlags", {"hipGraphExecGetFlags", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH, HIP_EXPERIMENTAL}}, + {"cuGraphExecGetFlags", {"hipGraphExecGetFlags", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, // cudaGraphAddNode {"cuGraphAddNode", {"hipGraphAddNode", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, // cudaGraphAddNode_v2 {"cuGraphAddNode_v2", {"hipGraphAddNode_v2", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH, HIP_UNSUPPORTED}}, // cudaGraphNodeSetParams - {"cuGraphNodeSetParams", {"hipGraphNodeSetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH, HIP_EXPERIMENTAL}}, + {"cuGraphNodeSetParams", {"hipGraphNodeSetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, // cudaGraphExecNodeSetParams - {"cuGraphExecNodeSetParams", {"hipGraphExecNodeSetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH, HIP_EXPERIMENTAL}}, + {"cuGraphExecNodeSetParams", {"hipGraphExecNodeSetParams", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH}}, // cudaGraphConditionalHandleCreate {"cuGraphConditionalHandleCreate", {"hipGraphConditionalHandleCreate", "", CONV_GRAPH, API_DRIVER, SEC::GRAPH, HIP_UNSUPPORTED}}, @@ -1660,11 +1660,16 @@ const std::map HIP_DRIVER_FUNCTION_VER_MAP { {"hipMemcpyAtoA", {HIP_6020, HIP_0, HIP_0, }}, {"hipMemcpyAtoHAsync", {HIP_6020, HIP_0, HIP_0, }}, {"hipMemcpyHtoAAsync", {HIP_6020, HIP_0, HIP_0, }}, - {"hipDrvGraphAddMemFreeNode", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipDrvGraphMemcpyNodeGetParams", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipDrvGraphMemcpyNodeSetParams", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipDrvGraphExecMemcpyNodeSetParams", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipDrvGraphExecMemsetNodeSetParams", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, + {"hipDrvGraphAddMemFreeNode", {HIP_6030, HIP_0, HIP_0, }}, + {"hipDrvGraphMemcpyNodeGetParams", {HIP_6030, HIP_0, HIP_0, }}, + {"hipDrvGraphMemcpyNodeSetParams", {HIP_6030, HIP_0, HIP_0, }}, + {"hipDrvGraphExecMemcpyNodeSetParams", {HIP_6030, HIP_0, HIP_0, }}, + {"hipDrvGraphExecMemsetNodeSetParams", {HIP_6030, HIP_0, HIP_0, }}, + {"hipStreamBatchMemOp", {HIP_6040, HIP_0, HIP_0, HIP_LATEST}}, + {"hipGraphAddBatchMemOpNode", {HIP_6040, HIP_0, HIP_0, HIP_LATEST}}, + {"hipGraphBatchMemOpNodeGetParams", {HIP_6040, HIP_0, HIP_0, HIP_LATEST}}, + {"hipGraphBatchMemOpNodeSetParams", {HIP_6040, HIP_0, HIP_0, HIP_LATEST}}, + {"hipGraphExecBatchMemOpNodeSetParams", {HIP_6040, HIP_0, HIP_0, HIP_LATEST}}, }; const std::map CUDA_DRIVER_FUNCTION_CHANGED_VER_MAP { diff --git a/src/CUDA2HIP_Driver_API_types.cpp b/src/CUDA2HIP_Driver_API_types.cpp index ac0f0dde..1d77e091 100644 --- a/src/CUDA2HIP_Driver_API_types.cpp +++ b/src/CUDA2HIP_Driver_API_types.cpp @@ -357,12 +357,12 @@ const std::map CUDA_DRIVER_TYPE_NAME_MAP { {"memoryBarrier", {"hipMemoryBarrier", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_UNSUPPORTED}}, // no analogue - {"CUDA_BATCH_MEM_OP_NODE_PARAMS_st", {"HIP_BATCH_MEM_OP_NODE_PARAMS", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_UNSUPPORTED | CUDA_REMOVED}}, - {"CUDA_BATCH_MEM_OP_NODE_PARAMS_v1_st", {"HIP_BATCH_MEM_OP_NODE_PARAMS", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_UNSUPPORTED}}, - {"CUDA_BATCH_MEM_OP_NODE_PARAMS_v2_st", {"HIP_BATCH_MEM_OP_NODE_PARAMS_v2", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_UNSUPPORTED}}, - {"CUDA_BATCH_MEM_OP_NODE_PARAMS", {"HIP_BATCH_MEM_OP_NODE_PARAMS", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_UNSUPPORTED}}, - {"CUDA_BATCH_MEM_OP_NODE_PARAMS_v1", {"HIP_BATCH_MEM_OP_NODE_PARAMS", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_UNSUPPORTED}}, - {"CUDA_BATCH_MEM_OP_NODE_PARAMS_v2", {"HIP_BATCH_MEM_OP_NODE_PARAMS_v2", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_UNSUPPORTED}}, + {"CUDA_BATCH_MEM_OP_NODE_PARAMS_st", {"hipBatchMemOpNodeParams", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_EXPERIMENTAL | CUDA_REMOVED}}, + {"CUDA_BATCH_MEM_OP_NODE_PARAMS_v1_st", {"hipBatchMemOpNodeParams", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_EXPERIMENTAL}}, + {"CUDA_BATCH_MEM_OP_NODE_PARAMS_v2_st", {"hipBatchMemOpNodeParams", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_EXPERIMENTAL}}, + {"CUDA_BATCH_MEM_OP_NODE_PARAMS", {"hipBatchMemOpNodeParams", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_EXPERIMENTAL}}, + {"CUDA_BATCH_MEM_OP_NODE_PARAMS_v1", {"hipBatchMemOpNodeParams", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_EXPERIMENTAL}}, + {"CUDA_BATCH_MEM_OP_NODE_PARAMS_v2", {"hipBatchMemOpNodeParams", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_EXPERIMENTAL}}, // cudaLaunchAttribute_st {"CUlaunchAttribute_st", {"hipLaunchAttribute", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_UNSUPPORTED}}, @@ -475,9 +475,9 @@ const std::map CUDA_DRIVER_TYPE_NAME_MAP { // 2. Unions - {"CUstreamBatchMemOpParams", {"hipStreamBatchMemOpParams", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_UNSUPPORTED}}, - {"CUstreamBatchMemOpParams_v1", {"hipStreamBatchMemOpParams", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_UNSUPPORTED}}, - {"CUstreamBatchMemOpParams_union", {"hipStreamBatchMemOpParams", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_UNSUPPORTED}}, + {"CUstreamBatchMemOpParams", {"hipStreamBatchMemOpParams", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_EXPERIMENTAL}}, + {"CUstreamBatchMemOpParams_v1", {"hipStreamBatchMemOpParams", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_EXPERIMENTAL}}, + {"CUstreamBatchMemOpParams_union", {"hipStreamBatchMemOpParams_union", "", CONV_TYPE, API_DRIVER, SEC::DATA_TYPES, HIP_EXPERIMENTAL}}, // cudaKernelNodeAttrValue // NOTE: Starting from CUDA 11.8 CUlaunchAttributeValue is used instead of CUkernelNodeAttrValue: @@ -4304,4 +4304,7 @@ const std::map HIP_DRIVER_TYPE_NAME_VER_MAP { {"HIP_GET_PROC_ADDRESS_VERSION_NOT_SUFFICIENT", {HIP_6020, HIP_0, HIP_0, }}, {"HIP_MEMSET_NODE_PARAMS", {HIP_6010, HIP_0, HIP_0 }}, {"hipStreamLegacy", {HIP_6020, HIP_0, HIP_0, }}, + {"hipStreamBatchMemOpParams_union", {HIP_6040, HIP_0, HIP_0, HIP_LATEST}}, + {"hipStreamBatchMemOpParams", {HIP_6040, HIP_0, HIP_0, HIP_LATEST}}, + {"hipBatchMemOpNodeParams", {HIP_6040, HIP_0, HIP_0, HIP_LATEST}}, }; diff --git a/src/CUDA2HIP_Perl.cpp b/src/CUDA2HIP_Perl.cpp index 2c441943..a143f09c 100644 --- a/src/CUDA2HIP_Perl.cpp +++ b/src/CUDA2HIP_Perl.cpp @@ -96,12 +96,14 @@ namespace perl { const string sWarnExperimentalFunctions = "warnExperimentalFunctions"; const string sWarnDeprecatedFunctions = "warnDeprecatedFunctions"; const string sWarnRemovedFunctions = "warnRemovedFunctions"; - const string sWarnUnsupportedFunctions = "warnUnsupportedFunctions"; const string sWarnRocOnlyUnsupportedFunctions = "warnRocOnlyUnsupportedFunctions"; + const string sWarnMIOpenOnlyUnsupportedFunctions = "warnMIOpenOnlyUnsupportedFunctions"; const string sWarnHipOnlyUnsupportedFunctions = "warnHipOnlyUnsupportedFunctions"; + const string sWarnHipDNNOnlyUnsupportedFunctions = "warnHipDNNOnlyUnsupportedFunctions"; const string sWarnUnsupportedDeviceFunctions = "warnUnsupportedDeviceFunctions"; const string sSimpleSubstitutions = "simpleSubstitutions"; const string sRocSubstitutions = "rocSubstitutions"; + const string sMIOpenSubstitutions = "MIOpenSubstitutions"; const string sSubst = "subst"; const string sExperimentalSubstitutions = "experimentalSubstitutions"; const string sTransformKernelLaunch = "transformKernelLaunch"; @@ -183,6 +185,7 @@ namespace perl { *streamPtr.get() << " -help - Display available options" << endl; *streamPtr.get() << " -hip-kernel-execution-syntax - Transform CUDA kernel launch syntax to a regular HIP function call (overrides \"--cuda-kernel-execution-syntax\")" << endl; *streamPtr.get() << " -inplace - Backup the input file in .prehip file, modify the input file inplace" << endl; + *streamPtr.get() << " -miopen - Translate cuDNN to MIOpen instead of hipDNN where it is possible" << endl; *streamPtr.get() << " -no-output - Don't write any translated output to stdout" << endl; *streamPtr.get() << " -o=s - Output filename" << endl; *streamPtr.get() << " -print-stats - Print translation statistics" << endl; @@ -219,6 +222,7 @@ namespace perl { *streamPtr.get() << tab << ", \"hip-kernel-execution-syntax\" => \\$hip_kernel_execution_syntax # Transform CUDA kernel launch syntax to a regular HIP function call (overrides \"--cuda-kernel-execution-syntax\")" << endl; *streamPtr.get() << tab << ", \"inplace\" => \\$inplace # Backup the input file in .prehip file, modify the input file inplace" << endl; *streamPtr.get() << tab << ", \"no-output\" => \\$no_output # Don't write any translated output to stdout" << endl; + *streamPtr.get() << tab << ", \"miopen\" => \\$miopen # Translate cuDNN to MIOpen instead of hipDNN where it is possible" << endl; *streamPtr.get() << tab << ", \"o=s\" => \\$hipFileName # Output filename" << endl; *streamPtr.get() << tab << ", \"print-stats\" => \\$print_stats # Print translation statistics" << endl; *streamPtr.get() << tab << ", \"quiet-warnings\" => \\$quiet_warnings # Don't print warnings on unknown CUDA identifiers" << endl; @@ -368,15 +372,22 @@ namespace perl { *streamPtr.get() << "}" << endl; } - void generateRocSubstitutions(unique_ptr &streamPtr) { - *streamPtr.get() << endl << sub << sRocSubstitutions << " {" << endl; + void generateRocSubstitutions(unique_ptr &streamPtr, bool bMIOpenOnly = false) { + *streamPtr.get() << endl << sub << (bMIOpenOnly ? sMIOpenSubstitutions : sRocSubstitutions) << " {" << endl; bool bTranslateToRoc = TranslateToRoc; - TranslateToRoc = true; + bool bTranslateToMIOpen = TranslateToMIOpen; + if (bMIOpenOnly) TranslateToMIOpen = true; + else TranslateToRoc = true; for (int i = 0; i < NUM_CONV_TYPES; ++i) { if (i == CONV_INCLUDE_CUDA_MAIN_H || i == CONV_INCLUDE_CUDA_MAIN_V2_H || i == CONV_INCLUDE) { for (auto &ma : CUDA_INCLUDE_MAP) { if (i == ma.second.type) { - if (!Statistics::isToRoc(ma.second)) continue; + if (bMIOpenOnly) { + if (!Statistics::isToMIOpen(ma.second)) continue; + } + else { + if (!Statistics::isToRoc(ma.second)) continue; + } string sROC = ma.second.rocName.str(); if (sROC.empty()) continue; string sCUDA = ma.first.str(); @@ -387,7 +398,8 @@ namespace perl { } } else { for (auto &ma : CUDA_RENAMES_MAP()) { - if (!Statistics::isToRoc(ma.second) || Statistics::isUnsupported(ma.second) || ma.second.rocName.empty()) continue; + if ((bMIOpenOnly && !Statistics::isToMIOpen(ma.second)) || Statistics::isUnsupported(ma.second) || ma.second.rocName.empty()) continue; + if ((!bMIOpenOnly && Statistics::isToRoc(ma.second) && ma.second.apiType == API_DNN) || Statistics::isUnsupported(ma.second) || ma.second.rocName.empty()) continue; if (i == ma.second.type) { *streamPtr.get() << tab << "subst(\"" << ma.first.str() << "\", \"" << ma.second.rocName.str() << "\", \"" << counterNames[ma.second.type] << "\");" << endl; } @@ -395,6 +407,7 @@ namespace perl { } } TranslateToRoc = bTranslateToRoc; + TranslateToMIOpen = bTranslateToMIOpen; *streamPtr.get() << "}" << endl; } @@ -582,42 +595,58 @@ namespace perl { } void generateDeprecatedAndUnsupportedFunctions(unique_ptr &streamPtr) { - stringstream sDeprecated, sRemoved, sUnsupported, sRocUnsupported, sHipUnsupported, sExperimental, sCommon, sCommon1; + stringstream sDeprecated, sRemoved, sRocUnsupported, sHipUnsupported, sMIOpenUnsupported, sHipDNNUnsupported, sExperimental, sCommon, sCommon1; sCommon << tab << my << "$line_num = shift;" << endl; sCommon << tab << my_k << endl; string sWhile = "while (my($func, $val) = each "; sExperimental << endl << sub << sWarnExperimentalFunctions << " {" << endl << sCommon.str() << tab << sWhile << "%experimental_funcs)" << endl; sDeprecated << endl << sub << sWarnDeprecatedFunctions << " {" << endl << sCommon.str() << tab << sWhile << "%deprecated_funcs)" << endl; sRemoved << endl << sub << sWarnRemovedFunctions << " {" << endl << sCommon.str() << tab << sWhile << "%removed_funcs)" << endl; - sUnsupported << endl << sub << sWarnUnsupportedFunctions << " {" << endl << sCommon.str() << tab << foreach_func; sRocUnsupported << endl << sub << sWarnRocOnlyUnsupportedFunctions << " {" << endl << sCommon.str() << tab << foreach_func; + sMIOpenUnsupported << endl << sub << sWarnMIOpenOnlyUnsupportedFunctions << " {" << endl << sCommon.str() << tab << foreach_func; sHipUnsupported << endl << sub << sWarnHipOnlyUnsupportedFunctions << " {" << endl << sCommon.str() << tab << foreach_func; - unsigned int countUnsupported = 0, countRocOnlyUnsupported = 0, countHipOnlyUnsupported = 0; + sHipDNNUnsupported << endl << sub << sWarnHipDNNOnlyUnsupportedFunctions << " {" << endl << sCommon.str() << tab << foreach_func; + unsigned countRocOnlyUnsupported = 0, countHipOnlyUnsupported = 0, countMIOpenOnlyUnsupported = 0, countHipDNNOnlyUnsupported = 0; bool bTranslateToRoc = TranslateToRoc; + bool bTranslateToMIOpen = TranslateToMIOpen; for (auto ma = CUDA_RENAMES_MAP().rbegin(); ma != CUDA_RENAMES_MAP().rend(); ++ma) { TranslateToRoc = false; if (Statistics::isUnsupported(ma->second)) { - if (ma->second.apiType == API_BLAS || ma->second.apiType == API_SPARSE || ma->second.apiType == API_RAND || ma->second.apiType == API_DNN) { + if (ma->second.apiType == API_BLAS || ma->second.apiType == API_SPARSE || ma->second.apiType == API_RAND || ma->second.apiType == API_TENSOR) { sHipUnsupported << (countHipOnlyUnsupported ? ",\n" : "") << tab_2 << "\"" << ma->first.str() << "\""; countHipOnlyUnsupported++; - } else { - sUnsupported << (countUnsupported ? ",\n" : "") << tab_2 << "\"" << ma->first.str() << "\""; - countUnsupported++; } } TranslateToRoc = true; if (Statistics::isUnsupported(ma->second)) { - if (ma->second.apiType == API_BLAS || ma->second.apiType == API_SPARSE || ma->second.apiType == API_RAND || ma->second.apiType == API_DNN) { + if (ma->second.apiType == API_BLAS || ma->second.apiType == API_SPARSE || ma->second.apiType == API_RAND || ma->second.apiType == API_TENSOR) { sRocUnsupported << (countRocOnlyUnsupported ? ",\n" : "") << tab_2 << "\"" << ma->first.str() << "\""; countRocOnlyUnsupported++; } } + TranslateToRoc = false; + TranslateToMIOpen = true; + if (Statistics::isUnsupported(ma->second)) { + if (ma->second.apiType == API_DNN) { + sMIOpenUnsupported << (countMIOpenOnlyUnsupported ? ",\n" : "") << tab_2 << "\"" << ma->first.str() << "\""; + countMIOpenOnlyUnsupported++; + } + } + TranslateToMIOpen = false; + if (Statistics::isUnsupported(ma->second)) { + if (ma->second.apiType == API_DNN) { + sHipDNNUnsupported << (countHipDNNOnlyUnsupported ? ",\n" : "") << tab_2 << "\"" << ma->first.str() << "\""; + countHipDNNOnlyUnsupported++; + } + } } TranslateToRoc = bTranslateToRoc; + TranslateToMIOpen = bTranslateToMIOpen; sCommon.str(std::string()); - sUnsupported << endl_tab << ")" << endl; sHipUnsupported << endl_tab << ")" << endl; sRocUnsupported << endl_tab << ")" << endl; + sMIOpenUnsupported << endl_tab << ")" << endl; + sHipDNNUnsupported << endl_tab << ")" << endl; sCommon << tab << "{" << endl; sCommon << tab_2 << my << "$mt = m/($func)/g;" << endl; sCommon << tab_2 << "if ($mt) {" << endl; @@ -630,23 +659,26 @@ namespace perl { sExperimental << sCommon.str(); sDeprecated << sCommon.str() << sCommon1.str(); sRemoved << sCommon.str() << sCommon1.str(); - sUnsupported << sCommon.str(); sHipUnsupported << sCommon.str(); sRocUnsupported << sCommon.str(); + sMIOpenUnsupported << sCommon.str(); + sHipDNNUnsupported << sCommon.str(); sCommon.str(std::string()); sCommon << tab_2 << "}\n" << tab << "}\n" << tab << return_k << "}" << endl; sExperimental << tab_3 << print << "\" " << warning << "experimental ROCm HIP identifier: $func $val\\n\";" << endl << sCommon.str(); sDeprecated << tab_3 << print << "\" " << warning << "deprecated CUDA identifier: $func since $cuda $val\\n\";" << endl << sCommon.str(); sRemoved << tab_3 << print << "\" " << warning << "removed CUDA identifier: $func since $cuda $val\\n\";" << endl << sCommon.str(); - sUnsupported << tab_3 << print << "\" " << warning << "unsupported ROCm HIP identifier: $func\\n\";" << endl << sCommon.str(); sHipUnsupported << tab_3 << print << "\" " << warning << "unsupported HIP identifier: $func\\n\";" << endl << sCommon.str(); sRocUnsupported << tab_3 << print << "\" " << warning << "unsupported ROC identifier: $func\\n\";" << endl << sCommon.str(); + sMIOpenUnsupported << tab_3 << print << "\" " << warning << "unsupported MIOpen identifier: $func\\n\";" << endl << sCommon.str(); + sHipDNNUnsupported << tab_3 << print << "\" " << warning << "unsupported hipDNN identifier: $func\\n\";" << endl << sCommon.str(); *streamPtr.get() << sExperimental.str(); *streamPtr.get() << sDeprecated.str(); *streamPtr.get() << sRemoved.str(); - *streamPtr.get() << sUnsupported.str(); *streamPtr.get() << sHipUnsupported.str(); *streamPtr.get() << sRocUnsupported.str(); + *streamPtr.get() << sMIOpenUnsupported.str(); + *streamPtr.get() << sHipDNNUnsupported.str(); } void generateDeviceFunctions(unique_ptr &streamPtr) { @@ -722,6 +754,7 @@ namespace perl { generateSubstFunction(streamPtr); generateExperimentalSubstitutions(streamPtr); generateRocSubstitutions(streamPtr); + generateRocSubstitutions(streamPtr, true); generateSimpleSubstitutions(streamPtr); generateKernelLaunch(streamPtr); generateCubNamespace(streamPtr); @@ -804,20 +837,30 @@ namespace perl { *streamPtr.get() << tab_5 << warningsPlus << endl; *streamPtr.get() << tab_5 << "$s = " << sWarnDeprecatedFunctions << "($line_num);" << endl; *streamPtr.get() << tab_5 << warningsPlus << endl; - *streamPtr.get() << tab_5 << "$s = " << sWarnUnsupportedFunctions << "($line_num);" << endl; - *streamPtr.get() << tab_5 << warningsPlus << endl; *streamPtr.get() << tab_5 << "if ($roc) {" << endl; *streamPtr.get() << tab_6 << "$s = " << sWarnRocOnlyUnsupportedFunctions << "($line_num);" << endl; *streamPtr.get() << tab_6 << warningsPlus << endl; + *streamPtr.get() << tab_6 << "$s = " << sWarnMIOpenOnlyUnsupportedFunctions << "($line_num);" << endl; + *streamPtr.get() << tab_6 << warningsPlus << endl; *streamPtr.get() << tab_5 << "} else {" << endl; *streamPtr.get() << tab_6 << "$s = " << sWarnHipOnlyUnsupportedFunctions << "($line_num);" << endl; *streamPtr.get() << tab_6 << warningsPlus << endl; + *streamPtr.get() << tab_6 << "if ($miopen) {" << endl; + *streamPtr.get() << tab_7 << "$s = " << sWarnMIOpenOnlyUnsupportedFunctions << "($line_num);" << endl; + *streamPtr.get() << tab_6 << "} else {" << endl; + *streamPtr.get() << tab_7 << "$s = " << sWarnHipDNNOnlyUnsupportedFunctions << "($line_num);" << endl; + *streamPtr.get() << tab_6 << "}" << endl; + *streamPtr.get() << tab_6 << warningsPlus << endl; *streamPtr.get() << tab_5 << "}" << endl; *streamPtr.get() << tab_5 << "$s = " << sWarnUnsupportedDeviceFunctions << "($line_num);" << endl; *streamPtr.get() << tab_5 << warningsPlus << endl_tab_4 << "}" << endl; *streamPtr.get() << tab_4 << "$_ = $tmp;" << endl_tab_3 << "}" << endl; *streamPtr.get() << tab_3 << "if ($roc) {" << endl; *streamPtr.get() << tab_4 << sRocSubstitutions << "();" << endl; + *streamPtr.get() << tab_4 << sMIOpenSubstitutions << "();" << endl; + *streamPtr.get() << tab_3 << "}" << endl; + *streamPtr.get() << tab_3 << "if ($miopen) {" << endl; + *streamPtr.get() << tab_4 << sMIOpenSubstitutions << "();" << endl; *streamPtr.get() << tab_3 << "}" << endl; *streamPtr.get() << tab_3 << "if ($experimental) {" << endl; *streamPtr.get() << tab_4 << sExperimentalSubstitutions << "();" << endl; diff --git a/src/CUDA2HIP_Runtime_API_functions.cpp b/src/CUDA2HIP_Runtime_API_functions.cpp index 2484e596..256b5ab5 100644 --- a/src/CUDA2HIP_Runtime_API_functions.cpp +++ b/src/CUDA2HIP_Runtime_API_functions.cpp @@ -863,15 +863,15 @@ const std::map CUDA_RUNTIME_FUNCTION_MAP { // cuGraphInstantiateWithParams {"cudaGraphInstantiateWithParams", {"hipGraphInstantiateWithParams", "", CONV_GRAPH, API_RUNTIME, SEC::GRAPH}}, // cuGraphExecGetFlags - {"cudaGraphExecGetFlags", {"hipGraphExecGetFlags", "", CONV_GRAPH, API_RUNTIME, SEC::GRAPH, HIP_EXPERIMENTAL}}, + {"cudaGraphExecGetFlags", {"hipGraphExecGetFlags", "", CONV_GRAPH, API_RUNTIME, SEC::GRAPH}}, // cuGraphAddNode {"cudaGraphAddNode", {"hipGraphAddNode", "", CONV_GRAPH, API_RUNTIME, SEC::GRAPH}}, // cuGraphAddNode_v2 {"cudaGraphAddNode_v2", {"hipGraphAddNode_v2", "", CONV_GRAPH, API_RUNTIME, SEC::GRAPH, HIP_UNSUPPORTED}}, // cuGraphNodeSetParams - {"cudaGraphNodeSetParams", {"hipGraphNodeSetParams", "", CONV_GRAPH, API_RUNTIME, SEC::GRAPH, HIP_EXPERIMENTAL}}, + {"cudaGraphNodeSetParams", {"hipGraphNodeSetParams", "", CONV_GRAPH, API_RUNTIME, SEC::GRAPH}}, // cuGraphExecNodeSetParams - {"cudaGraphExecNodeSetParams", {"hipGraphExecNodeSetParams", "", CONV_GRAPH, API_RUNTIME, SEC::GRAPH, HIP_EXPERIMENTAL}}, + {"cudaGraphExecNodeSetParams", {"hipGraphExecNodeSetParams", "", CONV_GRAPH, API_RUNTIME, SEC::GRAPH}}, // cuGraphConditionalHandleCreate {"cudaGraphConditionalHandleCreate", {"hipGraphConditionalHandleCreate", "", CONV_GRAPH, API_RUNTIME, SEC::GRAPH, HIP_UNSUPPORTED}}, @@ -1434,9 +1434,9 @@ const std::map HIP_RUNTIME_FUNCTION_VER_MAP { {"hipStreamBeginCaptureToGraph", {HIP_6020, HIP_0, HIP_0, }}, {"hipSetValidDevices", {HIP_6020, HIP_0, HIP_0, }}, {"hipMemcpy2DArrayToArray", {HIP_6020, HIP_0, HIP_0, }}, - {"hipGraphExecGetFlags", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipGraphNodeSetParams", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipGraphExecNodeSetParams", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, + {"hipGraphExecGetFlags", {HIP_6030, HIP_0, HIP_0, }}, + {"hipGraphNodeSetParams", {HIP_6030, HIP_0, HIP_0, }}, + {"hipGraphExecNodeSetParams", {HIP_6030, HIP_0, HIP_0, }}, }; const std::map CUDA_RUNTIME_FUNCTION_CHANGED_VER_MAP { diff --git a/src/CUDA2HIP_SOLVER_API_functions.cpp b/src/CUDA2HIP_SOLVER_API_functions.cpp index e24e6484..4de55ef1 100644 --- a/src/CUDA2HIP_SOLVER_API_functions.cpp +++ b/src/CUDA2HIP_SOLVER_API_functions.cpp @@ -49,8 +49,8 @@ const std::map CUDA_SOLVER_FUNCTION_MAP { {"cusolverDnSetAdvOptions", {"hipsolverDnSetAdvOptions", "", CONV_LIB_FUNC, API_SOLVER, 2, ROC_UNSUPPORTED}}, {"cusolverDnSetStream", {"hipsolverSetStream", "rocblas_set_stream", CONV_LIB_FUNC, API_SOLVER, 2}}, {"cusolverDnGetStream", {"hipsolverGetStream", "rocblas_get_stream", CONV_LIB_FUNC, API_SOLVER, 2}}, - {"cusolverDnSetDeterministicMode", {"hipsolverDnSetDeterministicMode", "", CONV_LIB_FUNC, API_SOLVER, 2, ROC_UNSUPPORTED | HIP_EXPERIMENTAL}}, - {"cusolverDnGetDeterministicMode", {"hipsolverDnGetDeterministicMode", "", CONV_LIB_FUNC, API_SOLVER, 2, ROC_UNSUPPORTED | HIP_EXPERIMENTAL}}, + {"cusolverDnSetDeterministicMode", {"hipsolverDnSetDeterministicMode", "", CONV_LIB_FUNC, API_SOLVER, 2, ROC_UNSUPPORTED}}, + {"cusolverDnGetDeterministicMode", {"hipsolverDnGetDeterministicMode", "", CONV_LIB_FUNC, API_SOLVER, 2, ROC_UNSUPPORTED}}, {"cusolverDnIRSParamsCreate", {"hipsolverDnIRSParamsCreate", "", CONV_LIB_FUNC, API_SOLVER, 2, UNSUPPORTED}}, {"cusolverDnIRSParamsDestroy", {"hipsolverDnIRSParamsDestroy", "", CONV_LIB_FUNC, API_SOLVER, 2, UNSUPPORTED}}, {"cusolverDnIRSParamsSetRefinementSolver", {"hipsolverDnIRSParamsSetRefinementSolver", "", CONV_LIB_FUNC, API_SOLVER, 2, UNSUPPORTED}}, @@ -452,11 +452,11 @@ const std::map CUDA_SOLVER_FUNCTION_MAP { {"cusolverDnSyevdx", {"hipsolverDnSyevdx", "", CONV_LIB_FUNC, API_SOLVER, 2, UNSUPPORTED}}, {"cusolverDnGesvd_bufferSize", {"hipsolverDnGesvd_bufferSize", "", CONV_LIB_FUNC, API_SOLVER, 2, UNSUPPORTED}}, {"cusolverDnGesvd", {"hipsolverDnGesvd", "", CONV_LIB_FUNC, API_SOLVER, 2, UNSUPPORTED}}, - {"cusolverDnXpotrf_bufferSize", {"hipsolverDnXpotrf_bufferSize", "", CONV_LIB_FUNC, API_SOLVER, 2, ROC_UNSUPPORTED | HIP_EXPERIMENTAL}}, - {"cusolverDnXpotrf", {"hipsolverDnXpotrf", "", CONV_LIB_FUNC, API_SOLVER, 2, ROC_UNSUPPORTED | HIP_EXPERIMENTAL}}, - {"cusolverDnXpotrs", {"hipsolverDnXpotrs", "", CONV_LIB_FUNC, API_SOLVER, 2, ROC_UNSUPPORTED | HIP_EXPERIMENTAL}}, - {"cusolverDnXgeqrf_bufferSize", {"hipsolverDnXgeqrf_bufferSize", "", CONV_LIB_FUNC, API_SOLVER, 2, ROC_UNSUPPORTED | HIP_EXPERIMENTAL}}, - {"cusolverDnXgeqrf", {"hipsolverDnXgeqrf", "", CONV_LIB_FUNC, API_SOLVER, 2, ROC_UNSUPPORTED | HIP_EXPERIMENTAL}}, + {"cusolverDnXpotrf_bufferSize", {"hipsolverDnXpotrf_bufferSize", "", CONV_LIB_FUNC, API_SOLVER, 2, ROC_UNSUPPORTED}}, + {"cusolverDnXpotrf", {"hipsolverDnXpotrf", "", CONV_LIB_FUNC, API_SOLVER, 2, ROC_UNSUPPORTED}}, + {"cusolverDnXpotrs", {"hipsolverDnXpotrs", "", CONV_LIB_FUNC, API_SOLVER, 2, ROC_UNSUPPORTED}}, + {"cusolverDnXgeqrf_bufferSize", {"hipsolverDnXgeqrf_bufferSize", "", CONV_LIB_FUNC, API_SOLVER, 2, ROC_UNSUPPORTED}}, + {"cusolverDnXgeqrf", {"hipsolverDnXgeqrf", "", CONV_LIB_FUNC, API_SOLVER, 2, ROC_UNSUPPORTED}}, {"cusolverDnXsyevBatched", {"hipsolverDnXsyevBatched", "", CONV_LIB_FUNC, API_SOLVER, 2, UNSUPPORTED}}, {"cusolverDnXsyevBatched_bufferSize", {"hipsolverDnXsyevBatched_bufferSize", "", CONV_LIB_FUNC, API_SOLVER, 2, UNSUPPORTED}}, {"cusolverDnXsyevd_bufferSize", {"hipsolverDnXsyevd_bufferSize", "", CONV_LIB_FUNC, API_SOLVER, 2, UNSUPPORTED}}, @@ -1444,13 +1444,13 @@ const std::map HIP_SOLVER_FUNCTION_VER_MAP { {"hipsolverDnXgetrf", {HIP_6020, HIP_0, HIP_0, }}, {"hipsolverDnXgetrf_bufferSize", {HIP_6020, HIP_0, HIP_0, }}, {"hipsolverDnXgetrs", {HIP_6020, HIP_0, HIP_0, }}, - {"hipsolverDnSetDeterministicMode", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipsolverDnGetDeterministicMode", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipsolverDnXgeqrf_bufferSize", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipsolverDnXgeqrf", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipsolverDnXpotrf_bufferSize", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipsolverDnXpotrf", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, - {"hipsolverDnXpotrs", {HIP_6030, HIP_0, HIP_0, HIP_LATEST}}, + {"hipsolverDnSetDeterministicMode", {HIP_6030, HIP_0, HIP_0, }}, + {"hipsolverDnGetDeterministicMode", {HIP_6030, HIP_0, HIP_0, }}, + {"hipsolverDnXgeqrf_bufferSize", {HIP_6030, HIP_0, HIP_0, }}, + {"hipsolverDnXgeqrf", {HIP_6030, HIP_0, HIP_0, }}, + {"hipsolverDnXpotrf_bufferSize", {HIP_6030, HIP_0, HIP_0, }}, + {"hipsolverDnXpotrf", {HIP_6030, HIP_0, HIP_0, }}, + {"hipsolverDnXpotrs", {HIP_6030, HIP_0, HIP_0, }}, {"rocsolver_spotrf", {HIP_3020, HIP_0, HIP_0 }}, {"rocsolver_dpotrf", {HIP_3020, HIP_0, HIP_0 }}, diff --git a/src/CUDA2HIP_TENSOR_API_functions.cpp b/src/CUDA2HIP_TENSOR_API_functions.cpp new file mode 100644 index 00000000..4bb5cc85 --- /dev/null +++ b/src/CUDA2HIP_TENSOR_API_functions.cpp @@ -0,0 +1,136 @@ +/* +Copyright (c) 2015 - present Advanced Micro Devices, Inc. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +*/ + +#include "CUDA2HIP.h" + +const std::map CUDA_TENSOR_FUNCTION_MAP { + {"cutensorCreate", {"hiptensorCreate", "", CONV_LIB_FUNC, API_TENSOR, 2}}, + {"cutensorDestroy", {"hiptensorDestroy", "", CONV_LIB_FUNC, API_TENSOR, 2}}, + {"cutensorHandleResizePlanCache", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorHandleWritePlanCacheToFile", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorHandleReadPlanCacheFromFile", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorWriteKernelCacheToFile", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorReadKernelCacheFromFile", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorCreateTensorDescriptor", {"hiptensorInitTensorDescriptor", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorInitTensorDescriptor", {"hiptensorInitTensorDescriptor", "", CONV_LIB_FUNC, API_TENSOR, 2}}, + {"cutensorDestroyTensorDescriptor", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorCreateElementwiseTrinary", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorElementwiseTrinaryExecute", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorCreateElementwiseBinary", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorElementwiseBinaryExecute", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorCreatePermutation", {"hiptensorPermutation", "", CONV_LIB_FUNC, API_TENSOR, 2, HIP_UNSUPPORTED}}, + {"cutensorPermutation", {"hiptensorPermutation", "", CONV_LIB_FUNC, API_TENSOR, 2}}, + {"cutensorPermute", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorCreateContraction", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorContraction", {"hiptensorContraction", "", CONV_LIB_FUNC, API_TENSOR, 2}}, + {"cutensorDestroyOperationDescriptor", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorOperationDescriptorSetAttribute", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorOperationDescriptorGetAttribute", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorCreatePlanPreference", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorDestroyPlanPreference", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorPlanPreferenceSetAttribute", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorPlanGetAttribute", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorEstimateWorkspaceSize", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorCreatePlan", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorDestroyPlan", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorContract", {"hiptensorContraction", "", CONV_LIB_FUNC, API_TENSOR, 2}}, + {"cutensorReduction", {"hiptensorReduction", "", CONV_LIB_FUNC, API_TENSOR, 2}}, + {"cutensorCreateReduction", {"hiptensorReduction", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorReduce", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorGetErrorString", {"hiptensorGetErrorString", "", CONV_LIB_FUNC, API_TENSOR, 2}}, + {"cutensorGetVersion", {"", "", CONV_LIB_FUNC, API_TENSOR, 2, UNSUPPORTED}}, + {"cutensorGetCudartVersion", {"hiptensorGetHiprtVersion", "", CONV_LIB_FUNC, API_TENSOR, 2}}, + {"cutensorLoggerSetCallback", {"hiptensorLoggerSetCallback", "", CONV_LIB_FUNC, API_TENSOR, 2}}, + {"cutensorLoggerSetFile", {"hiptensorLoggerSetFile", "", CONV_LIB_FUNC, API_TENSOR, 2}}, + {"cutensorLoggerOpenFile", {"hiptensorLoggerOpenFile", "", CONV_LIB_FUNC, API_TENSOR, 2}}, + {"cutensorLoggerSetLevel", {"hiptensorLoggerSetLevel", "", CONV_LIB_FUNC, API_TENSOR, 2}}, + {"cutensorLoggerSetMask", {"hiptensorLoggerSetMask", "", CONV_LIB_FUNC, API_TENSOR, 2}}, + {"cutensorLoggerForceDisable", {"hiptensorLoggerForceDisable", "", CONV_LIB_FUNC, API_TENSOR, 2}}, +}; + + +const std::map CUDA_TENSOR_FUNCTION_VER_MAP { + {"cutensorCreate", {CUTENSOR_1700, CUDA_0, CUDA_0 }}, + {"cutensorDestroy", {CUTENSOR_1700, CUDA_0, CUDA_0 }}, + {"cutensorHandleResizePlanCache", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorHandleWritePlanCacheToFile", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorHandleReadPlanCacheFromFile", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorWriteKernelCacheToFile", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorReadKernelCacheFromFile", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorCreateTensorDescriptor", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorInitTensorDescriptor", {CUTENSOR_1010, CUDA_0, CUTENSOR_2000}}, + {"cutensorDestroyTensorDescriptor", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorCreateElementwiseTrinary", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorElementwiseTrinaryExecute", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorCreateElementwiseBinary", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorElementwiseBinaryExecute", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorCreatePermutation", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorPermutation", {CUTENSOR_1010, CUDA_0, CUTENSOR_2000}}, + {"cutensorPermute", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorCreateContraction", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorContraction", {CUTENSOR_1010, CUDA_0, CUTENSOR_2000}}, + {"cutensorDestroyOperationDescriptor", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorOperationDescriptorSetAttribute", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorOperationDescriptorGetAttribute", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorCreatePlanPreference", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorDestroyPlanPreference", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorPlanPreferenceSetAttribute", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorPlanGetAttribute", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorEstimateWorkspaceSize", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorCreatePlan", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorDestroyPlan", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorContract", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorCreateReduction", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorReduction", {CUTENSOR_1010, CUDA_0, CUTENSOR_2000}}, + {"cutensorReduce", {CUTENSOR_2000, CUDA_0, CUDA_0 }}, + {"cutensorGetErrorString", {CUTENSOR_1010, CUDA_0, CUDA_0 }}, + {"cutensorGetVersion", {CUTENSOR_1010, CUDA_0, CUDA_0 }}, + {"cutensorGetCudartVersion", {CUTENSOR_1010, CUDA_0, CUDA_0 }}, + {"cutensorLoggerSetCallback", {CUTENSOR_1320, CUDA_0, CUDA_0 }}, + {"cutensorLoggerSetFile", {CUTENSOR_1320, CUDA_0, CUDA_0 }}, + {"cutensorLoggerOpenFile", {CUTENSOR_1320, CUDA_0, CUDA_0 }}, + {"cutensorLoggerSetLevel", {CUTENSOR_1320, CUDA_0, CUDA_0 }}, + {"cutensorLoggerSetMask", {CUTENSOR_1320, CUDA_0, CUDA_0 }}, + {"cutensorLoggerForceDisable", {CUTENSOR_1320, CUDA_0, CUDA_0 }}, +}; + +const std::map HIP_TENSOR_FUNCTION_VER_MAP { + {"hiptensorCreate", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorDestroy", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorInitTensorDescriptor", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorPermutation", {HIP_6010, HIP_0, HIP_0, }}, + {"hiptensorContraction", {HIP_6010, HIP_0, HIP_0, }}, + {"hiptensorReduction", {HIP_6030, HIP_0, HIP_0, }}, + {"hiptensorGetErrorString", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorGetHiprtVersion", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorLoggerSetCallback", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorLoggerSetFile", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorLoggerOpenFile", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorLoggerSetLevel", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorLoggerSetMask", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorLoggerForceDisable", {HIP_5070, HIP_0, HIP_0, }}, +}; + +const std::map CUDA_TENSOR_API_SECTION_MAP { + {1, "CUTENSOR Data types"}, + {2, "CUTENSOR Function Reference"}, +}; diff --git a/src/CUDA2HIP_TENSOR_API_types.cpp b/src/CUDA2HIP_TENSOR_API_types.cpp new file mode 100644 index 00000000..de0f266f --- /dev/null +++ b/src/CUDA2HIP_TENSOR_API_types.cpp @@ -0,0 +1,380 @@ +/* +Copyright (c) 2024 - present Advanced Micro Devices, Inc. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +*/ + +#include "CUDA2HIP.h" + +// Map of all functions +const std::map CUDA_TENSOR_TYPE_NAME_MAP { + // cuTENSOR enums + {"cutensorDataType_t", {"hiptensorComputeType_t", "", CONV_TYPE, API_TENSOR, 1}}, + {"CUTENSOR_R_16F", {"HIPTENSOR_COMPUTE_16F", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_C_16F", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_16BF", {"HIPTENSOR_COMPUTE_16BF", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_C_16BF", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_32F", {"HIPTENSOR_COMPUTE_32F", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_C_32F", {"HIPTENSOR_COMPUTE_C32F", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_R_64F", {"HIPTENSOR_COMPUTE_64F", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_C_64F", {"HIPTENSOR_COMPUTE_C64F", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_R_4I", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_C_4I", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_4U", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_C_4U", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_8I", {"HIPTENSOR_COMPUTE_8I", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_C_8I", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_8U", {"HIPTENSOR_COMPUTE_8U", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_C_8U", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_16I", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_C_16I", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_16U", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_C_16U", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_32I", {"HIPTENSOR_COMPUTE_32I", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_C_32I", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_32U", {"HIPTENSOR_COMPUTE_32U", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_C_32U", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_64I", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_C_64I", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_64U", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_C_64U", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + + {"cutensorComputeType_t", {"hiptensorComputeType_t", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_COMPUTE_16F", {"HIPTENSOR_COMPUTE_16F", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_COMPUTE_16BF", {"HIPTENSOR_COMPUTE_16BF", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_COMPUTE_TF32", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_COMPUTE_32F", {"HIPTENSOR_COMPUTE_32F", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_COMPUTE_64F", {"HIPTENSOR_COMPUTE_64F", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_COMPUTE_8U", {"HIPTENSOR_COMPUTE_8U", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_COMPUTE_8I", {"HIPTENSOR_COMPUTE_8I", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_COMPUTE_32U", {"HIPTENSOR_COMPUTE_32U", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_COMPUTE_32I", {"HIPTENSOR_COMPUTE_32I", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_R_MIN_16F", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_C_MIN_16F", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_MIN_32F", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_C_MIN_32F", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_MIN_64F", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_C_MIN_64F", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_MIN_8U", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_MIN_32U", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_MIN_16BF", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_R_MIN_TF32", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_C_MIN_TF32", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + + {"cutensorOperator_t", {"hiptensorOperator_t", "", CONV_TYPE, API_TENSOR, 1}}, + {"CUTENSOR_OP_IDENTITY", {"HIPTENSOR_OP_IDENTITY", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_OP_SQRT", {"HIPTENSOR_OP_SQRT", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_OP_RELU", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_CONJ", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_RCP", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_SIGMOID", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_TANH", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_EXP", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_LOG", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_ABS", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_NEG", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_SIN", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_COS", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_TAN", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_SINH", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_COSH", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_ASIN", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_ACOS", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_ATAN", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_ASINH", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_ACOSH", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_ATANH", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_CEIL", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_FLOOR", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_MISH", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_SWISH", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_SOFT_PLUS", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_SOFT_SIGN", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OP_ADD", {"HIPTENSOR_OP_ADD", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_OP_MUL", {"HIPTENSOR_OP_MUL", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_OP_MAX", {"HIPTENSOR_OP_MAX", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_OP_MIN", {"HIPTENSOR_OP_MIN", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_OP_UNKNOWN", {"HIPTENSOR_OP_UNKNOWN", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + + {"cutensorStatus_t", {"hiptensorStatus_t", "", CONV_TYPE, API_TENSOR, 1}}, + {"CUTENSOR_STATUS_SUCCESS", {"HIPTENSOR_STATUS_SUCCESS", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_STATUS_NOT_INITIALIZED", {"HIPTENSOR_STATUS_NOT_INITIALIZED", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_STATUS_ALLOC_FAILED", {"HIPTENSOR_STATUS_ALLOC_FAILED", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_STATUS_INVALID_VALUE", {"HIPTENSOR_STATUS_INVALID_VALUE", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_STATUS_ARCH_MISMATCH", {"HIPTENSOR_STATUS_ARCH_MISMATCH", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_STATUS_MAPPING_ERROR", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_STATUS_EXECUTION_FAILED", {"HIPTENSOR_STATUS_EXECUTION_FAILED", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_STATUS_INTERNAL_ERROR", {"HIPTENSOR_STATUS_INTERNAL_ERROR", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_STATUS_NOT_SUPPORTED", {"HIPTENSOR_STATUS_NOT_SUPPORTED", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_STATUS_LICENSE_ERROR", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_STATUS_CUBLAS_ERROR", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_STATUS_CUDA_ERROR", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_STATUS_INSUFFICIENT_WORKSPACE", {"HIPTENSOR_STATUS_INSUFFICIENT_WORKSPACE", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_STATUS_INSUFFICIENT_DRIVER", {"HIPTENSOR_STATUS_INSUFFICIENT_DRIVER", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_STATUS_IO_ERROR", {"HIPTENSOR_STATUS_IO_ERROR", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + + {"cutensorAlgo_t", {"hiptensorAlgo_t", "", CONV_TYPE, API_TENSOR, 1}}, + {"CUTENSOR_ALGO_DEFAULT_PATIENT", {"HIPTENSOR_ALGO_DEFAULT_PATIENT", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_ALGO_GETT", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_ALGO_TGETT", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_ALGO_TTGT", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_ALGO_DEFAULT", {"HIPTENSOR_ALGO_DEFAULT", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + + {"cutensorWorksizePreference_t", {"hiptensorWorksizePreference_t", "", CONV_TYPE, API_TENSOR, 1}}, + {"CUTENSOR_WORKSPACE_MIN", {"HIPTENSOR_WORKSPACE_MIN", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_WORKSPACE_DEFAULT", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_WORKSPACE_RECOMMENDED", {"HIPTENSOR_WORKSPACE_RECOMMENDED", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + {"CUTENSOR_WORKSPACE_MAX", {"HIPTENSOR_WORKSPACE_MAX", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1}}, + + {"cutensorOperationDescriptorAttribute_t", {"", "", CONV_TYPE, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OPERATION_DESCRIPTOR_TAG", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OPERATION_DESCRIPTOR_SCALAR_TYPE", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OPERATION_DESCRIPTOR_FLOPS", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OPERATION_DESCRIPTOR_MOVED_BYTES", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OPERATION_DESCRIPTOR_PADDING_LEFT", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OPERATION_DESCRIPTOR_PADDING_RIGHT", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_OPERATION_DESCRIPTOR_PADDING_VALUE", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + + {"cutensorPlanPreferenceAttribute_t", {"", "", CONV_TYPE, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_PLAN_PREFERENCE_AUTOTUNE_MODE", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_PLAN_PREFERENCE_CACHE_MODE", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_PLAN_PREFERENCE_INCREMENTAL_COUNT", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_PLAN_PREFERENCE_ALGO", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_PLAN_PREFERENCE_KERNEL_RANK", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_PLAN_PREFERENCE_JIT", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + + {"cutensorAutotuneMode_t", {"", "", CONV_TYPE, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_AUTOTUNE_MODE_NONE", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_AUTOTUNE_MODE_INCREMENTAL", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + + {"cutensorJitMode_t", {"", "", CONV_TYPE, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_JIT_MODE_NONE", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_JIT_MODE_DEFAULT", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + + {"cutensorCacheMode_t", {"", "", CONV_TYPE, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_CACHE_MODE_NONE", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_CACHE_MODE_PEDANTIC", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + + {"cutensorPlanAttribute_t", {"", "", CONV_TYPE, API_TENSOR, 1, UNSUPPORTED}}, + {"CUTENSOR_PLAN_REQUIRED_WORKSPACE", {"", "", CONV_NUMERIC_LITERAL, API_TENSOR, 1, UNSUPPORTED}}, + + {"cutensorHandle_t", {"hiptensorHandle_t", "", CONV_TYPE, API_TENSOR, 1}}, + {"cutensorHandle", {"", "", CONV_TYPE, API_TENSOR, 1, UNSUPPORTED}}, + {"cutensorTensorDescriptor_t", {"hiptensorTensorDescriptor_t", "", CONV_TYPE, API_TENSOR, 1}}, + {"cutensorTensorDescriptor", {"", "", CONV_TYPE, API_TENSOR, 1, UNSUPPORTED}}, + {"cutensorContractionPlan_t", {"hiptensorContractionPlan_t", "", CONV_TYPE, API_TENSOR, 1}}, + {"cutensorPlan_t", {"hiptensorContractionPlan_t", "", CONV_TYPE, API_TENSOR, 1}}, + {"cutensorPlan", {"", "", CONV_TYPE, API_TENSOR, 1, UNSUPPORTED}}, + {"cutensorLoggerCallback_t", {"hiptensorLoggerCallback_t", "", CONV_TYPE, API_TENSOR, 1}}, + +}; + +const std::map CUDA_TENSOR_TYPE_NAME_VER_MAP { + {"cutensorDataType_t", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_R_16F", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_C_16F", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_R_16BF", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_C_16BF", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_R_32F", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_C_32F", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_R_64F", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_C_64F", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_R_4I", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_C_4I", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_R_4U", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_C_4U", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_R_8I", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_C_8I", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_R_8U", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_C_8U", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_R_16I", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_C_16I", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_R_16U", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_C_16U", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_R_32I", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_C_32I", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_R_32U", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_C_32U", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_R_64I", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_C_64I", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_R_64U", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_C_64U", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_COMPUTE_16F", {CUTENSOR_1010, CUDA_0, CUTENSOR_2000, }}, + {"CUTENSOR_COMPUTE_16BF", {CUTENSOR_1010, CUDA_0, CUTENSOR_2000, }}, + {"CUTENSOR_COMPUTE_TF32", {CUTENSOR_1010, CUDA_0, CUTENSOR_2000, }}, + {"CUTENSOR_COMPUTE_32F", {CUTENSOR_1010, CUDA_0, CUTENSOR_2000, }}, + {"CUTENSOR_COMPUTE_64F", {CUTENSOR_1010, CUDA_0, CUTENSOR_2000, }}, + {"CUTENSOR_COMPUTE_8U", {CUTENSOR_1010, CUDA_0, CUTENSOR_2000, }}, + {"CUTENSOR_COMPUTE_8I", {CUTENSOR_1010, CUDA_0, CUTENSOR_2000, }}, + {"CUTENSOR_COMPUTE_32U", {CUTENSOR_1010, CUDA_0, CUTENSOR_2000, }}, + {"CUTENSOR_COMPUTE_32I", {CUTENSOR_1010, CUDA_0, CUTENSOR_2000, }}, + {"CUTENSOR_R_MIN_16F", {CUTENSOR_1010, CUTENSOR_1200, CUTENSOR_2000, }}, + {"CUTENSOR_C_MIN_16F", {CUTENSOR_1010, CUTENSOR_1200, CUTENSOR_2000, }}, + {"CUTENSOR_R_MIN_32F", {CUTENSOR_1010, CUTENSOR_1200, CUTENSOR_2000, }}, + {"CUTENSOR_C_MIN_32F", {CUTENSOR_1010, CUTENSOR_1200, CUTENSOR_2000, }}, + {"CUTENSOR_R_MIN_64F", {CUTENSOR_1010, CUTENSOR_1200, CUTENSOR_2000, }}, + {"CUTENSOR_C_MIN_64F", {CUTENSOR_1010, CUTENSOR_1200, CUTENSOR_2000, }}, + {"CUTENSOR_R_MIN_8U", {CUTENSOR_1010, CUTENSOR_1200, CUTENSOR_2000, }}, + {"CUTENSOR_R_MIN_32U", {CUTENSOR_1010, CUTENSOR_1200, CUTENSOR_2000, }}, + {"CUTENSOR_R_MIN_16BF", {CUTENSOR_1010, CUTENSOR_1200, CUTENSOR_2000, }}, + {"CUTENSOR_R_MIN_TF32", {CUTENSOR_1010, CUTENSOR_1200, CUTENSOR_2000, }}, + {"CUTENSOR_C_MIN_TF32", {CUTENSOR_1010, CUTENSOR_1200, CUTENSOR_2000, }}, + {"cutensorOperator_t", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_IDENTITY", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_SQRT", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_RELU", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_CONJ", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_RCP", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_SIGMOID", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_TANH", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_EXP", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_LOG", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_ABS", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_NEG", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_SIN", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_COS", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_TAN", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_SINH", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_COSH", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_ASIN", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_ACOS", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_ATAN", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_ASINH", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_ACOSH", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_ATANH", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_CEIL", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_FLOOR", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_MISH", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_SWISH", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_SOFT_PLUS", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_SOFT_SIGN", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_ADD", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_MUL", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_MAX", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_MIN", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OP_UNKNOWN", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"cutensorStatus_t", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_STATUS_SUCCESS", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_STATUS_NOT_INITIALIZED", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_STATUS_ALLOC_FAILED", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_STATUS_INVALID_VALUE", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_STATUS_ARCH_MISMATCH", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_STATUS_MAPPING_ERROR", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_STATUS_EXECUTION_FAILED", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_STATUS_INTERNAL_ERROR", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_STATUS_NOT_SUPPORTED", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_STATUS_LICENSE_ERROR", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_STATUS_CUBLAS_ERROR", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_STATUS_CUDA_ERROR", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_STATUS_INSUFFICIENT_WORKSPACE", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_STATUS_INSUFFICIENT_DRIVER", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_STATUS_IO_ERROR", {CUTENSOR_1200, CUDA_0, CUDA_0, }}, + {"cutensorAlgo_t", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_ALGO_DEFAULT_PATIENT", {CUTENSOR_1400, CUDA_0, CUDA_0, }}, + {"CUTENSOR_ALGO_GETT", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_ALGO_TGETT", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_ALGO_TTGT", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_ALGO_DEFAULT", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"cutensorWorksizePreference_t", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_WORKSPACE_MIN", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"CUTENSOR_WORKSPACE_DEFAULT", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_WORKSPACE_RECOMMENDED", {CUTENSOR_1010, CUDA_0, CUTENSOR_2000, }}, + {"CUTENSOR_WORKSPACE_MAX", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"cutensorOperationDescriptorAttribute_t", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OPERATION_DESCRIPTOR_TAG", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OPERATION_DESCRIPTOR_SCALAR_TYPE", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OPERATION_DESCRIPTOR_FLOPS", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OPERATION_DESCRIPTOR_MOVED_BYTES", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OPERATION_DESCRIPTOR_PADDING_LEFT", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OPERATION_DESCRIPTOR_PADDING_RIGHT", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_OPERATION_DESCRIPTOR_PADDING_VALUE", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"cutensorPlanPreferenceAttribute_t", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_PLAN_PREFERENCE_AUTOTUNE_MODE", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_PLAN_PREFERENCE_CACHE_MODE", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_PLAN_PREFERENCE_INCREMENTAL_COUNT", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_PLAN_PREFERENCE_ALGO", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_PLAN_PREFERENCE_KERNEL_RANK", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_PLAN_PREFERENCE_JIT", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"cutensorAutotuneMode_t", {CUTENSOR_1200, CUDA_0, CUDA_0, }}, + {"CUTENSOR_AUTOTUNE_MODE_NONE", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_AUTOTUNE_MODE_INCREMENTAL", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_AUTOTUNE_NONE", {CUTENSOR_1200, CUDA_0, CUTENSOR_2000, }}, + {"CUTENSOR_AUTOTUNE_INCREMENTAL", {CUTENSOR_1200, CUDA_0, CUTENSOR_2000, }}, + {"cutensorJitMode_t", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_JIT_MODE_NONE", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_JIT_MODE_DEFAULT", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"cutensorCacheMode_t", {CUTENSOR_1200, CUDA_0, CUDA_0, }}, + {"CUTENSOR_CACHE_MODE_NONE", {CUTENSOR_1200, CUDA_0, CUDA_0, }}, + {"CUTENSOR_CACHE_MODE_PEDANTIC", {CUTENSOR_1200, CUDA_0, CUDA_0, }}, + {"cutensorPlanAttribute_t", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"CUTENSOR_PLAN_REQUIRED_WORKSPACE", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"cutensorHandle_t", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"cutensorHandle", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"cutensorTensorDescriptor_t", {CUTENSOR_1010, CUDA_0, CUDA_0, }}, + {"cutensorTensorDescriptor", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"cutensorContractionPlan_t", {CUTENSOR_1010, CUDA_0, CUTENSOR_2000, }}, + {"cutensorPlan_t", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"cutensorPlan", {CUTENSOR_2000, CUDA_0, CUDA_0, }}, + {"cutensorLoggerCallback_t", {CUTENSOR_1320, CUDA_0, CUDA_0, }}, +}; + +const std::map HIP_TENSOR_TYPE_NAME_VER_MAP { + {"hiptensorComputeType_t", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_COMPUTE_16F", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_COMPUTE_16BF", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_COMPUTE_32F", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_COMPUTE_C32F", {HIP_6010, HIP_0, HIP_0, }}, + {"HIPTENSOR_COMPUTE_64F", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_COMPUTE_C64F", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_COMPUTE_8I", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_COMPUTE_8U", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_COMPUTE_32I", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_COMPUTE_32U", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorOperator_t", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_OP_IDENTITY", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_OP_SQRT", {HIP_6020, HIP_0, HIP_0, }}, + {"HIPTENSOR_OP_ADD", {HIP_6030, HIP_0, HIP_0, }}, + {"HIPTENSOR_OP_MUL", {HIP_6030, HIP_0, HIP_0, }}, + {"HIPTENSOR_OP_MAX", {HIP_6030, HIP_0, HIP_0, }}, + {"HIPTENSOR_OP_MIN", {HIP_6030, HIP_0, HIP_0, }}, + {"HIPTENSOR_OP_UNKNOWN", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorStatus_t", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_STATUS_SUCCESS", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_STATUS_NOT_INITIALIZED", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_STATUS_ALLOC_FAILED", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_STATUS_INVALID_VALUE", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_STATUS_ARCH_MISMATCH", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_STATUS_EXECUTION_FAILED", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_STATUS_INTERNAL_ERROR", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_STATUS_NOT_SUPPORTED", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_STATUS_INSUFFICIENT_WORKSPACE", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_STATUS_INSUFFICIENT_DRIVER", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_STATUS_IO_ERROR", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorAlgo_t", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_ALGO_DEFAULT", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_ALGO_DEFAULT_PATIENT", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorWorksizePreference_t", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_WORKSPACE_MIN", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_WORKSPACE_RECOMMENDED", {HIP_5070, HIP_0, HIP_0, }}, + {"HIPTENSOR_WORKSPACE_MAX", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorHandle_t", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorTensorDescriptor_t", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorContractionPlan_t", {HIP_5070, HIP_0, HIP_0, }}, + {"hiptensorLoggerCallback_t", {HIP_5070, HIP_0, HIP_0, }}, +}; diff --git a/src/HipifyAction.cpp b/src/HipifyAction.cpp index 65149193..318f9b66 100644 --- a/src/HipifyAction.cpp +++ b/src/HipifyAction.cpp @@ -39,6 +39,7 @@ using namespace hipify; const std::string sHIP = "HIP"; const std::string sROC = "ROC"; +const std::string sMIOPEN = "MIOPEN"; const std::string sCub = "cub"; const std::string sHipcub = "hipcub"; const std::string sHIP_KERNEL_NAME = "HIP_KERNEL_NAME"; @@ -2297,7 +2298,8 @@ void HipifyAction::FindAndReplace(StringRef name, if (Statistics::isHipExperimental(found->second) && !Experimental) { std::string sWarn; Statistics::isToRoc(found->second) ? sWarn = sROC : sWarn = sHIP; - sWarn = "" + sWarn; + if (Statistics::isToMIOpen(found->second)) + sWarn = sMIOPEN; const auto ID = DE.getCustomDiagID(clang::DiagnosticsEngine::Warning, "'%0' is experimental in '%1'; to hipify it, use the '--experimental' option."); DE.Report(sl, ID) << found->first << sWarn; return; @@ -2308,7 +2310,6 @@ void HipifyAction::FindAndReplace(StringRef name, if (Statistics::isHipSupportedV2Only(found->second) && found->second.apiType == API_BLAS && !insertedBLASHeader_V2) { std::string sWarn; Statistics::isToRoc(found->second) ? sWarn = sROC : sWarn = sHIP; - sWarn = "" + sWarn; const auto ID = DE.getCustomDiagID(clang::DiagnosticsEngine::Warning, "Only '%0_v2' version of '%0' is supported in '%1'; to hipify it, include 'cublas_v2.h' in the source."); DE.Report(sl, ID) << found->first << sWarn; return; @@ -2317,7 +2318,8 @@ void HipifyAction::FindAndReplace(StringRef name, if (Statistics::isUnsupported(found->second)) { std::string sWarn; Statistics::isToRoc(found->second) ? sWarn = sROC : sWarn = sHIP; - sWarn = "" + sWarn; + if (Statistics::isToMIOpen(found->second)) + sWarn = sMIOPEN; const auto ID = DE.getCustomDiagID(clang::DiagnosticsEngine::Warning, "'%0' is unsupported in '%1'."); DE.Report(sl, ID) << found->first << sWarn; return; @@ -2492,6 +2494,8 @@ void HipifyAction::InclusionDirective(clang::SourceLocation hash_loc, clang::DiagnosticsEngine &DE = getCompilerInstance().getDiagnostics(); std::string sWarn; Statistics::isToRoc(found->second) ? sWarn = sROC : sWarn = sHIP; + if (Statistics::isToMIOpen(found->second)) + sWarn = sMIOPEN; const auto ID = DE.getCustomDiagID(clang::DiagnosticsEngine::Warning, "'%0' is unsupported header in '%1'."); DE.Report(sl, ID) << found->first << sWarn; return; @@ -2682,7 +2686,10 @@ bool HipifyAction::cudaHostFuncCall(const mat::MatchFinder::MatchResult &Result) auto castStructs = it->second; auto &SM = *Result.SourceManager; for (auto cc : castStructs) { - if (cc.isToMIOpen != TranslateToMIOpen || cc.isToRoc != TranslateToRoc) continue; + if (TranslateToMIOpen == true && (cc.isToMIOpen == false && cc.isToRoc == false)) continue; + if (TranslateToMIOpen == false && cc.isToMIOpen == true) continue; + if (TranslateToRoc == true && cc.isToRoc == false) continue; + if (TranslateToRoc == false && cc.isToRoc == true && TranslateToMIOpen == false) continue; clang::LangOptions DefaultLangOptions; for (auto c : cc.castMap) { size_t length = 0; @@ -2825,7 +2832,6 @@ bool HipifyAction::cudaOverloadedHostFuncCall(const mat::MatchFinder::MatchResul auto it = FuncOverloads.find(name); if (it == FuncOverloads.end()) return false; auto FuncOverloadsStruct = it->second; - if (FuncOverloadsStruct.isToMIOpen != TranslateToMIOpen || FuncOverloadsStruct.isToRoc != TranslateToRoc) return false; unsigned numArgs = call->getNumArgs(); auto itNumArgs = FuncOverloadsStruct.overloadMap.find(numArgs); if (itNumArgs == FuncOverloadsStruct.overloadMap.end()) return false; diff --git a/src/Statistics.cpp b/src/Statistics.cpp index ba625fab..f94a7ca2 100644 --- a/src/Statistics.cpp +++ b/src/Statistics.cpp @@ -145,7 +145,8 @@ const char *apiNames[NUM_API_TYPES] = { "cuSOLVER API", "CUB API", "CAFFE2 API", - "RTC API" + "RTC API", + "TENSOR API" }; const char *apiTypes[NUM_API_TYPES] = { @@ -160,7 +161,8 @@ const char *apiTypes[NUM_API_TYPES] = { "API_SPARSE", "API_SOLVER", "API_CAFFE2", - "API_RTC" + "API_RTC", + "API_TENSOR" }; namespace { @@ -365,9 +367,13 @@ void Statistics::setActive(const std::string &name) { } bool Statistics::isToRoc(const hipCounter &counter) { - return (counter.apiType == API_BLAS || counter.apiType == API_DNN || counter.apiType == API_SPARSE || counter.apiType == API_SOLVER || - counter.apiType == API_RUNTIME || counter.apiType == API_COMPLEX || counter.apiType == API_RAND) && - ((TranslateToRoc && !TranslateToMIOpen) || TranslateToMIOpen); + return ((counter.apiType == API_BLAS || counter.apiType == API_DNN || counter.apiType == API_SPARSE || counter.apiType == API_SOLVER || + counter.apiType == API_RUNTIME || counter.apiType == API_COMPLEX || counter.apiType == API_RAND) && TranslateToRoc) || + isToMIOpen(counter); +} + +bool Statistics::isToMIOpen(const hipCounter &counter) { + return counter.apiType == API_DNN && TranslateToMIOpen; } bool Statistics::isHipExperimental(const hipCounter &counter) { @@ -541,6 +547,26 @@ std::string Statistics::getCudaVersion(const cudaVersions &ver) { case CUDNN_930: return "9.3.0"; case CUDNN_940: return "9.4.0"; case CUDNN_950: return "9.5.0"; + case CUDNN_960: return "9.6.0"; + case CUTENSOR_1010: return "1.0.1.0"; + case CUTENSOR_1100: return "1.1.0.0"; + case CUTENSOR_1200: return "1.2.0.0"; + case CUTENSOR_1210: return "1.2.1.0"; + case CUTENSOR_1220: return "1.2.2.0"; + case CUTENSOR_1300: return "1.3.0.0"; + case CUTENSOR_1310: return "1.3.1.0"; + case CUTENSOR_1320: return "1.3.2.0"; + case CUTENSOR_1330: return "1.3.3.0"; + case CUTENSOR_1400: return "1.4.0.0"; + case CUTENSOR_1500: return "1.5.0.0"; + case CUTENSOR_1600: return "1.6.0.0"; + case CUTENSOR_1610: return "1.6.1.0"; + case CUTENSOR_1620: return "1.6.2.0"; + case CUTENSOR_1700: return "1.7.0.0"; + case CUTENSOR_2000: return "2.0.0.0"; + case CUTENSOR_2010: return "2.0.1.0"; + case CUTENSOR_2020: return "2.0.2.0"; + case CUTENSOR_2021: return "2.0.2.1"; } return ""; } @@ -615,6 +641,7 @@ std::string Statistics::getHipVersion(const hipVersions &ver) { case HIP_6011: return "6.1.1"; case HIP_6020: return "6.2.0"; case HIP_6030: return "6.3.0"; + case HIP_6040: return "6.4.0"; } return ""; } diff --git a/src/Statistics.h b/src/Statistics.h index 0206c450..095e21cf 100644 --- a/src/Statistics.h +++ b/src/Statistics.h @@ -178,6 +178,7 @@ enum ApiTypes { API_CUB, API_CAFFE2, API_RTC, + API_TENSOR, API_LAST }; constexpr int NUM_API_TYPES = (int) ApiTypes::API_LAST; @@ -298,7 +299,28 @@ enum cudaVersions { CUDNN_930 = 930, CUDNN_940 = 940, CUDNN_950 = 950, - CUDNN_LATEST = CUDNN_950, + CUDNN_960 = 960, + CUDNN_LATEST = CUDNN_960, + CUTENSOR_1010 = 100010, + CUTENSOR_1100 = 100100, + CUTENSOR_1200 = 100200, + CUTENSOR_1210 = 100210, + CUTENSOR_1220 = 100220, + CUTENSOR_1300 = 100300, + CUTENSOR_1310 = 100310, + CUTENSOR_1320 = 100320, + CUTENSOR_1330 = 100330, + CUTENSOR_1400 = 100400, + CUTENSOR_1500 = 100500, + CUTENSOR_1600 = 100600, + CUTENSOR_1610 = 100610, + CUTENSOR_1620 = 100620, + CUTENSOR_1700 = 100700, + CUTENSOR_2000 = 200000, + CUTENSOR_2010 = 200010, + CUTENSOR_2020 = 200020, + CUTENSOR_2021 = 200021, + CUTENSOR_LATEST = CUTENSOR_2021, }; enum hipVersions { @@ -369,7 +391,8 @@ enum hipVersions { HIP_6011 = 6011, HIP_6020 = 6020, HIP_6030 = 6030, - HIP_LATEST = HIP_6030, + HIP_6040 = 6040, + HIP_LATEST = HIP_6040, }; struct cudaAPIversions { @@ -476,6 +499,8 @@ class Statistics { static void setActive(const std::string &name); // Check the counter and option TranslateToRoc whether it should be translated to Roc or not. static bool isToRoc(const hipCounter &counter); + // Check the counter and option TranslateToMIOpen whether it should be translated to MIOpen or not. + static bool isToMIOpen(const hipCounter& counter); // Check whether the counter is HIP_EXPERIMENTAL or not. static bool isHipExperimental(const hipCounter &counter); // Check whether the counter is HIP_UNSUPPORTED or not. diff --git a/src/main.cpp b/src/main.cpp index b8c427b8..f70c56a8 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -340,6 +340,8 @@ int main(int argc, const char **argv) { if (Examine) { NoOutput = PrintStats = true; } + if (TranslateToRoc) + TranslateToMIOpen = true; int Result = 0; SmallString<128> tmpFile; StringRef sourceFileName, ext = "hip", csv_ext = "csv"; diff --git a/tests/lit.cfg b/tests/lit.cfg index 074bf3ee..c57b1200 100644 --- a/tests/lit.cfg +++ b/tests/lit.cfg @@ -40,6 +40,10 @@ if not config.cuda_cub_root or config.cuda_cub_root == "OFF": config.excludes.append('cub_03.cu') print("WARN: CUB tests are excluded because CUDA_CUB_ROOT_DIR is not specified") warns = True +if not config.cuda_tensor_root or config.cuda_tensor_root == "OFF": + config.excludes.append('cutensor2hiptensor.cu') + print("WARN: cuTensor tests are excluded because CUDA_TENSOR_ROOT_DIR is not specified") + warns = True if warns: print(delimiter) @@ -123,6 +127,13 @@ if config.cuda_version_major < 11 or (config.cuda_version_major == 11 and config if config.cuda_version_major >= 11: config.excludes.append('cusparse2rocsparse_before_11000.cu') +if config.cuda_version_major < 11 or (config.cuda_version_major == 11 and config.cuda_version_minor < 8): + config.excludes.append('cudevice2hipdevice.cu') + config.excludes.append('cudevice2hipdevice_before_11080_after_12011.cu') + +if (config.cuda_version_major == 11 and config.cuda_version_minor >=8) or (config.cuda_version_major == 12 and config.cuda_version_minor < 2): + config.excludes.append('cudevice2hipdevice_before_11080_after_12011.cu') + if config.cuda_version_major < 12: config.excludes.append('headers_test_06_12000.cu') config.excludes.append('headers_test_07_12000.cu') @@ -248,6 +259,10 @@ if config.cuda_dnn_root and config.cuda_dnn_root != "OFF": if config.cuda_cub_root and config.cuda_cub_root != "OFF": clang_arguments += " -I'%s'" +# cuTensor ROOT +if config.cuda_tensor_root and config.cuda_tensor_root != "OFF": + clang_arguments += " -I'%s'/include" + i_subst = 0 if config.cuda_sdk_root != "OFF": i_subst = 1 @@ -255,8 +270,26 @@ if config.cuda_dnn_root != "OFF": i_subst += 2 if config.cuda_cub_root != "OFF": i_subst += 4 - -if i_subst == 7: +if config.cuda_tensor_root != "OFF": + i_subst += 8 + +if i_subst == 15: + config.substitutions.append(("%clang_args", clang_arguments % (config.cuda_sdk_root, config.cuda_dnn_root, config.cuda_cub_root, config.cuda_tensor_root))) +elif i_subst == 14: + config.substitutions.append(("%clang_args", clang_arguments % (config.cuda_dnn_root, config.cuda_cub_root, config.cuda_tensor_root))) +elif i_subst == 13: + config.substitutions.append(("%clang_args", clang_arguments % (config.cuda_sdk_root, config.cuda_cub_root, config.cuda_tensor_root))) +elif i_subst == 12: + config.substitutions.append(("%clang_args", clang_arguments % (config.cuda_cub_root, config.cuda_tensor_root))) +elif i_subst == 11: + config.substitutions.append(("%clang_args", clang_arguments % (config.cuda_sdk_root, config.cuda_dnn_root, config.cuda_tensor_root))) +elif i_subst == 10: + config.substitutions.append(("%clang_args", clang_arguments % (config.cuda_dnn_root, config.cuda_tensor_root))) +elif i_subst == 9: + config.substitutions.append(("%clang_args", clang_arguments % (config.cuda_sdk_root, config.cuda_tensor_root))) +elif i_subst == 8: + config.substitutions.append(("%clang_args", clang_arguments % config.cuda_tensor_root)) +elif i_subst == 7: config.substitutions.append(("%clang_args", clang_arguments % (config.cuda_sdk_root, config.cuda_dnn_root, config.cuda_cub_root))) elif i_subst == 6: config.substitutions.append(("%clang_args", clang_arguments % (config.cuda_dnn_root, config.cuda_cub_root))) diff --git a/tests/lit.site.cfg.in b/tests/lit.site.cfg.in index 9ca7bbc8..6bc74b6a 100644 --- a/tests/lit.site.cfg.in +++ b/tests/lit.site.cfg.in @@ -12,6 +12,7 @@ config.cuda_root = "@CUDA_TOOLKIT_ROOT_DIR@" config.cuda_sdk_root = "@CUDA_SDK_ROOT_DIR@" config.cuda_dnn_root = "@CUDA_DNN_ROOT_DIR@" config.cuda_cub_root = "@CUDA_CUB_ROOT_DIR@" +config.cuda_tensor_root = "@CUDA_TENSOR_ROOT_DIR@" config.cuda_version_major = int("@CUDA_VERSION_MAJOR@") config.cuda_version_minor = int("@CUDA_VERSION_MINOR@") config.cuda_version_full = "@CUDA_VERSION_FULL@" diff --git a/tests/unit_tests/synthetic/driver_functions.cu b/tests/unit_tests/synthetic/driver_functions.cu index 14c53578..ec8fa722 100644 --- a/tests/unit_tests/synthetic/driver_functions.cu +++ b/tests/unit_tests/synthetic/driver_functions.cu @@ -23,6 +23,7 @@ int main() { unsigned int flags = 0; unsigned int flags_2 = 0; + unsigned int icount = 0; uint64_t flags_64 = 0; int dim = 0; int count = 0; @@ -1081,6 +1082,14 @@ int main() { // HIP: hipError_t hipDeviceGetP2PAttribute(int* value, hipDeviceP2PAttr attr, int srcDevice, int dstDevice); // CHECK: result = hipDeviceGetP2PAttribute(value, deviceP2PAttribute, iBlockSize, iBlockSize_2); result = cuDeviceGetP2PAttribute(value, deviceP2PAttribute, iBlockSize, iBlockSize_2); + + // CHECK: hipStreamBatchMemOpParams streamBatchMemOpParams; + CUstreamBatchMemOpParams streamBatchMemOpParams; + + // CUDA: CUresult CUDAAPI cuStreamBatchMemOp(CUstream stream, unsigned int count, CUstreamBatchMemOpParams *paramArray, unsigned int flags); + // HIP: hipError_t hipStreamBatchMemOp(hipStream_t stream, unsigned int count, hipStreamBatchMemOpParams* paramArray, unsigned int flags); + // CHECK: result = hipStreamBatchMemOp(stream, icount, &streamBatchMemOpParams, flags); + result = cuStreamBatchMemOp(stream, icount, &streamBatchMemOpParams, flags); #endif #if CUDA_VERSION >= 9000 @@ -1863,6 +1872,34 @@ int main() { // HIP: hipError_t hipStreamWriteValue64(hipStream_t stream, void* ptr, uint64_t value, unsigned int flags, uint64_t mask __dparm(0xFFFFFFFFFFFFFFFF)); // CHECK: result = hipStreamWriteValue64(stream, deviceptr, u_value, flags); result = cuStreamWriteValue64_v2(stream, deviceptr, u_value, flags); + + // CUDA: CUresult CUDAAPI cuStreamBatchMemOp_v2(CUstream stream, unsigned int count, CUstreamBatchMemOpParams *paramArray, unsigned int flags); + // HIP: hipError_t hipStreamBatchMemOp(hipStream_t stream, unsigned int count, hipStreamBatchMemOpParams* paramArray, unsigned int flags); + // CHECK: result = hipStreamBatchMemOp(stream, icount, &streamBatchMemOpParams, flags); + result = cuStreamBatchMemOp_v2(stream, icount, &streamBatchMemOpParams, flags); + + // CHECK: hipBatchMemOpNodeParams BATCH_MEM_OP_NODE_PARAMS; + CUDA_BATCH_MEM_OP_NODE_PARAMS BATCH_MEM_OP_NODE_PARAMS; + + // CUDA: CUresult CUDAAPI cuGraphAddBatchMemOpNode(CUgraphNode *phGraphNode, CUgraph hGraph, const CUgraphNode *dependencies, size_t numDependencies, const CUDA_BATCH_MEM_OP_NODE_PARAMS *nodeParams); + // HIP: hipError_t hipGraphAddBatchMemOpNode(hipGraphNode_t *phGraphNode, hipGraph_t hGraph, const hipGraphNode_t* dependencies, size_t numDependencies, const hipBatchMemOpNodeParams* nodeParams); + // CHECK: result = hipGraphAddBatchMemOpNode(&graphNode, graph, &graphNode2, bytes, &BATCH_MEM_OP_NODE_PARAMS); + result = cuGraphAddBatchMemOpNode(&graphNode, graph, &graphNode2, bytes, &BATCH_MEM_OP_NODE_PARAMS); + + // CUDA: CUresult CUDAAPI cuGraphBatchMemOpNodeGetParams(CUgraphNode hNode, CUDA_BATCH_MEM_OP_NODE_PARAMS *nodeParams_out); + // HIP: hipError_t hipGraphBatchMemOpNodeGetParams(hipGraphNode_t hNode, hipBatchMemOpNodeParams* nodeParams_out); + // CHECK: result = hipGraphBatchMemOpNodeGetParams(graphNode, &BATCH_MEM_OP_NODE_PARAMS); + result = cuGraphBatchMemOpNodeGetParams(graphNode, &BATCH_MEM_OP_NODE_PARAMS); + + // CUDA: CUresult CUDAAPI cuGraphBatchMemOpNodeSetParams(CUgraphNode hNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS *nodeParams); + // HIP: hipError_t hipGraphBatchMemOpNodeSetParams(hipGraphNode_t hNode, hipBatchMemOpNodeParams* nodeParams); + // CHECK: result = hipGraphBatchMemOpNodeSetParams(graphNode, &BATCH_MEM_OP_NODE_PARAMS); + result = cuGraphBatchMemOpNodeSetParams(graphNode, &BATCH_MEM_OP_NODE_PARAMS); + + // CUDA: CUresult CUDAAPI cuGraphExecBatchMemOpNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS *nodeParams); + // HIP: hipError_t hipGraphExecBatchMemOpNodeSetParams(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, const hipBatchMemOpNodeParams* nodeParams); + // CHECK: result = hipGraphExecBatchMemOpNodeSetParams(graphExec, graphNode, &BATCH_MEM_OP_NODE_PARAMS); + result = cuGraphExecBatchMemOpNodeSetParams(graphExec, graphNode, &BATCH_MEM_OP_NODE_PARAMS); #endif #if CUDA_VERSION >= 12000 @@ -1874,7 +1911,7 @@ int main() { CUDA_GRAPH_INSTANTIATE_PARAMS_st GRAPH_INSTANTIATE_PARAMS_st; CUDA_GRAPH_INSTANTIATE_PARAMS GRAPH_INSTANTIATE_PARAMS; - // TODO: https://github.com/ROCm-Developer-Tools/HIPIFY/issues/782 - Introduce 1-to-N conditional matcher + // TODO: https://github.com/ROCm/HIPIFY/issues/782 - Introduce 1-to-N conditional matcher // Implement "conditional" matching in hipify-clang, based on CUDA_VERSION first; // below the transformation cuStreamGetCaptureInfo -> hipStreamGetCaptureInfo_v2 should be applied for CUDA_VERSION >= 12000, // otherwise, cuStreamGetCaptureInfo -> hipStreamGetCaptureInfo should be applied diff --git a/tests/unit_tests/synthetic/driver_structs.cu b/tests/unit_tests/synthetic/driver_structs.cu index 8f9201e9..476c8d9d 100644 --- a/tests/unit_tests/synthetic/driver_structs.cu +++ b/tests/unit_tests/synthetic/driver_structs.cu @@ -308,6 +308,16 @@ int main() { CUDA_MEM_ALLOC_NODE_PARAMS_st MEM_ALLOC_NODE_PARAMS_st; #endif +#if CUDA_VERSION >= 11070 + // CHECK: hipBatchMemOpNodeParams BATCH_MEM_OP_NODE_PARAMS; + CUDA_BATCH_MEM_OP_NODE_PARAMS BATCH_MEM_OP_NODE_PARAMS; +#endif + +#if CUDA_VERSION >= 11070 && CUDA_VERSION < 12020 + // CHECK: hipBatchMemOpNodeParams BATCH_MEM_OP_NODE_PARAMS_st; + CUDA_BATCH_MEM_OP_NODE_PARAMS_st BATCH_MEM_OP_NODE_PARAMS_st; +#endif + #if CUDA_VERSION >= 12000 // CHECK: hipGraphInstantiateParams GRAPH_INSTANTIATE_PARAMS_st; // CHECK-NEXT: hipGraphInstantiateParams GRAPH_INSTANTIATE_PARAMS; @@ -360,6 +370,15 @@ int main() { // CHECK-NEXT: hipGraphNodeParams graphNodeParams; CUgraphNodeParams_st graphNodeParams_st; CUgraphNodeParams graphNodeParams; + + // CHECK: hipBatchMemOpNodeParams BATCH_MEM_OP_NODE_PARAMS_v1_st; + // CHECK-NEXT: hipBatchMemOpNodeParams BATCH_MEM_OP_NODE_PARAMS_v1; + // CHECK-NEXT: hipBatchMemOpNodeParams BATCH_MEM_OP_NODE_PARAMS_v2_st; + // CHECK-NEXT: hipBatchMemOpNodeParams BATCH_MEM_OP_NODE_PARAMS_v2; + CUDA_BATCH_MEM_OP_NODE_PARAMS_v1_st BATCH_MEM_OP_NODE_PARAMS_v1_st; + CUDA_BATCH_MEM_OP_NODE_PARAMS_v1 BATCH_MEM_OP_NODE_PARAMS_v1; + CUDA_BATCH_MEM_OP_NODE_PARAMS_v2_st BATCH_MEM_OP_NODE_PARAMS_v2_st; + CUDA_BATCH_MEM_OP_NODE_PARAMS_v2 BATCH_MEM_OP_NODE_PARAMS_v2; #endif #if CUDA_VERSION >= 12030 diff --git a/tests/unit_tests/synthetic/driver_typedefs.cu b/tests/unit_tests/synthetic/driver_typedefs.cu index 69aa0975..f2496620 100644 --- a/tests/unit_tests/synthetic/driver_typedefs.cu +++ b/tests/unit_tests/synthetic/driver_typedefs.cu @@ -60,6 +60,9 @@ int main() { // CHECK: HIP_MEMSET_NODE_PARAMS MEMSET_NODE_PARAMS_v1; CUDA_MEMSET_NODE_PARAMS_v1 MEMSET_NODE_PARAMS_v1; + + // CHECK: hipStreamBatchMemOpParams streamBatchMemOpParams_v1; + CUstreamBatchMemOpParams_v1 streamBatchMemOpParams_v1; #endif return 0; diff --git a/tests/unit_tests/synthetic/driver_unions.cu b/tests/unit_tests/synthetic/driver_unions.cu index 894939a5..116f67b3 100644 --- a/tests/unit_tests/synthetic/driver_unions.cu +++ b/tests/unit_tests/synthetic/driver_unions.cu @@ -7,6 +7,13 @@ int main() { printf("10. CUDA Driver API Unions synthetic test\n"); +#if CUDA_VERSION >= 8000 + // CHECK: hipStreamBatchMemOpParams streamBatchMemOpParams; + // CHECK-NEXT: hipStreamBatchMemOpParams_union streamBatchMemOpParams_union; + CUstreamBatchMemOpParams streamBatchMemOpParams; + CUstreamBatchMemOpParams_union streamBatchMemOpParams_union; +#endif + #if CUDA_VERSION >= 11000 // CHECK: hipKernelNodeAttrValue kernelNodeAttrValue; CUkernelNodeAttrValue kernelNodeAttrValue; diff --git a/tests/unit_tests/synthetic/libraries/cublas2hipblas.cu b/tests/unit_tests/synthetic/libraries/cublas2hipblas.cu index 9687afb1..ee15ab4c 100644 --- a/tests/unit_tests/synthetic/libraries/cublas2hipblas.cu +++ b/tests/unit_tests/synthetic/libraries/cublas2hipblas.cu @@ -1679,15 +1679,15 @@ int main() { cublasMath_t BLAS_TF32_TENSOR_OP_MATH = CUBLAS_TF32_TENSOR_OP_MATH; cublasMath_t BLAS_MATH_DISALLOW_REDUCED_PRECISION_REDUCTION = CUBLAS_MATH_DISALLOW_REDUCED_PRECISION_REDUCTION; - // CHECK: hip_bfloat16** bf16Aarray = 0; + // CHECK: __hip_bfloat16** bf16Aarray = 0; __nv_bfloat16** bf16Aarray = 0; - // CHECK: const hip_bfloat16** const bf16Aarray_const = const_cast(bf16Aarray); + // CHECK: const __hip_bfloat16** const bf16Aarray_const = const_cast(bf16Aarray); const __nv_bfloat16** const bf16Aarray_const = const_cast(bf16Aarray); - // CHECK: hip_bfloat16** bf16xarray = 0; + // CHECK: __hip_bfloat16** bf16xarray = 0; __nv_bfloat16** bf16xarray = 0; - // CHECK: const hip_bfloat16** const bf16xarray_const = const_cast(bf16xarray_const); + // CHECK: const __hip_bfloat16** const bf16xarray_const = const_cast(bf16xarray_const); const __nv_bfloat16** const bf16xarray_const = const_cast(bf16xarray_const); - // CHECK: hip_bfloat16** bf16yarray = 0; + // CHECK: __hip_bfloat16** bf16yarray = 0; __nv_bfloat16** bf16yarray = 0; // CHECK: hipblasComputeType_t blasComputeType; diff --git a/tests/unit_tests/synthetic/libraries/cublas2hipblas_v2.cu b/tests/unit_tests/synthetic/libraries/cublas2hipblas_v2.cu index 4576ad41..053d6a8e 100644 --- a/tests/unit_tests/synthetic/libraries/cublas2hipblas_v2.cu +++ b/tests/unit_tests/synthetic/libraries/cublas2hipblas_v2.cu @@ -1864,23 +1864,23 @@ int main() { cublasDataType_t R_16BF = CUDA_R_16BF; cublasDataType_t C_16BF = CUDA_C_16BF; - // CHECK: hip_bfloat16* bf16A = nullptr; + // CHECK: __hip_bfloat16* bf16A = nullptr; __nv_bfloat16* bf16A = nullptr; - // CHECK: hip_bfloat16** bf16Aarray = 0; + // CHECK: __hip_bfloat16** bf16Aarray = 0; __nv_bfloat16** bf16Aarray = 0; - // CHECK: const hip_bfloat16** const bf16Aarray_const = const_cast(bf16Aarray); + // CHECK: const __hip_bfloat16** const bf16Aarray_const = const_cast(bf16Aarray); const __nv_bfloat16** const bf16Aarray_const = const_cast(bf16Aarray); - // CHECK: hip_bfloat16* bf16X = nullptr; + // CHECK: __hip_bfloat16* bf16X = nullptr; __nv_bfloat16* bf16X = nullptr; - // CHECK: hip_bfloat16** bf16xarray = 0; + // CHECK: __hip_bfloat16** bf16xarray = 0; __nv_bfloat16** bf16xarray = 0; - // CHECK: const hip_bfloat16** const bf16xarray_const = const_cast(bf16xarray); + // CHECK: const __hip_bfloat16** const bf16xarray_const = const_cast(bf16xarray); const __nv_bfloat16** const bf16xarray_const = const_cast(bf16xarray); - // CHECK: hip_bfloat16* bf16Y = nullptr; + // CHECK: __hip_bfloat16* bf16Y = nullptr; __nv_bfloat16* bf16Y = nullptr; - // CHECK: hip_bfloat16** bf16yarray = 0; + // CHECK: __hip_bfloat16** bf16yarray = 0; __nv_bfloat16** bf16yarray = 0; - // CHECK: const hip_bfloat16** const bf16yarray_const = const_cast(bf16yarray); + // CHECK: const __hip_bfloat16** const bf16yarray_const = const_cast(bf16yarray); const __nv_bfloat16** const bf16yarray_const = const_cast(bf16yarray); // CHECK: hipblasComputeType_t blasComputeType; diff --git a/tests/unit_tests/synthetic/libraries/cublas2rocblas.cu b/tests/unit_tests/synthetic/libraries/cublas2rocblas.cu index 4fbcbdbd..46a2ee29 100644 --- a/tests/unit_tests/synthetic/libraries/cublas2rocblas.cu +++ b/tests/unit_tests/synthetic/libraries/cublas2rocblas.cu @@ -157,7 +157,7 @@ int main() { void* image = nullptr; void* image_2 = nullptr; - // https://github.com/ROCmSoftwarePlatform/rocBLAS/issues/1281 + // https://github.com/ROCm/rocBLAS/issues/1281 // TODO: Apply the chosen typecasting of int to rocblas_int arguments /* diff --git a/tests/unit_tests/synthetic/libraries/cublas2rocblas_v2.cu b/tests/unit_tests/synthetic/libraries/cublas2rocblas_v2.cu index 440b662b..2d501bcc 100644 --- a/tests/unit_tests/synthetic/libraries/cublas2rocblas_v2.cu +++ b/tests/unit_tests/synthetic/libraries/cublas2rocblas_v2.cu @@ -184,7 +184,7 @@ int main() { void *vy = nullptr; void *vresult = nullptr; - // https://github.com/ROCmSoftwarePlatform/rocBLAS/issues/1281 + // https://github.com/ROCm/rocBLAS/issues/1281 // TODO: Apply the chosen typecasting of int to rocblas_int arguments /* diff --git a/tests/unit_tests/synthetic/libraries/cublaslt2hipblaslt.cu b/tests/unit_tests/synthetic/libraries/cublaslt2hipblaslt.cu index 3c39f1b7..62d55036 100644 --- a/tests/unit_tests/synthetic/libraries/cublaslt2hipblaslt.cu +++ b/tests/unit_tests/synthetic/libraries/cublaslt2hipblaslt.cu @@ -13,7 +13,7 @@ #endif int main() { - printf("20. cuBLASLt API to hipBLASLt API synthetic test\n"); + printf("21. cuBLASLt API to hipBLASLt API synthetic test\n"); // CHECK: hipblasLtHandle_t blasLtHandle; cublasLtHandle_t blasLtHandle; diff --git a/tests/unit_tests/synthetic/libraries/cublaslt2hipblaslt_10010_10020.cu b/tests/unit_tests/synthetic/libraries/cublaslt2hipblaslt_10010_10020.cu index ee629d01..49dccd3a 100644 --- a/tests/unit_tests/synthetic/libraries/cublaslt2hipblaslt_10010_10020.cu +++ b/tests/unit_tests/synthetic/libraries/cublaslt2hipblaslt_10010_10020.cu @@ -8,7 +8,7 @@ // CHECK-NOT: #include "hipblaslt.h" int main() { - printf("20.1. cuBLASLt API to hipBLASLt API synthetic test\n"); + printf("21.10010.10020. cuBLASLt API to hipBLASLt API synthetic test\n"); #if CUDA_VERSION >= 10010 && CUDA_VERSION <= 10020 // CHECK: hipblasLtMatrixLayoutOpaque_t blasLtMatrixLayoutOpaque; diff --git a/tests/unit_tests/synthetic/libraries/cudevice2hipdevice.cu b/tests/unit_tests/synthetic/libraries/cudevice2hipdevice.cu new file mode 100644 index 00000000..48885a8f --- /dev/null +++ b/tests/unit_tests/synthetic/libraries/cudevice2hipdevice.cu @@ -0,0 +1,155 @@ +// RUN: %run_test hipify "%s" "%t" %hipify_args 3 --amap --skip-excluded-preprocessor-conditional-blocks --experimental %clang_args -ferror-limit=500 + +// CHECK: #include +#include +#include +// CHECK: #include "hip/hip_fp8.h" +#include "cuda_fp8.h" +// CHECK-NOT: #include "hip/hip_fp8.h" +// CHECK-NOT: #include "cuda_fp8.h" + +int main() { + printf("24. CUDA Device API to HIP Device API synthetic test\n"); + + double da = 0.0f; + double dx = 0.0f; + float fa = 0.0f; + float fx = 0.0f; + double2 d2 = { 0.0f, 0.0f }; + float2 f2 = { 0.0f, 0.0f }; + __half_raw hrx = { 0 }; + __half2_raw h2rx = { 0, 0 }; + +#if CUDA_VERSION >= 11000 + // CHECK: __hip_bfloat16 bf16 = { 0 }; + __nv_bfloat16 bf16 = { 0 }; + + // CHECK: __hip_bfloat16_raw bf16r = { 0 }; + __nv_bfloat16_raw bf16r = { 0 }; + + // CHECK: __hip_bfloat162 bf162 = { 0, 0 }; + // CHECK-NEXT: __hip_bfloat162 bf162a = { 0, 0 }; + // CHECK-NEXT: __hip_bfloat162 bf162b = { 0, 0 }; + __nv_bfloat162 bf162 = { 0, 0 }; + __nv_bfloat162 bf162a = { 0, 0 }; + __nv_bfloat162 bf162b = { 0, 0 }; + + // CHECK: __hip_bfloat162_raw bf162r = { 0, 0 }; + __nv_bfloat162_raw bf162r = { 0, 0 }; + + // CUDA: __CUDA_HOSTDEVICE_BF16_DECL__ __nv_bfloat16 __double2bfloat16(const double a); + // HIP: __BF16_HOST_DEVICE_STATIC__ __hip_bfloat16 __double2bfloat16(const double a) + // CHECK: bf16 = __double2bfloat16(da); + bf16 = __double2bfloat16(da); + + // CUDA: __CUDA_HOSTDEVICE_BF16_DECL__ __nv_bfloat16 __float2bfloat16(const float a); + // HIP: __BF16_HOST_DEVICE_STATIC__ __hip_bfloat16 __float2bfloat16(float f); + // CHECK: bf16 = __float2bfloat16(fa); + bf16 = __float2bfloat16(fa); + + // CUDA: __CUDA_HOSTDEVICE_BF16_DECL__ float __bfloat162float(const __nv_bfloat16 a); + // HIP: __BF16_HOST_DEVICE_STATIC__ float __bfloat162float(__hip_bfloat16 a); + // CHECK: bf16 = __bfloat162float(fa); + bf16 = __bfloat162float(fa); + + // CUDA: __CUDA_HOSTDEVICE_BF16_DECL__ float2 __bfloat1622float2(const __nv_bfloat162 a); + // HIP: __BF16_HOST_DEVICE_STATIC__ float2 __bfloat1622float2(const __hip_bfloat162 a); + // CHECK: f2 = __bfloat1622float2(bf162); + f2 = __bfloat1622float2(bf162); +#endif + +#if CUDA_VERSION >= 11080 + // CHECK: __hip_fp8_storage_t fp8_storage_t; + __nv_fp8_storage_t fp8_storage_t; + + // CHECK: __hip_fp8x2_storage_t fp8x2_storage_t; + __nv_fp8x2_storage_t fp8x2_storage_t; + + // CHECK: __hip_fp8x4_storage_t fp8x4_storage_t; + __nv_fp8x4_storage_t fp8x4_storage_t; + + // CHECK: __hip_fp8_e5m2_fnuz fp8_e5m2; + __nv_fp8_e5m2 fp8_e5m2; + + // CHECK: __hip_fp8x2_e5m2_fnuz fp8x2_e5m2; + __nv_fp8x2_e5m2 fp8x2_e5m2; + + // CHECK: __hip_fp8_e4m3_fnuz fp8_e4m3; + __nv_fp8_e4m3 fp8_e4m3; + + // CHECK: __hip_fp8x2_e4m3_fnuz fp8x2_e4m3; + __nv_fp8x2_e4m3 fp8x2_e4m3; + + // CHECK: __hip_fp8x4_e4m3_fnuz fp8x4_e4m3; + __nv_fp8x4_e4m3 fp8x4_e4m3; + + // CHECK: __hip_saturation_t saturation_t; + // CHECK-NEXT: __hip_saturation_t NOSAT = __HIP_NOSAT; + // CHECK-NEXT: __hip_saturation_t SATFINITE = __HIP_SATFINITE; + __nv_saturation_t saturation_t; + __nv_saturation_t NOSAT = __NV_NOSAT; + __nv_saturation_t SATFINITE = __NV_SATFINITE; + + // CHECK: __hip_fp8_interpretation_t fp8_interpretation_t; + // CHECK-NEXT: __hip_fp8_interpretation_t E4M3 = __HIP_E4M3_FNUZ; + // CHECK-NEXT: __hip_fp8_interpretation_t E5M2 = __HIP_E5M2_FNUZ; + __nv_fp8_interpretation_t fp8_interpretation_t; + __nv_fp8_interpretation_t E4M3 = __NV_E4M3; + __nv_fp8_interpretation_t E5M2 = __NV_E5M2; + + // CHECK: __hip_fp8x4_e5m2_fnuz fp8x4_e5m2; + __nv_fp8x4_e5m2 fp8x4_e5m2; + + // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __nv_fp8_storage_t __nv_cvt_double_to_fp8(const double x, const __nv_saturation_t saturate, const __nv_fp8_interpretation_t fp8_interpretation); + // HIP: __FP8_HOST_DEVICE_STATIC__ __hip_fp8_storage_t __hip_cvt_double_to_fp8(const double d, const __hip_saturation_t sat, const __hip_fp8_interpretation_t type); + // CHECK: fp8_storage_t = __hip_cvt_double_to_fp8(dx, saturation_t, fp8_interpretation_t); + fp8_storage_t = __nv_cvt_double_to_fp8(dx, saturation_t, fp8_interpretation_t); + + // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __nv_fp8x2_storage_t __nv_cvt_double2_to_fp8x2(const double2 x, const __nv_saturation_t saturate, const __nv_fp8_interpretation_t fp8_interpretation); + // HIP: __FP8_HOST_DEVICE_STATIC__ __hip_fp8x2_storage_t __hip_cvt_double2_to_fp8x2(const double2 d2, const __hip_saturation_t sat, const __hip_fp8_interpretation_t type); + // CHECK: fp8x2_storage_t = __hip_cvt_double2_to_fp8x2(d2, saturation_t, fp8_interpretation_t); + fp8x2_storage_t = __nv_cvt_double2_to_fp8x2(d2, saturation_t, fp8_interpretation_t); + + // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __nv_fp8_storage_t __nv_cvt_float_to_fp8(const float x, const __nv_saturation_t saturate, const __nv_fp8_interpretation_t fp8_interpretation); + // HIP: __FP8_HOST_DEVICE_STATIC__ __hip_fp8_storage_t __hip_cvt_float_to_fp8(const float f, const __hip_saturation_t sat, const __hip_fp8_interpretation_t type); + // CHECK: fp8_storage_t = __hip_cvt_float_to_fp8(fx, saturation_t, fp8_interpretation_t); + fp8_storage_t = __nv_cvt_float_to_fp8(fx, saturation_t, fp8_interpretation_t); + + // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __nv_fp8x2_storage_t __nv_cvt_float2_to_fp8x2(const float2 x, const __nv_saturation_t saturate, const __nv_fp8_interpretation_t fp8_interpretation); + // HIP: __FP8_HOST_DEVICE_STATIC__ __hip_fp8x2_storage_t __hip_cvt_float2_to_fp8x2(const float2 f2, const __hip_saturation_t sat, const __hip_fp8_interpretation_t type); + // CHECK: fp8x2_storage_t = __hip_cvt_float2_to_fp8x2(f2, saturation_t, fp8_interpretation_t); + fp8x2_storage_t = __nv_cvt_float2_to_fp8x2(f2, saturation_t, fp8_interpretation_t); + + // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __nv_fp8_storage_t __nv_cvt_halfraw_to_fp8(const __half_raw x, const __nv_saturation_t saturate, const __nv_fp8_interpretation_t fp8_interpretation); + // HIP: __FP8_HOST_DEVICE_STATIC__ __hip_fp8_storage_t __hip_cvt_halfraw_to_fp8(const __half_raw x, const __hip_saturation_t sat, const __hip_fp8_interpretation_t type); + // CHECK: fp8_storage_t = __hip_cvt_halfraw_to_fp8(hrx, saturation_t, fp8_interpretation_t); + fp8_storage_t = __nv_cvt_halfraw_to_fp8(hrx, saturation_t, fp8_interpretation_t); + + // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __nv_fp8x2_storage_t __nv_cvt_halfraw2_to_fp8x2(const __half2_raw x, const __nv_saturation_t saturate, const __nv_fp8_interpretation_t fp8_interpretation); + // HIP: __FP8_HOST_DEVICE_STATIC__ __hip_fp8x2_storage_t __hip_cvt_halfraw2_to_fp8x2(const __half2_raw x, const __hip_saturation_t sat, const __hip_fp8_interpretation_t type); + // CHECK: fp8x2_storage_t = __hip_cvt_halfraw2_to_fp8x2(h2rx, saturation_t, fp8_interpretation_t); + fp8x2_storage_t = __nv_cvt_halfraw2_to_fp8x2(h2rx, saturation_t, fp8_interpretation_t); + + // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __nv_fp8_storage_t __nv_cvt_bfloat16raw_to_fp8(const __nv_bfloat16_raw x, const __nv_saturation_t saturate, const __nv_fp8_interpretation_t fp8_interpretation); + // HIP: __FP8_HOST_DEVICE_STATIC__ __hip_fp8_storage_t __hip_cvt_bfloat16raw_to_fp8(const __hip_bfloat16_raw hr, const __hip_saturation_t sat, const __hip_fp8_interpretation_t type); + // CHECK: fp8_storage_t = __hip_cvt_bfloat16raw_to_fp8(bf16r, saturation_t, fp8_interpretation_t); + fp8_storage_t = __nv_cvt_bfloat16raw_to_fp8(bf16r, saturation_t, fp8_interpretation_t); + + // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __nv_fp8x2_storage_t __nv_cvt_bfloat16raw2_to_fp8x2(const __nv_bfloat162_raw x, const __nv_saturation_t saturate, const __nv_fp8_interpretation_t fp8_interpretation); + // HIP: __FP8_HOST_DEVICE_STATIC__ __hip_fp8x2_storage_t __hip_cvt_bfloat16raw2_to_fp8x2(const __hip_bfloat162_raw hr, const __hip_saturation_t sat, const __hip_fp8_interpretation_t type); + // CHECK: fp8x2_storage_t = __hip_cvt_bfloat16raw2_to_fp8x2(bf162r, saturation_t, fp8_interpretation_t); + fp8x2_storage_t = __nv_cvt_bfloat16raw2_to_fp8x2(bf162r, saturation_t, fp8_interpretation_t); + + // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __half_raw __nv_cvt_fp8_to_halfraw(const __nv_fp8_storage_t x, const __nv_fp8_interpretation_t fp8_interpretation); + // HIP: __FP8_HOST_DEVICE_STATIC__ __half_raw __hip_cvt_fp8_to_halfraw(const __hip_fp8_storage_t x, const __hip_fp8_interpretation_t type); + // CHECK: hrx = __hip_cvt_fp8_to_halfraw(fp8_storage_t, fp8_interpretation_t); + hrx = __nv_cvt_fp8_to_halfraw(fp8_storage_t, fp8_interpretation_t); + + // CUDA: __CUDA_HOSTDEVICE_FP8_DECL__ __half2_raw __nv_cvt_fp8x2_to_halfraw2(const __nv_fp8x2_storage_t x, const __nv_fp8_interpretation_t fp8_interpretation); + // HIP: __FP8_HOST_DEVICE_STATIC__ __half2_raw __hip_cvt_fp8x2_to_halfraw2(const __hip_fp8x2_storage_t x, const __hip_fp8_interpretation_t type); + // CHECK: h2rx = __hip_cvt_fp8x2_to_halfraw2(fp8x2_storage_t, fp8_interpretation_t); + h2rx = __nv_cvt_fp8x2_to_halfraw2(fp8x2_storage_t, fp8_interpretation_t); +#endif + + return 0; +} diff --git a/tests/unit_tests/synthetic/libraries/cudevice2hipdevice_before_11080_after_12011.cu b/tests/unit_tests/synthetic/libraries/cudevice2hipdevice_before_11080_after_12011.cu new file mode 100644 index 00000000..fd0ae08c --- /dev/null +++ b/tests/unit_tests/synthetic/libraries/cudevice2hipdevice_before_11080_after_12011.cu @@ -0,0 +1,58 @@ +// RUN: %run_test hipify "%s" "%t" %hipify_args 3 --amap --skip-excluded-preprocessor-conditional-blocks --experimental %clang_args -ferror-limit=500 + +// CHECK: #include +#include +#include +// CHECK: #include "hip/hip_fp8.h" +#include "cuda_fp8.h" +// CHECK-NOT: #include "hip/hip_fp8.h" +// CHECK-NOT: #include "cuda_fp8.h" + +int main() { + printf("24.before_11080_after_12011, CUDA Device API to HIP Device API synthetic test\n"); + + double da = 0.0f; + double dx = 0.0f; + float fa = 0.0f; + float fx = 0.0f; + double2 d2 = { 0.0f, 0.0f }; + float2 f2 = { 0.0f, 0.0f }; + __half_raw hrx = { 0 }; + __half2_raw h2rx = { 0, 0 }; + +#if CUDA_VERSION >= 11000 + // CHECK: __hip_bfloat16 bf16 = { 0 }; + __nv_bfloat16 bf16 = { 0 }; + // CHECK: __hip_bfloat162 bf162 = { 0, 0 }; + // CHECK-NEXT: __hip_bfloat162 bf162a = { 0, 0 }; + // CHECK-NEXT: __hip_bfloat162 bf162b = { 0, 0 }; + __nv_bfloat162 bf162 = { 0, 0 }; + __nv_bfloat162 bf162a = { 0, 0 }; + __nv_bfloat162 bf162b = { 0, 0 }; + +#if CUDA_VERSION < 11080 || CUDA_VERSION >= 12000 + // CUDA: __CUDA_HOSTDEVICE_BF16_DECL__ __nv_bfloat162 __bfloat162bfloat162(const __nv_bfloat16 a); + // HIP: __BF16_HOST_DEVICE_STATIC__ __hip_bfloat162 __bfloat162bfloat162(const __hip_bfloat16 a); + // CHECK: bf162 = __bfloat162bfloat162(bf16); + bf162 = __bfloat162bfloat162(bf16); + + // CUDA: __CUDA_HOSTDEVICE_BF16_DECL__ __nv_bfloat162 __lows2bfloat162(const __nv_bfloat162 a, const __nv_bfloat162 b); + // HIP: __BF16_HOST_DEVICE_STATIC__ __hip_bfloat162 __lows2bfloat162(const __hip_bfloat162 a, const __hip_bfloat162 b); + // CHECK: bf162 = __lows2bfloat162(bf162a, bf162b); + bf162 = __lows2bfloat162(bf162a, bf162b); + + // CUDA: __CUDA_HOSTDEVICE_BF16_DECL__ __nv_bfloat162 __highs2bfloat162(const __nv_bfloat162 a, const __nv_bfloat162 b); + // HIP: __BF16_HOST_DEVICE_STATIC__ __hip_bfloat162 __highs2bfloat162(const __hip_bfloat162 a, const __hip_bfloat162 b); + // CHECK: bf162 = __highs2bfloat162(bf162a, bf162b); + bf162 = __highs2bfloat162(bf162a, bf162b); + + // CUDA: __CUDA_HOSTDEVICE_BF16_DECL__ __nv_bfloat16 __high2bfloat16(const __nv_bfloat162 a); + // HIP: __BF16_HOST_DEVICE_STATIC__ __hip_bfloat16 __high2bfloat16(const __hip_bfloat162 a); + // CHECK: bf16 = __high2bfloat16(bf162a); + bf16 = __high2bfloat16(bf162a); +#endif + +#endif + + return 0; +} diff --git a/tests/unit_tests/synthetic/libraries/cudnn2miopen_before_9000.cu b/tests/unit_tests/synthetic/libraries/cudnn2miopen_before_9000.cu index 8d218e12..cd4b443e 100644 --- a/tests/unit_tests/synthetic/libraries/cudnn2miopen_before_9000.cu +++ b/tests/unit_tests/synthetic/libraries/cudnn2miopen_before_9000.cu @@ -7,7 +7,7 @@ #include "cudnn.h" int main() { - printf("15.1. cuDNN API to MIOpen API synthetic test\n"); + printf("15.before.9000. cuDNN API to MIOpen API synthetic test\n"); // CHECK: miopenStatus_t status; cudnnStatus_t status; diff --git a/tests/unit_tests/synthetic/libraries/curand2hiprand.cu b/tests/unit_tests/synthetic/libraries/curand2hiprand.cu index 4b43299e..e00afca5 100644 --- a/tests/unit_tests/synthetic/libraries/curand2hiprand.cu +++ b/tests/unit_tests/synthetic/libraries/curand2hiprand.cu @@ -16,7 +16,7 @@ #endif int main() { - printf("21. cuRAND API to hipRAND API synthetic test\n"); + printf("22. cuRAND API to hipRAND API synthetic test\n"); unsigned int *outputPtr = nullptr; unsigned int *constants = nullptr; diff --git a/tests/unit_tests/synthetic/libraries/curand2rocrand.cu b/tests/unit_tests/synthetic/libraries/curand2rocrand.cu index 93a168c0..0e5219e9 100644 --- a/tests/unit_tests/synthetic/libraries/curand2rocrand.cu +++ b/tests/unit_tests/synthetic/libraries/curand2rocrand.cu @@ -11,7 +11,7 @@ // CHECK-NOT: #include "rocrand/rocrand_kernel.h" int main() { - printf("21.1. cuRAND API to rocRAND API synthetic test\n"); + printf("23. cuRAND API to rocRAND API synthetic test\n"); unsigned int *outputPtr = nullptr; unsigned int *constants = nullptr; diff --git a/tests/unit_tests/synthetic/libraries/cusparse2hipsparse_11030_12000.cu b/tests/unit_tests/synthetic/libraries/cusparse2hipsparse_11030_12000.cu index cdb007cd..67bf8d90 100644 --- a/tests/unit_tests/synthetic/libraries/cusparse2hipsparse_11030_12000.cu +++ b/tests/unit_tests/synthetic/libraries/cusparse2hipsparse_11030_12000.cu @@ -15,7 +15,7 @@ #endif int main() { - printf("17.1. cuSPARSE API to hipSPARSE API synthetic test\n"); + printf("17.11030.12000. cuSPARSE API to hipSPARSE API synthetic test\n"); // CHECK: hipsparseStatus_t status_t; cusparseStatus_t status_t; diff --git a/tests/unit_tests/synthetic/libraries/cusparse2hipsparse_12000.cu b/tests/unit_tests/synthetic/libraries/cusparse2hipsparse_12000.cu index c7ede80f..9efb8dd0 100644 --- a/tests/unit_tests/synthetic/libraries/cusparse2hipsparse_12000.cu +++ b/tests/unit_tests/synthetic/libraries/cusparse2hipsparse_12000.cu @@ -15,7 +15,7 @@ #endif int main() { - printf("17.1. cuSPARSE API to hipSPARSE API synthetic test\n"); + printf("17.12000. cuSPARSE API to hipSPARSE API synthetic test\n"); // CHECK: hipsparseStatus_t status_t; cusparseStatus_t status_t; diff --git a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_10000.cu b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_10000.cu index a4ac4567..6d8f5485 100644 --- a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_10000.cu +++ b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_10000.cu @@ -10,7 +10,7 @@ // CHECK-NOT: #include "rocsparse.h" int main() { - printf("18.1. cuSPARSE API to rocSPARSE API synthetic test\n"); + printf("18.10000. cuSPARSE API to rocSPARSE API synthetic test\n"); // CHECK: _rocsparse_handle *handle = nullptr; // CHECK-NEXT: rocsparse_handle handle_t; diff --git a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_10010.cu b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_10010.cu index 15edb71a..7d38708a 100644 --- a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_10010.cu +++ b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_10010.cu @@ -10,7 +10,7 @@ // CHECK-NOT: #include "rocsparse.h" int main() { - printf("18.1. cuSPARSE API to rocSPARSE API synthetic test\n"); + printf("18.10010. cuSPARSE API to rocSPARSE API synthetic test\n"); // CHECK: _rocsparse_handle *handle = nullptr; // CHECK-NEXT: rocsparse_handle handle_t; diff --git a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_10010_12000.cu b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_10010_12000.cu index 8c46c386..d9794c3d 100644 --- a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_10010_12000.cu +++ b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_10010_12000.cu @@ -10,7 +10,7 @@ // CHECK-NOT: #include "rocsparse.h" int main() { - printf("18.1. cuSPARSE API to rocSPARSE API synthetic test\n"); + printf("18.10010.12000. cuSPARSE API to rocSPARSE API synthetic test\n"); // CHECK: _rocsparse_handle *handle = nullptr; // CHECK-NEXT: rocsparse_handle handle_t; diff --git a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_11010_12000.cu b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_11010_12000.cu index ed751fa3..d6cf3a0d 100644 --- a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_11010_12000.cu +++ b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_11010_12000.cu @@ -10,7 +10,7 @@ // CHECK-NOT: #include "rocsparse.h" int main() { - printf("18.1. cuSPARSE API to rocSPARSE API synthetic test\n"); + printf("18.11010.12000. cuSPARSE API to rocSPARSE API synthetic test\n"); // CHECK: rocsparse_status status_t; cusparseStatus_t status_t; diff --git a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_11030_12000.cu b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_11030_12000.cu index 48faf09e..a4e47383 100644 --- a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_11030_12000.cu +++ b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_11030_12000.cu @@ -10,7 +10,7 @@ // CHECK-NOT: #include "rocsparse.h" int main() { - printf("18.1. cuSPARSE API to rocSPARSE API synthetic test\n"); + printf("18.11030.12000. cuSPARSE API to rocSPARSE API synthetic test\n"); // CHECK: rocsparse_status status_t; cusparseStatus_t status_t; diff --git a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_12000.cu b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_12000.cu index 1bac5840..20d4d038 100644 --- a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_12000.cu +++ b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_12000.cu @@ -10,7 +10,7 @@ // CHECK-NOT: #include "rocsparse.h" int main() { - printf("18.1. cuSPARSE API to rocSPARSE API synthetic test\n"); + printf("18.12000. cuSPARSE API to rocSPARSE API synthetic test\n"); // CHECK: rocsparse_status status_t; cusparseStatus_t status_t; diff --git a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_7050.cu b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_7050.cu index a52c62ef..d1e70bb1 100644 --- a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_7050.cu +++ b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_7050.cu @@ -10,7 +10,7 @@ // CHECK-NOT: #include "rocsparse.h" int main() { - printf("18.1. cuSPARSE API to rocSPARSE API synthetic test\n"); + printf("18.7050. cuSPARSE API to rocSPARSE API synthetic test\n"); // CHECK: _rocsparse_handle *handle = nullptr; // CHECK-NEXT: rocsparse_handle handle_t; diff --git a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_9020.cu b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_9020.cu index e827ffcc..291a2844 100644 --- a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_9020.cu +++ b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_9020.cu @@ -10,7 +10,7 @@ // CHECK-NOT: #include "rocsparse.h" int main() { - printf("18.1. cuSPARSE API to rocSPARSE API synthetic test\n"); + printf("18.9020. cuSPARSE API to rocSPARSE API synthetic test\n"); // CHECK: _rocsparse_handle *handle = nullptr; // CHECK-NEXT: rocsparse_handle handle_t; diff --git a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_9020_12000.cu b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_9020_12000.cu index be539aa7..7c5f2183 100644 --- a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_9020_12000.cu +++ b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_9020_12000.cu @@ -10,7 +10,7 @@ // CHECK-NOT: #include "rocsparse.h" int main() { - printf("18.1. cuSPARSE API to rocSPARSE API synthetic test\n"); + printf("18.9020.12000. cuSPARSE API to rocSPARSE API synthetic test\n"); // CHECK: _rocsparse_handle *handle = nullptr; // CHECK-NEXT: rocsparse_handle handle_t; diff --git a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_before_11000.cu b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_before_11000.cu index ecc91c78..be49c2e1 100644 --- a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_before_11000.cu +++ b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_before_11000.cu @@ -10,7 +10,7 @@ // CHECK-NOT: #include "rocsparse.h" int main() { - printf("18.1. cuSPARSE API to rocSPARSE API synthetic test\n"); + printf("18.before.11000. cuSPARSE API to rocSPARSE API synthetic test\n"); // CHECK: rocsparse_status status_t; cusparseStatus_t status_t; diff --git a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_before_12000.cu b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_before_12000.cu index 6c6d4bf5..22208e5e 100644 --- a/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_before_12000.cu +++ b/tests/unit_tests/synthetic/libraries/cusparse2rocsparse_before_12000.cu @@ -10,7 +10,7 @@ // CHECK-NOT: #include "rocsparse.h" int main() { - printf("18.1. cuSPARSE API to rocSPARSE API synthetic test\n"); + printf("18.before.12000. cuSPARSE API to rocSPARSE API synthetic test\n"); // CHECK: rocsparse_status status_t; cusparseStatus_t status_t; diff --git a/tests/unit_tests/synthetic/libraries/cutensor2hiptensor.cu b/tests/unit_tests/synthetic/libraries/cutensor2hiptensor.cu new file mode 100644 index 00000000..509cc6a3 --- /dev/null +++ b/tests/unit_tests/synthetic/libraries/cutensor2hiptensor.cu @@ -0,0 +1,277 @@ +// RUN: %run_test hipify "%s" "%t" %hipify_args 3 --amap --skip-excluded-preprocessor-conditional-blocks --experimental %clang_args -D__CUDA_API_VERSION_INTERNAL -ferror-limit=500 + +// CHECK: #include +#include +#include +// CHECK: #include "hiptensor.h" +#include "cutensor.h" +// CHECK-NOT: #include "hiptensor.h" + +int main() { + printf("25. cuTensor API to hipTensor API synthetic test\n"); + + // CHECK: hiptensorHandle_t handle; + // CHECK-NEXT: const hiptensorHandle_t *handle_c = nullptr; + // CHECK-NEXT: hiptensorHandle_t *handle2 = nullptr; + cutensorHandle_t handle; + const cutensorHandle_t *handle_c = nullptr; + cutensorHandle_t *handle2 = nullptr; + + //CHECK: hiptensorStatus_t status; + cutensorStatus_t status; + + //CHECK: hiptensorTensorDescriptor_t *tensorDescriptor = nullptr; + //CHECK-NEXT: hiptensorTensorDescriptor_t *descA = nullptr; + //CHECK-NEXT: hiptensorTensorDescriptor_t *descB = nullptr; + //CHECK-NEXT: hiptensorTensorDescriptor_t *descC = nullptr; + //CHECK-NEXT: hiptensorTensorDescriptor_t *descD = nullptr; + cutensorTensorDescriptor_t *tensorDescriptor = nullptr; + cutensorTensorDescriptor_t *descA = nullptr; + cutensorTensorDescriptor_t *descB = nullptr; + cutensorTensorDescriptor_t *descC = nullptr; + cutensorTensorDescriptor_t *descD = nullptr; + + // CHECK: hipDataType dataType; + cudaDataType dataType; + + // CHECK: hipStream_t stream_t; + cudaStream_t stream_t; + + const uint32_t numModes = 0; + const int64_t *extent = nullptr; + const int64_t *stride = nullptr; + const uint64_t workspaceSize = 0; + uint64_t workspaceSize2 = 0; + const void *alpha = nullptr; + const void *A = nullptr; + const int32_t *modeA = nullptr; + void *B = nullptr; + const void *B_1 = nullptr; + const void *beta = nullptr; + const int32_t *modeB = nullptr; + const void *C = nullptr; + const int32_t *modeC = nullptr; + void *D = nullptr; + const int32_t *modeD = nullptr; + void *workspace = nullptr; + const char *err = nullptr; + const char *log = nullptr; + size_t ver = 0; + FILE *file = nullptr; + int32_t level = 0; + int32_t mask = 0; + +#if CUTENSOR_MAJOR >= 2 + // CHECK: hiptensorComputeType_t tensorDataType_t; + // CHECK-NEXT hiptensorComputeType_t TENSOR_R_16F = HIPTENSOR_COMPUTE_16F; + // CHECK-NEXT hiptensorComputeType_t TENSOR_R_16BF = HIPTENSOR_COMPUTE_16BF; + // CHECK-NEXT hiptensorComputeType_t TENSOR_R_32F = HIPTENSOR_COMPUTE_32F; + // CHECK-NEXT hiptensorComputeType_t TENSOR_C_32F = HIPTENSOR_COMPUTE_C32F; + // CHECK-NEXT hiptensorComputeType_t TENSOR_R_64F = HIPTENSOR_COMPUTE_64F; + // CHECK-NEXT hiptensorComputeType_t TENSOR_C_64F = HIPTENSOR_COMPUTE_C64F; + // CHECK-NEXT hiptensorComputeType_t TENSOR_R_8I = HIPTENSOR_COMPUTE_8I; + // CHECK-NEXT hiptensorComputeType_t TENSOR_R_8U = HIPTENSOR_COMPUTE_8U; + // CHECK-NEXT hiptensorComputeType_t TENSOR_R_32I = HIPTENSOR_COMPUTE_32I; + // CHECK-NEXT hiptensorComputeType_t TENSOR_R_32U = HIPTENSOR_COMPUTE_32U; + cutensorDataType_t tensorDataType_t; + cutensorDataType_t TENSOR_R_16F = CUTENSOR_R_16F; + cutensorDataType_t TENSOR_R_16BF = CUTENSOR_R_16BF; + cutensorDataType_t TENSOR_R_32F = CUTENSOR_R_32F; + cutensorDataType_t TENSOR_C_32F = CUTENSOR_C_32F; + cutensorDataType_t TENSOR_R_64F = CUTENSOR_R_64F; + cutensorDataType_t TENSOR_C_64F = CUTENSOR_C_64F; + cutensorDataType_t TENSOR_R_8I = CUTENSOR_R_8I; + cutensorDataType_t TENSOR_R_8U = CUTENSOR_R_8U; + cutensorDataType_t TENSOR_R_32I = CUTENSOR_R_32I; + cutensorDataType_t TENSOR_R_32U = CUTENSOR_R_32U; + + // CHECK: hiptensorContractionPlan_t tensorPlan2_t; + cutensorPlan_t tensorPlan2_t; + + // CUDA: cutensorStatus_t cutensorContract(const cutensorHandle_t handle, const cutensorPlan_t plan, const void* alpha, const void *A, const void *B, const void* beta, const void *C, void *D, void* workspace, uint64_t workspaceSize, cudaStream_t stream); + // HIP: hiptensorStatus_t hiptensorContraction(const hiptensorHandle_t* handle, const hiptensorContractionPlan_t* plan, const void* alpha, const void* A, const void* B, const void* beta, const void* C, void* D, void* workspace, uint64_t workspaceSize, hipStream_t stream); + // CHECK: status = hiptensorContraction(handle, tensorPlan2_t, alpha, A, B_1, beta, C, D, workspace, workspaceSize2, stream_t); + status = cutensorContract(handle, tensorPlan2_t, alpha, A, B_1, beta, C, D, workspace, workspaceSize2, stream_t); + + // CUDA: cutensorStatus_t cutensorCreate(cutensorHandle_t* handle); + // HIP: hiptensorStatus_t hiptensorCreate(hiptensorHandle_t** handle); + // CHECK: status = hiptensorCreate(&handle); + status = cutensorCreate(&handle); + + // CUDA: cutensorStatus_t cutensorDestroy(cutensorHandle_t handle); + // HIP: hiptensorStatus_t hiptensorDestroy(hiptensorHandle_t* handle); + // CHECK: status = hiptensorDestroy(handle); + status = cutensorDestroy(handle); +#endif + +#if CUTENSOR_MAJOR >= 1 + // CHECK: hiptensorOperator_t tensorOperator_t; + // CHECK-NEXT hiptensorOperator_t TENSOR_OP_IDENTITY = HIPTENSOR_OP_IDENTITY; + // CHECK-NEXT hiptensorOperator_t TENSOR_OP_SQRT = HIPTENSOR_OP_SQRT; + // CHECK-NEXT hiptensorOperator_t TENSOR_OP_ADD = HIPTENSOR_OP_ADD; + // CHECK-NEXT hiptensorOperator_t TENSOR_OP_MUL = HIPTENSOR_OP_MUL; + // CHECK-NEXT hiptensorOperator_t TENSOR_OP_MAX = HIPTENSOR_OP_MAX; + // CHECK-NEXT hiptensorOperator_t TENSOR_OP_MIN = HIPTENSOR_OP_MIN; + // CHECK-NEXT hiptensorOperator_t TENSOR_OP_UNKNOWN = HIPTENSOR_OP_UNKNOWN; + cutensorOperator_t tensorOperator_t; + cutensorOperator_t TENSOR_OP_IDENTITY = CUTENSOR_OP_IDENTITY; + cutensorOperator_t TENSOR_OP_SQRT = CUTENSOR_OP_SQRT; + cutensorOperator_t TENSOR_OP_ADD = CUTENSOR_OP_ADD; + cutensorOperator_t TENSOR_OP_MUL = CUTENSOR_OP_MUL; + cutensorOperator_t TENSOR_OP_MAX = CUTENSOR_OP_MAX; + cutensorOperator_t TENSOR_OP_MIN = CUTENSOR_OP_MIN; + cutensorOperator_t TENSOR_OP_UNKNOWN = CUTENSOR_OP_UNKNOWN; + + // CHECK: hiptensorStatus_t tensorStatus_t; + // CHECK-NEXT hiptensorStatus_t TENSOR_STATUS_SUCCESS = HIPTENSOR_STATUS_SUCCESS; + // CHECK-NEXT hiptensorStatus_t TENSOR_STATUS_NOT_INITIALIZED = HIPTENSOR_STATUS_NOT_INITIALIZED; + // CHECK-NEXT hiptensorStatus_t TENSOR_STATUS_ALLOC_FAILED = HIPTENSOR_STATUS_ALLOC_FAILED; + // CHECK-NEXT hiptensorStatus_t TENSOR_STATUS_INVALID_VALUE = HIPTENSOR_STATUS_INVALID_VALUE; + // CHECK-NEXT hiptensorStatus_t TENSOR_STATUS_ARCH_MISMATCH = HIPTENSOR_STATUS_ARCH_MISMATCH; + // CHECK-NEXT hiptensorStatus_t TENSOR_STATUS_EXECUTION_FAILED = HIPTENSOR_STATUS_EXECUTION_FAILED; + // CHECK-NEXT hiptensorStatus_t TENSOR_STATUS_INTERNAL_ERROR = HIPTENSOR_STATUS_INTERNAL_ERROR; + // CHECK-NEXT hiptensorStatus_t TENSOR_STATUS_NOT_SUPPORTED = HIPTENSOR_STATUS_NOT_SUPPORTED; + // CHECK-NEXT hiptensorStatus_t TENSOR_STATUS_INSUFFICIENT_WORKSPACE = HIPTENSOR_STATUS_INSUFFICIENT_WORKSPACE; + // CHECK-NEXT hiptensorStatus_t TENSOR_STATUS_INSUFFICIENT_DRIVER = HIPTENSOR_STATUS_INSUFFICIENT_DRIVER; + cutensorStatus_t tensorStatus_t; + cutensorStatus_t TENSOR_STATUS_SUCCESS = CUTENSOR_STATUS_SUCCESS; + cutensorStatus_t TENSOR_STATUS_NOT_INITIALIZED = CUTENSOR_STATUS_NOT_INITIALIZED; + cutensorStatus_t TENSOR_STATUS_ALLOC_FAILED = CUTENSOR_STATUS_ALLOC_FAILED; + cutensorStatus_t TENSOR_STATUS_INVALID_VALUE = CUTENSOR_STATUS_INVALID_VALUE; + cutensorStatus_t TENSOR_STATUS_ARCH_MISMATCH = CUTENSOR_STATUS_ARCH_MISMATCH; + cutensorStatus_t TENSOR_STATUS_EXECUTION_FAILED = CUTENSOR_STATUS_EXECUTION_FAILED; + cutensorStatus_t TENSOR_STATUS_INTERNAL_ERROR = CUTENSOR_STATUS_INTERNAL_ERROR; + cutensorStatus_t TENSOR_STATUS_NOT_SUPPORTED = CUTENSOR_STATUS_NOT_SUPPORTED; + cutensorStatus_t TENSOR_STATUS_INSUFFICIENT_WORKSPACE = CUTENSOR_STATUS_INSUFFICIENT_WORKSPACE; + cutensorStatus_t TENSOR_STATUS_INSUFFICIENT_DRIVER = CUTENSOR_STATUS_INSUFFICIENT_DRIVER; + + // CHECK: hiptensorAlgo_t tensorAlgo_t; + // CHECK-NEXT hiptensorAlgo_t TENSOR_ALGO_DEFAULT = HIPTENSOR_ALGO_DEFAULT; + cutensorAlgo_t tensorAlgo_t; + cutensorAlgo_t TENSOR_ALGO_DEFAULT = CUTENSOR_ALGO_DEFAULT; + + // CHECK: hiptensorWorksizePreference_t tensorWorksizePreference_t; + // Check-NEXT TENSOR_WORKSPACE_MIN = HIPTENSOR_WORKSPACE_MIN; + // CHECK-NEXT TENSOR_WORKSPACE_MAX = HIPTENSOR_WORKSPACE_MAX; + cutensorWorksizePreference_t tensorWorksizePreference_t; + cutensorWorksizePreference_t TENSOR_WORKSPACE_MIN = CUTENSOR_WORKSPACE_MIN; + cutensorWorksizePreference_t TENSOR_WORKSPACE_MAX = CUTENSOR_WORKSPACE_MAX; + + // CUDA: const char* cutensorGetErrorString(const cutensorStatus_t error); + // HIP: const char* hiptensorGetErrorString(const hiptensorStatus_t error); + // CHECK: err = hiptensorGetErrorString(status); + err = cutensorGetErrorString(status); + + // CUDA: size_t cutensorGetCudartVersion(); + // HIP: int hiptensorGetHiprtVersion(); + // CHECK: ver = hiptensorGetHiprtVersion(); + ver = cutensorGetCudartVersion(); +#endif + +#if (CUTENSOR_MAJOR == 1 && CUTENSOR_MINOR >= 4) || CUTENSOR_MAJOR >= 2 + // CHECK: hiptensorAlgo_t TENSOR_ALGO_DEFAULT_PATIENT = HIPTENSOR_ALGO_DEFAULT_PATIENT; + cutensorAlgo_t TENSOR_ALGO_DEFAULT_PATIENT = CUTENSOR_ALGO_DEFAULT_PATIENT; +#endif + +#if (CUTENSOR_MAJOR >= 1 && CUTENSOR_MAJOR < 2) + // CHECK: hiptensorComputeType_t tensorComputeType_t; + cutensorComputeType_t tensorComputeType_t; + +#if CUTENSOR_MINOR >= 2 + // CHECK: hiptensorStatus_t TENSOR_STATUS_IO_ERROR = HIPTENSOR_STATUS_IO_ERROR; + cutensorStatus_t TENSOR_STATUS_IO_ERROR = CUTENSOR_STATUS_IO_ERROR; + + // CHECK hiptensorComputeType_t TENSOR_COMPUTE_16F = HIPTENSOR_COMPUTE_16F; + // CHECK-NEXT hiptensorComputeType_t TENSOR_COMPUTE_16BF = HIPTENSOR_COMPUTE_16BF; + // CHECK-NEXT hiptensorComputeType_t TENSOR_COMPUTE_32F = HIPTENSOR_COMPUTE_32F; + // CHECK-NEXT hiptensorComputeType_t TENSOR_COMPUTE_64F = HIPTENSOR_COMPUTE_64F; + // CHECK-NEXT hiptensorComputeType_t TENSOR_COMPUTE_8U = HIPTENSOR_COMPUTE_8U; + // CHECK-NEXT hiptensorComputeType_t TENSOR_COMPUTE_8I = HIPTENSOR_COMPUTE_8I; + // CHECK-NEXT hiptensorComputeType_t TENSOR_COMPUTE_32U = HIPTENSOR_COMPUTE_32U; + // CHECK-NEXT hiptensorComputeType_t TENSOR_COMPUTE_32I = HIPTENSOR_COMPUTE_32I; + cutensorComputeType_t TENSOR_COMPUTE_16F = CUTENSOR_COMPUTE_16F; + cutensorComputeType_t TENSOR_COMPUTE_16BF = CUTENSOR_COMPUTE_16BF; + cutensorComputeType_t TENSOR_COMPUTE_32F = CUTENSOR_COMPUTE_32F; + cutensorComputeType_t TENSOR_COMPUTE_64F = CUTENSOR_COMPUTE_64F; + cutensorComputeType_t TENSOR_COMPUTE_8U = CUTENSOR_COMPUTE_8U; + cutensorComputeType_t TENSOR_COMPUTE_8I = CUTENSOR_COMPUTE_8I; + cutensorComputeType_t TENSOR_COMPUTE_32U = CUTENSOR_COMPUTE_32U; + cutensorComputeType_t TENSOR_COMPUTE_32I = CUTENSOR_COMPUTE_32I; +#endif + + // CHECK: const hiptensorContractionPlan_t *plan_c = nullptr; + const cutensorContractionPlan_t *plan_c = nullptr; + + // CHECK: hiptensorWorksizePreference_t TENSOR_WORKSPACE_RECOMMENDED = HIPTENSOR_WORKSPACE_RECOMMENDED; + cutensorWorksizePreference_t TENSOR_WORKSPACE_RECOMMENDED = CUTENSOR_WORKSPACE_RECOMMENDED; + + // CUDA: cutensorStatus_t cutensorInitTensorDescriptor(const cutensorHandle_t* handle, cutensorTensorDescriptor_t* desc, const uint32_t numModes, const int64_t extent[], const int64_t stride[], cudaDataType_t dataType, cutensorOperator_t unaryOp); + // HIP: hiptensorStatus_t hiptensorInitTensorDescriptor(const hiptensorHandle_t* handle, hiptensorTensorDescriptor_t* desc, const uint32_t numModes, const int64_t lens[], const int64_t strides[], hipDataType dataType, hiptensorOperator_t unaryOp); + // CHECK: status = hiptensorInitTensorDescriptor(handle_c, tensorDescriptor, numModes, extent, stride, dataType, tensorOperator_t); + status = cutensorInitTensorDescriptor(handle_c, tensorDescriptor, numModes, extent, stride, dataType, tensorOperator_t); + + // CUDA: cutensorStatus_t cutensorPermutation(const cutensorHandle_t* handle, const void* alpha, const void* A, const cutensorTensorDescriptor_t* descA, const int32_t modeA[], void* B, const cutensorTensorDescriptor_t* descB, const int32_t modeB[], const cudaDataType_t typeScalar, const cudaStream_t stream); + // HIP: hiptensorStatus_t hiptensorPermutation(const hiptensorHandle_t* handle, const void* alpha, const void* A, const hiptensorTensorDescriptor_t* descA, const int32_t modeA[], void* B, const hiptensorTensorDescriptor_t* descB, const int32_t modeB[], const hipDataType typeScalar, const hipStream_t stream); + // CHECK: status = hiptensorPermutation(handle_c, alpha, A, descA, modeA, B, descB, modeB, dataType, stream_t); + status = cutensorPermutation(handle_c, alpha, A, descA, modeA, B, descB, modeB, dataType, stream_t); + + // CUDA: cutensorStatus_t cutensorContraction(const cutensorHandle_t* handle, const cutensorContractionPlan_t* plan, const void* alpha, const void* A, const void* B, const void* beta, const void* C, void* D, void *workspace, uint64_t workspaceSize, cudaStream_t stream); + // HIP: hiptensorStatus_t hiptensorContraction(const hiptensorHandle_t* handle, const hiptensorContractionPlan_t* plan, const void* alpha, const void* A, const void* B, const void* beta, const void* C, void* D, void* workspace, uint64_t workspaceSize, hipStream_t stream); + // CHECK: status = hiptensorContraction(handle_c, plan_c, alpha, A, B_1, beta, C, D, workspace, workspaceSize, stream_t); + status = cutensorContraction(handle_c, plan_c, alpha, A, B_1, beta, C, D, workspace, workspaceSize, stream_t); + + // CUDA: cutensorStatus_t cutensorReduction(const cutensorHandle_t* handle, const void* alpha, const void* A, const cutensorTensorDescriptor_t* descA, const int32_t modeA[], const void* beta, const void* C, const cutensorTensorDescriptor_t* descC, const int32_t modeC[], void* D, const cutensorTensorDescriptor_t* descD, const int32_t modeD[], cutensorOperator_t opReduce, cutensorComputeType_t typeCompute, void *workspace, uint64_t workspaceSize, cudaStream_t stream); + // HIP: hiptensorStatus_t hiptensorReduction(const hiptensorHandle_t* handle, const void* alpha, const void* A, const hiptensorTensorDescriptor_t* descA, const int32_t modeA[], const void* beta, const void* C, const hiptensorTensorDescriptor_t* descC, const int32_t modeC[], void* D, const hiptensorTensorDescriptor_t* descD, const int32_t modeD[], hiptensorOperator_t opReduce, hiptensorComputeType_t typeCompute, void* workspace, uint64_t workspaceSize, hipStream_t stream); + // CHECK: status = hiptensorReduction(handle_c, alpha, A, descA, modeA, beta, C, descC, modeC, D, descD, modeD, tensorOperator_t, tensorComputeType_t, workspace, workspaceSize2, stream_t); + status = cutensorReduction(handle_c, alpha, A, descA, modeA, beta, C, descC, modeC, D, descD, modeD, tensorOperator_t, tensorComputeType_t, workspace, workspaceSize2, stream_t); +#endif + +#if (CUTENSOR_MAJOR == 1 && CUTENSOR_MINOR >= 7) + // CUDA: cutensorStatus_t cutensorCreate(cutensorHandle_t* handle); + // HIP: hiptensorStatus_t hiptensorCreate(hiptensorHandle_t** handle); + // CHECK: status = hiptensorCreate(&handle2); + status = cutensorCreate(&handle2); + + // CUDA: cutensorStatus_t cutensorDestroy(cutensorHandle_t handle); + // HIP: hiptensorStatus_t hiptensorDestroy(hiptensorHandle_t* handle); + // CHECK: status = hiptensorDestroy(handle2); + status = cutensorDestroy(handle2); + #endif + +#if (CUTENSOR_MAJOR == 1 && CUTENSOR_MINOR >= 3 && CUTENSOR_PATCH >= 2) || CUTENSOR_MAJOR >= 2 + // CHECK: hiptensorLoggerCallback_t callback; + cutensorLoggerCallback_t callback; + + // CUDA: cutensorStatus_t cutensorLoggerSetCallback(cutensorLoggerCallback_t callback); + // HIP: hiptensorStatus_t hiptensorLoggerSetCallback(hiptensorLoggerCallback_t callback); + // CHECK: status = hiptensorLoggerSetCallback(callback); + status = cutensorLoggerSetCallback(callback); + + // CUDA: cutensorStatus_t cutensorLoggerSetFile(FILE* file); + // HIP: hiptensorStatus_t hiptensorLoggerSetFile(FILE* file); + // CHECK: status = hiptensorLoggerSetFile(file); + status = cutensorLoggerSetFile(file); + + // CUDA: cutensorStatus_t cutensorLoggerOpenFile(const char* logFile); + // HIP: hiptensorStatus_t hiptensorLoggerOpenFile(const char* logFile); + // CHECK: status = hiptensorLoggerOpenFile(log); + status = cutensorLoggerOpenFile(log); + + // CUDA: cutensorStatus_t cutensorLoggerSetLevel(int32_t level); + // HIP: hiptensorStatus_t hiptensorLoggerSetLevel(hiptensorLogLevel_t level); + // CHECK: status = hiptensorLoggerSetLevel(level); + status = cutensorLoggerSetLevel(level); + + // CUDA: cutensorStatus_t cutensorLoggerSetMask(int32_t mask); + // HIP: hiptensorStatus_t hiptensorLoggerSetMask(int32_t mask); + // CHECK: status = hiptensorLoggerSetMask(mask); + status = cutensorLoggerSetMask(mask); + + // CUDA: cutensorStatus_t cutensorLoggerForceDisable(); + // HIP: hiptensorStatus_t hiptensorLoggerForceDisable(); + // CHECK: status = hiptensorLoggerForceDisable(); + status = cutensorLoggerForceDisable(); +#endif + + return 0; +} diff --git a/tests/unit_tests/synthetic/runtime_functions_12000.cu b/tests/unit_tests/synthetic/runtime_functions_12000.cu index d2e646ae..9d9f6e27 100644 --- a/tests/unit_tests/synthetic/runtime_functions_12000.cu +++ b/tests/unit_tests/synthetic/runtime_functions_12000.cu @@ -46,7 +46,7 @@ int main() { // TODO: detect cudaGetDriverEntryPoint signature and report warning/error for old (before CUDA 12.0) signature // HIP: hipError_t hipGetProcAddress(const char* symbol, void** pfn, int hipVersion, uint64_t flags, hipDriverProcAddressQueryResult* symbolStatus); // TODO: add an explicit static_cast for ull - // CHECK: result = hipGetProcAddress(symbol.c_str(), &pfn, 603, ull, &driverProcAddressQueryResult); + // CHECK: result = hipGetProcAddress(symbol.c_str(), &pfn, 604, ull, &driverProcAddressQueryResult); result = cudaGetDriverEntryPoint(symbol.c_str(), &pfn, ull, &driverProcAddressQueryResult); #endif