From c48fca494a0e4695b7041ffcffae59215d8a69e0 Mon Sep 17 00:00:00 2001 From: Evgeny Mankov Date: Tue, 30 Jul 2019 20:53:57 +0300 Subject: [PATCH] [HIPIFY][DNN][doc] Populate cuDNN API doc with CUDA version field + CUDA version - version in which API has appeared and (optional) last version before abandoning it; no value in case of earlier versions < 7.5. + Fix typos. --- docs/markdown/CUDNN_API_supported_by_HIP.md | 994 ++++++++++---------- 1 file changed, 498 insertions(+), 496 deletions(-) diff --git a/docs/markdown/CUDNN_API_supported_by_HIP.md b/docs/markdown/CUDNN_API_supported_by_HIP.md index 3b59de4195..dfecc96f1b 100644 --- a/docs/markdown/CUDNN_API_supported_by_HIP.md +++ b/docs/markdown/CUDNN_API_supported_by_HIP.md @@ -2,387 +2,387 @@ ## **1. CUDNN Data types** -| **type** | **CUDA** | **HIP** |**HIP value** (if differs) | -|-------------:|---------------------------------------------------------------|------------------------------------------------------------|---------------------------| -| define |`CUDNN_VERSION` |`HIPDNN_VERSION` | -| struct |`cudnnContext` | | -| struct* |`cudnnHandle_t` |`hipdnnHandle_t` | -| enum |***`cudnnStatus_t`*** |***`hipdnnStatus_t`*** | -| 0 |*`CUDNN_STATUS_SUCCESS`* |*`HIPDNN_STATUS_SUCCESS`* | -| 1 |*`CUDNN_STATUS_NOT_INITIALIZED`* |*`HIPDNN_STATUS_NOT_INITIALIZED`* | -| 2 |*`CUDNN_STATUS_ALLOC_FAILED`* |*`HIPDNN_STATUS_ALLOC_FAILED`* | -| 3 |*`CUDNN_STATUS_BAD_PARAM`* |*`HIPDNN_STATUS_BAD_PARAM`* | -| 4 |*`CUDNN_STATUS_INTERNAL_ERROR`* |*`HIPDNN_STATUS_INTERNAL_ERROR`* | -| 5 |*`CUDNN_STATUS_INVALID_VALUE`* |*`HIPDNN_STATUS_INVALID_VALUE`* | -| 6 |*`CUDNN_STATUS_ARCH_MISMATCH`* |*`HIPDNN_STATUS_ARCH_MISMATCH`* | -| 7 |*`CUDNN_STATUS_MAPPING_ERROR`* |*`HIPDNN_STATUS_MAPPING_ERROR`* | -| 8 |*`CUDNN_STATUS_EXECUTION_FAILED`* |*`HIPDNN_STATUS_EXECUTION_FAILED`* | -| 9 |*`CUDNN_STATUS_NOT_SUPPORTED`* |*`HIPDNN_STATUS_NOT_SUPPORTED`* | -| 10 |*`CUDNN_STATUS_LICENSE_ERROR`* |*`HIPDNN_STATUS_LICENSE_ERROR`* | -| 11 |*`CUDNN_STATUS_RUNTIME_PREREQUISITE_MISSING`* |*`HIPDNN_STATUS_RUNTIME_PREREQUISITE_MISSING`* | -| 12 |*`CUDNN_STATUS_RUNTIME_IN_PROGRESS`* | | -| 13 |*`CUDNN_STATUS_RUNTIME_FP_OVERFLOW`* | | -| struct |`cudnnRuntimeTag_t` | | -| enum |***`cudnnErrQueryMode_t`*** | | -| 0 |*`CUDNN_ERRQUERY_RAWCODE`* | | -| 1 |*`CUDNN_ERRQUERY_NONBLOCKING`* | | -| 2 |*`CUDNN_ERRQUERY_BLOCKING`* | | -| struct |`cudnnTensorStruct` | | -| struct* |`cudnnTensorDescriptor_t` |`hipdnnTensorDescriptor_t` | -| struct |`cudnnConvolutionStruct` | | -| struct* |`cudnnConvolutionDescriptor_t` |`hipdnnConvolutionDescriptor_t` | -| struct |`cudnnPoolingStruct` | | -| struct* |`cudnnPoolingDescriptor_t` |`hipdnnPoolingDescriptor_t` | -| struct |`cudnnFilterStruct` | | -| struct* |`cudnnFilterDescriptor_t` |`hipdnnFilterDescriptor_t` | -| struct |`cudnnLRNStruct` | | -| struct* |`cudnnLRNDescriptor_t` |`hipdnnLRNDescriptor_t` | -| struct |`cudnnActivationStruct` | | -| struct* |`cudnnActivationDescriptor_t` |`hipdnnActivationDescriptor_t` | -| struct |`cudnnSpatialTransformerStruct` | | -| struct* |`cudnnSpatialTransformerDescriptor_t` | | -| struct |`cudnnOpTensorStruct` | | -| struct* |`cudnnOpTensorDescriptor_t` |`hipdnnOpTensorDescriptor_t` | -| struct |`cudnnReduceTensorStruct` | | -| struct* |`cudnnReduceTensorDescriptor_t` |`hipdnnReduceTensorDescriptor_t` | -| struct |`cudnnCTCLossStruct` | | -| struct* |`cudnnCTCLossDescriptor_t` | | -| struct |`cudnnTensorTransformStruct` | | -| struct* |`cudnnTensorTransformDescriptor_t` | | -| enum |***`cudnnDataType_t`*** |***`hipdnnDataType_t`*** | -| 0 |*`CUDNN_DATA_FLOAT`* |*`HIPDNN_DATA_FLOAT`* | -| 1 |*`CUDNN_DATA_DOUBLE`* |*`HIPDNN_DATA_DOUBLE`* | -| 2 |*`CUDNN_DATA_HALF`* |*`HIPDNN_DATA_HALF`* | -| 3 |*`CUDNN_DATA_INT8`* |*`HIPDNN_DATA_INT8`* | -| 4 |*`CUDNN_DATA_INT32`* |*`HIPDNN_DATA_INT32`* | -| 5 |*`CUDNN_DATA_INT8x4`* |*`HIPDNN_DATA_INT8x4`* | -| 6 |*`CUDNN_DATA_UINT8`* | | -| 7 |*`CUDNN_DATA_UINT8x4`* | | -| 8 |*`CUDNN_DATA_INT8x32`* | | -| enum |***`cudnnMathType_t`*** |***`hipdnnMathType_t`*** | -| 0 |*`CUDNN_DEFAULT_MATH`* |*`HIPDNN_DEFAULT_MATH`* | -| 1 |*`CUDNN_TENSOR_OP_MATH`* |*`HIPDNN_TENSOR_OP_MATH`* | -| enum |***`cudnnNanPropagation_t`*** |***`hipdnnNanPropagation_t`*** | -| 0 |*`CUDNN_NOT_PROPAGATE_NAN`* |*`HIPDNN_NOT_PROPAGATE_NAN`* | -| 1 |*`CUDNN_PROPAGATE_NAN`* |*`HIPDNN_PROPAGATE_NAN`* | -| enum |***`cudnnDeterminism_t`*** | | -| 0 |*`CUDNN_NON_DETERMINISTIC`* | | -| 1 |*`CUDNN_DETERMINISTIC`* | | -| define |`CUDNN_DIM_MAX` | | -| enum |***`cudnnTensorFormat_t`*** |***`hipdnnTensorFormat_t`*** | -| 0 |*`CUDNN_TENSOR_NCHW`* |*`HIPDNN_TENSOR_NCHW`* | -| 1 |*`CUDNN_TENSOR_NHWC`* |*`HIPDNN_TENSOR_NHWC`* | -| 2 |*`CUDNN_TENSOR_NCHW_VECT_C`* |*`HIPDNN_TENSOR_NCHW_VECT_C`* | -| enum |***`cudnnFoldingDirection_t`*** | | -| 0 |*`CUDNN_TRANSFORM_FOLD`* | | -| 1 |*`CUDNN_TRANSFORM_UNFOLD`* | | -| enum |***`cudnnOpTensorOp_t`*** |***`hipdnnOpTensorOp_t`*** | -| 0 |*`CUDNN_OP_TENSOR_ADD`* |*`HIPDNN_OP_TENSOR_ADD`* | -| 1 |*`CUDNN_OP_TENSOR_MUL`* |*`HIPDNN_OP_TENSOR_MUL`* | -| 2 |*`CUDNN_OP_TENSOR_MIN`* |*`HIPDNN_OP_TENSOR_MIN`* | -| 3 |*`CUDNN_OP_TENSOR_MAX`* |*`HIPDNN_OP_TENSOR_MAX`* | -| 4 |*`CUDNN_OP_TENSOR_SQRT`* |*`HIPDNN_OP_TENSOR_SQRT`* | -| 5 |*`CUDNN_OP_TENSOR_NOT`* |*`HIPDNN_OP_TENSOR_NOT`* | -| enum |***`cudnnReduceTensorOp_t`*** |***`hipdnnReduceTensorOp_t`*** | -| 0 |*`CUDNN_REDUCE_TENSOR_ADD`* |*`HIPDNN_REDUCE_TENSOR_ADD`* | -| 1 |*`CUDNN_REDUCE_TENSOR_MUL`* |*`HIPDNN_REDUCE_TENSOR_MUL`* | -| 2 |*`CUDNN_REDUCE_TENSOR_MIN`* |*`HIPDNN_REDUCE_TENSOR_MIN`* | -| 3 |*`CUDNN_REDUCE_TENSOR_MAX`* |*`HIPDNN_REDUCE_TENSOR_MAX`* | -| 4 |*`CUDNN_REDUCE_TENSOR_AMAX`* |*`HIPDNN_REDUCE_TENSOR_AMAX`* | -| 5 |*`CUDNN_REDUCE_TENSOR_AVG`* |*`HIPDNN_REDUCE_TENSOR_AVG`* | -| 6 |*`CUDNN_REDUCE_TENSOR_NORM1`* |*`HIPDNN_REDUCE_TENSOR_NORM1`* | -| 7 |*`CUDNN_REDUCE_TENSOR_NORM2`* |*`HIPDNN_REDUCE_TENSOR_NORM2`* | -| 8 |*`CUDNN_REDUCE_TENSOR_MUL_NO_ZEROS`* |*`HIPDNN_REDUCE_TENSOR_MUL_NO_ZEROS`* | -| enum |***`cudnnReduceTensorIndices_t`*** |***`hipdnnReduceTensorIndices_t`*** | -| 0 |*`CUDNN_REDUCE_TENSOR_NO_INDICES`* |*`HIPDNN_REDUCE_TENSOR_NO_INDICES`* | -| 1 |*`CUDNN_REDUCE_TENSOR_FLATTENED_INDICES`* |*`HIPDNN_REDUCE_TENSOR_FLATTENED_INDICES`* | -| enum |***`cudnnIndicesType_t`*** |***`hipdnnIndicesType_t`*** | -| 0 |*`CUDNN_32BIT_INDICES`* |*`HIPDNN_32BIT_INDICES`* | -| 1 |*`CUDNN_64BIT_INDICES`* |*`HIPDNN_64BIT_INDICES`* | -| 2 |*`CUDNN_16BIT_INDICES`* |*`HIPDNN_16BIT_INDICES`* | -| 3 |*`CUDNN_8BIT_INDICES`* |*`HIPDNN_8BIT_INDICES`* | -| enum |***`cudnnConvolutionMode_t`*** |***`hipdnnConvolutionMode_t`*** | -| 0 |*`CUDNN_CONVOLUTION`* |*`HIPDNN_CONVOLUTION`* | -| 1 |*`CUDNN_CROSS_CORRELATION`* |*`HIPDNN_CROSS_CORRELATION`* | -| enum |***`cudnnConvolutionFwdPreference_t`*** |***`hipdnnConvolutionFwdPreference_t`*** | -| 0 |*`CUDNN_CONVOLUTION_FWD_NO_WORKSPACE`* |*`HIPDNN_CONVOLUTION_FWD_NO_WORKSPACE`* | -| 1 |*`CUDNN_CONVOLUTION_FWD_PREFER_FASTEST`* |*`HIPDNN_CONVOLUTION_FWD_PREFER_FASTEST`* | -| 2 |*`CUDNN_CONVOLUTION_FWD_SPECIFY_WORKSPACE_LIMIT`* |*`HIPDNN_CONVOLUTION_FWD_SPECIFY_WORKSPACE_LIMIT`* | -| enum |***`cudnnConvolutionFwdAlgo_t`*** |***`hipdnnConvolutionFwdAlgo_t`*** | -| 0 |*`CUDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_GEMM`* |*`HIPDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_GEMM`* | -| 1 |*`CUDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_PRECOMP_GEMM`* |*`HIPDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_PRECOMP_GEMM`* | -| 2 |*`CUDNN_CONVOLUTION_FWD_ALGO_GEMM`* |*`HIPDNN_CONVOLUTION_FWD_ALGO_GEMM`* | -| 3 |*`CUDNN_CONVOLUTION_FWD_ALGO_DIRECT`* |*`HIPDNN_CONVOLUTION_FWD_ALGO_DIRECT`* | -| 4 |*`CUDNN_CONVOLUTION_FWD_ALGO_FFT`* |*`HIPDNN_CONVOLUTION_FWD_ALGO_FFT`* | -| 5 |*`CUDNN_CONVOLUTION_FWD_ALGO_FFT_TILING`* |*`HIPDNN_CONVOLUTION_FWD_ALGO_FFT_TILING`* | -| 6 |*`CUDNN_CONVOLUTION_FWD_ALGO_WINOGRAD`* |*`HIPDNN_CONVOLUTION_FWD_ALGO_WINOGRAD`* | -| 7 |*`CUDNN_CONVOLUTION_FWD_ALGO_WINOGRAD_NONFUSED`* |*`HIPDNN_CONVOLUTION_FWD_ALGO_WINOGRAD_NONFUSED`* | -| 8 |*`CUDNN_CONVOLUTION_FWD_ALGO_COUNT`* |*`HIPDNN_CONVOLUTION_FWD_ALGO_COUNT`* | -| struct |`cudnnConvolutionFwdAlgoPerf_t` |`hipdnnConvolutionFwdAlgoPerf_t` | -| enum |***`cudnnConvolutionBwdFilterPreference_t`*** |***`hipdnnConvolutionBwdFilterPreference_t`*** | -| 0 |*`CUDNN_CONVOLUTION_BWD_FILTER_NO_WORKSPACE`* |*`HIPDNN_CONVOLUTION_BWD_FILTER_NO_WORKSPACE`* | -| 1 |*`CUDNN_CONVOLUTION_BWD_FILTER_PREFER_FASTEST`* |*`HIPDNN_CONVOLUTION_BWD_FILTER_PREFER_FASTEST`* | -| 2 |*`CUDNN_CONVOLUTION_BWD_FILTER_SPECIFY_WORKSPACE_LIMIT`* |*`HIPDNN_CONVOLUTION_BWD_FILTER_SPECIFY_WORKSPACE_LIMIT`* | -| enum |***`cudnnConvolutionBwdFilterAlgo_t`*** |***`hipdnnConvolutionBwdFilterAlgo_t`*** | -| 0 |*`CUDNN_CONVOLUTION_BWD_FILTER_ALGO_0`* |*`HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_0`* | -| 1 |*`CUDNN_CONVOLUTION_BWD_FILTER_ALGO_1`* |*`HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_1`* | -| 2 |*`CUDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT`* |*`HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT`* | -| 3 |*`CUDNN_CONVOLUTION_BWD_FILTER_ALGO_3`* |*`HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_3`* | -| 4 |*`CUDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD`* |*`HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD`* | -| 5 |*`CUDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD_NONFUSED`* |*`HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD_NONFUSED`* | -| 6 |*`CUDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT_TILING`* |*`HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT_TILING`* | -| 7 |*`CUDNN_CONVOLUTION_BWD_FILTER_ALGO_COUNT`* |*`HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_COUNT`* | -| struct |`cudnnConvolutionBwdDataAlgoPerf_t` |`hipdnnConvolutionBwdDataAlgoPerf_t` | -| enum |***`cudnnSoftmaxAlgorithm_t`*** |***`hipdnnSoftmaxAlgorithm_t`*** | -| 0 |*`CUDNN_SOFTMAX_FAST`* |*`HIPDNN_SOFTMAX_FAST`* | -| 1 |*`CUDNN_SOFTMAX_ACCURATE`* |*`HIPDNN_SOFTMAX_ACCURATE`* | -| 2 |*`CUDNN_SOFTMAX_LOG`* |*`HIPDNN_SOFTMAX_LOG`* | -| enum |***`cudnnSoftmaxMode_t`*** |***`hipdnnSoftmaxMode_t`*** | -| 0 |*`CUDNN_SOFTMAX_MODE_INSTANCE`* |*`HIPDNN_SOFTMAX_MODE_INSTANCE`* | -| 1 |*`CUDNN_SOFTMAX_MODE_CHANNEL`* |*`HIPDNN_SOFTMAX_MODE_CHANNEL`* | -| enum |***`cudnnPoolingMode_t`*** |***`hipdnnPoolingMode_t`*** | -| 0 |*`CUDNN_POOLING_MAX`* |*`HIPDNN_POOLING_MAX`* | -| 1 |*`CUDNN_POOLING_AVERAGE_COUNT_INCLUDE_PADDING`* |*`HIPDNN_POOLING_AVERAGE_COUNT_INCLUDE_PADDING`* | -| 2 |*`CUDNN_POOLING_AVERAGE_COUNT_EXCLUDE_PADDING`* |*`HIPDNN_POOLING_AVERAGE_COUNT_EXCLUDE_PADDING`* | -| 3 |*`CUDNN_POOLING_MAX_DETERMINISTIC`* |*`HIPDNN_POOLING_MAX_DETERMINISTIC`* | -| enum |***`cudnnActivationMode_t`*** |***`hipdnnActivationMode_t`*** | -| 0 |*`CUDNN_ACTIVATION_SIGMOID`* |*`HIPDNN_ACTIVATION_SIGMOID`* | -| 1 |*`CUDNN_ACTIVATION_RELU`* |*`HIPDNN_ACTIVATION_RELU`* | -| 2 |*`CUDNN_ACTIVATION_TANH`* |*`HIPDNN_ACTIVATION_TANH`* | -| 3 |*`CUDNN_ACTIVATION_CLIPPED_RELU`* |*`HIPDNN_ACTIVATION_CLIPPED_RELU`* | -| 4 |*`CUDNN_ACTIVATION_ELU`* |*`HIPDNN_ACTIVATION_ELU`* | -| 5 |*`CUDNN_ACTIVATION_IDENTITY`* |*`HIPDNN_ACTIVATION_PATHTRU`* | -| define |`CUDNN_LRN_MIN_N` | | -| define |`CUDNN_LRN_MAX_N` | | -| define |`CUDNN_LRN_MIN_K` | | -| define |`CUDNN_LRN_MIN_BETA` | | -| enum |***`cudnnLRNMode_t`*** |***`hipdnnLRNMode_t`*** | -| 0 |*`CUDNN_LRN_CROSS_CHANNEL_DIM1`* |*`HIPDNN_LRN_CROSS_CHANNEL`* | -| enum |***`cudnnDivNormMode_t`*** | | -| 0 |*`CUDNN_DIVNORM_PRECOMPUTED_MEANS`* | | -| enum |***`cudnnBatchNormMode_t`*** |***`hipdnnBatchNormMode_t`*** | -| 0 |*`CUDNN_BATCHNORM_PER_ACTIVATION`* |*`HIPDNN_BATCHNORM_PER_ACTIVATION`* | -| 1 |*`CUDNN_BATCHNORM_SPATIAL`* |*`HIPDNN_BATCHNORM_SPATIAL`* | -| 2 |*`CUDNN_BATCHNORM_SPATIAL_PERSISTENT`* |*`HIPDNN_BATCHNORM_SPATIAL_PERSISTENT`* | -| define |`CUDNN_BN_MIN_EPSILON` |`HIPDNN_BN_MIN_EPSILON` | -| enum |***`cudnnSamplerType_t`*** | | -| 0 |*`CUDNN_SAMPLER_BILINEAR`* | | -| struct |`cudnnDropoutStruct` | | -| struct* |`cudnnDropoutDescriptor_t` |`hipdnnDropoutDescriptor_t` | -| enum |***`cudnnRNNMode_t`*** |***`hipdnnRNNMode_t`*** | -| 0 |*`CUDNN_RNN_RELU`* |*`HIPDNN_RNN_RELU`* | -| 1 |*`CUDNN_RNN_TANH`* |*`HIPDNN_RNN_TANH`* | -| 2 |*`CUDNN_LSTM`* |*`HIPDNN_LSTM`* | -| 3 |*`CUDNN_GRU`* |*`HIPDNN_GRU`* | -| enum |***`cudnnRNNBiasMode_t`*** |***`hipdnnRNNBiasMode_t`*** | -| 0 |*`CUDNN_RNN_NO_BIAS`* |*`HIPDNN_RNN_NO_BIAS`* | -| 1 |*`CUDNN_RNN_SINGLE_INP_BIAS`* |*`HIPDNN_RNN_WITH_BIAS`* | -| 2 |*`CUDNN_RNN_DOUBLE_BIAS`* |*`HIPDNN_RNN_WITH_BIAS`* | 1 | -| 3 |*`CUDNN_RNN_SINGLE_REC_BIAS`* |*`HIPDNN_RNN_WITH_BIAS`* | 1 | -| enum |***`cudnnDirectionMode_t`*** |***`hipdnnDirectionMode_t`*** | -| 0 |*`CUDNN_UNIDIRECTIONAL`* |*`HIPDNN_UNIDIRECTIONAL`* | -| 1 |*`CUDNN_BIDIRECTIONAL`* |*`HIPDNN_BIDIRECTIONAL`* | -| enum |***`cudnnRNNAlgo_t`*** |***`hipdnnRNNAlgo_t`*** | -| 0 |*`CUDNN_RNN_ALGO_STANDARD`* |*`HIPDNN_RNN_ALGO_STANDARD`* | -| 1 |*`CUDNN_RNN_ALGO_PERSIST_STATIC`* |*`HIPDNN_RNN_ALGO_PERSIST_STATIC`* | -| 2 |*`CUDNN_RNN_ALGO_PERSIST_DYNAMIC`* |*`HIPDNN_RNN_ALGO_PERSIST_DYNAMIC`* | -| 3 |*`CUDNN_RNN_ALGO_COUNT`* | | -| struct |`cudnnAlgorithmStruct` | | -| struct* |`cudnnAlgorithmDescriptor_t` | | -| struct |`cudnnAlgorithmPerformanceStruct` | | -| struct* |`cudnnAlgorithmPerformance_t` | | -| struct |`cudnnRNNStruct` | | -| struct* |`cudnnRNNDescriptor_t` |`hipdnnRNNDescriptor_t` | -| struct |`cudnnPersistentRNNPlan` | | -| struct* |`cudnnPersistentRNNPlan_t` |`hipdnnPersistentRNNPlan_t` | -| enum |***`cudnnCTCLossAlgo_t`*** | | -| 0 |*`CUDNN_CTC_LOSS_ALGO_DETERMINISTIC`* | | -| 1 |*`CUDNN_CTC_LOSS_ALGO_NON_DETERMINISTIC`* | | -| struct |`cudnnAlgorithm_t` | | -| enum |***`cudnnSeverity_t`*** | | -| 0 |*`CUDNN_SEV_FATAL`* | | -| 1 |*`CUDNN_SEV_ERROR`* | | -| 2 |*`CUDNN_SEV_WARNING`* | | -| 3 |*`CUDNN_SEV_INFO`* | | -| define |`CUDNN_SEV_ERROR_EN` | | -| define |`CUDNN_SEV_WARNING_EN` | | -| define |`CUDNN_SEV_INFO_EN` | | -| struct |`cudnnDebug_t` | | -| struct |`cudnnCallback_t` | | -| enum |***`cudnnBatchNormOps_t`*** | | -| 0 |*`CUDNN_BATCHNORM_OPS_BN`* | | -| 1 |*`CUDNN_BATCHNORM_OPS_BN_ACTIVATION`* | | -| 2 |*`CUDNN_BATCHNORM_OPS_BN_ADD_ACTIVATION`* | | -| enum |***`cudnnRNNClipMode_t`*** | | -| 0 |*`CUDNN_RNN_CLIP_NONE`* | | -| 1 |*`CUDNN_RNN_CLIP_MINMAX`* | | -| struct |`cudnnRNNDataStruct` | | -| struct* |`cudnnRNNDataDescriptor_t` | | -| enum |***`cudnnRNNDataLayout_t`*** | | -| 0 |*`CUDNN_RNN_DATA_LAYOUT_SEQ_MAJOR_UNPACKED`* | | -| 1 |*`CUDNN_RNN_DATA_LAYOUT_SEQ_MAJOR_PACKED`* | | -| 2 |*`CUDNN_RNN_DATA_LAYOUT_BATCH_MAJOR_UNPACKED`* | | -| enum |***`cudnnRNNPaddingMode_t`*** | | -| 0 |*`CUDNN_RNN_PADDED_IO_DISABLED`* | | -| 1 |*`CUDNN_RNN_PADDED_IO_ENABLED`* | | -| enum |***`cudnnSeqDataAxis_t`*** | | -| 0 |*`CUDNN_SEQDATA_TIME_DIM`* | | -| 1 |*`CUDNN_SEQDATA_BATCH_DIM`* | | -| 2 |*`CUDNN_SEQDATA_BEAM_DIM`* | | -| 3 |*`CUDNN_SEQDATA_VECT_DIM`* | | -| define |`CUDNN_SEQDATA_DIM_COUNT` | | -| struct |`cudnnSeqDataStruct` | | -| struct* |`cudnnSeqDataDescriptor_t` | | -| enum |***`cudnnAttnQueryMap_t`*** | | -| 0 |*`CUDNN_ATTN_QUERYMAP_ALL_TO_ONE`* | | -| 1 |*`CUDNN_ATTN_QUERYMAP_ONE_TO_ONE`* | | -| struct |`cudnnAttnStruct` | | -| struct* |`cudnnAttnDescriptor_t` | | -| enum |***`cudnnMultiHeadAttnWeightKind_t`*** | | -| 0 |*`CUDNN_MH_ATTN_Q_WEIGHTS`* | | -| 1 |*`CUDNN_MH_ATTN_K_WEIGHTS`* | | -| 2 |*`CUDNN_MH_ATTN_V_WEIGHTS`* | | -| 3 |*`CUDNN_MH_ATTN_O_WEIGHTS`* | | -| enum |***`cudnnWgradMode_t`*** | | -| 0 |*`CUDNN_WGRAD_MODE_ADD`* | | -| 1 |*`CUDNN_WGRAD_MODE_SET`* | | -| enum |***`cudnnReorderType_t`*** | | -| 0 |*`CUDNN_DEFAULT_REORDER`* | | -| 1 |*`CUDNN_NO_REORDER`* | | -| enum |***`cudnnLossNormalizationMode_t`*** | | -| 0 |*`CUDNN_LOSS_NORMALIZATION_NONE`* | | -| 1 |*`CUDNN_LOSS_NORMALIZATION_SOFTMAX`* | | -| struct |`cudnnFusedOpsConstParamStruct` | | -| struct* |`cudnnFusedOpsConstParamPack_t` | | -| struct |`cudnnFusedOpsVariantParamStruct` | | -| struct* |`cudnnFusedOpsVariantParamPack_t` | | -| struct |`cudnnFusedOpsPlanStruct` | | -| struct* |`cudnnFusedOpsPlan_t` | | -| enum |***`cudnnFusedOps_t`*** | | -| 0 |*`CUDNN_FUSED_SCALE_BIAS_ACTIVATION_CONV_BNSTATS`* | | -| 1 |*`CUDNN_FUSED_SCALE_BIAS_ACTIVATION_WGRAD`* | | -| 2 |*`CUDNN_FUSED_BN_FINALIZE_STATISTICS_TRAINING`* | | -| 3 |*`CUDNN_FUSED_BN_FINALIZE_STATISTICS_INFERENCE`* | | -| 4 |*`CUDNN_FUSED_CONV_SCALE_BIAS_ADD_ACTIVATION`* | | -| 5 |*`CUDNN_FUSED_SCALE_BIAS_ADD_ACTIVATION_GEN_BITMASK`* | | -| 6 |*`CUDNN_FUSED_DACTIVATION_FORK_DBATCHNORM`* | | -| enum |***`cudnnFusedOpsConstParamLabel_t`*** | | -| 0 |*`CUDNN_PARAM_XDESC`* | | -| 1 |*`CUDNN_PARAM_XDATA_PLACEHOLDER`* | | -| 2 |*`CUDNN_PARAM_BN_MODE`* | | -| 3 |*`CUDNN_PARAM_BN_EQSCALEBIAS_DESC`* | | -| 4 |*`CUDNN_PARAM_BN_EQSCALE_PLACEHOLDER`* | | -| 5 |*`CUDNN_PARAM_BN_EQBIAS_PLACEHOLDER`* | | -| 6 |*`CUDNN_PARAM_ACTIVATION_DESC`* | | -| 7 |*`CUDNN_PARAM_CONV_DESC`* | | -| 8 |*`CUDNN_PARAM_WDESC`* | | -| 9 |*`CUDNN_PARAM_WDATA_PLACEHOLDER`* | | -| 10 |*`CUDNN_PARAM_DWDESC`* | | -| 11 |*`CUDNN_PARAM_DWDATA_PLACEHOLDER`* | | -| 12 |*`CUDNN_PARAM_YDESC`* | | -| 13 |*`CUDNN_PARAM_YDATA_PLACEHOLDER`* | | -| 14 |*`CUDNN_PARAM_DYDESC`* | | -| 15 |*`CUDNN_PARAM_DYDATA_PLACEHOLDER`* | | -| 16 |*`CUDNN_PARAM_YSTATS_DESC`* | | -| 17 |*`CUDNN_PARAM_YSUM_PLACEHOLDER`* | | -| 18 |*`CUDNN_PARAM_YSQSUM_PLACEHOLDER`* | | -| 19 |*`CUDNN_PARAM_BN_SCALEBIAS_MEANVAR_DESC`* | | -| 20 |*`CUDNN_PARAM_BN_SCALE_PLACEHOLDER`* | | -| 21 |*`CUDNN_PARAM_BN_BIAS_PLACEHOLDER`* | | -| 22 |*`CUDNN_PARAM_BN_SAVED_MEAN_PLACEHOLDER`* | | -| 23 |*`CUDNN_PARAM_BN_SAVED_INVSTD_PLACEHOLDER`* | | -| 24 |*`CUDNN_PARAM_BN_RUNNING_MEAN_PLACEHOLDER`* | | -| 25 |*`CUDNN_PARAM_BN_RUNNING_VAR_PLACEHOLDER`* | | -| 26 |*`CUDNN_PARAM_ZDESC`* | | -| 27 |*`CUDNN_PARAM_ZDATA_PLACEHOLDER`* | | -| 28 |*`CUDNN_PARAM_BN_Z_EQSCALEBIAS_DESC`* | | -| 29 |*`CUDNN_PARAM_BN_Z_EQSCALE_PLACEHOLDER`* | | -| 30 |*`CUDNN_PARAM_BN_Z_EQBIAS_PLACEHOLDER`* | | -| 31 |*`CUDNN_PARAM_ACTIVATION_BITMASK_DESC`* | | -| 32 |*`CUDNN_PARAM_ACTIVATION_BITMASK_PLACEHOLDER`* | | -| 33 |*`CUDNN_PARAM_DXDESC`* | | -| 34 |*`CUDNN_PARAM_DXDATA_PLACEHOLDER`* | | -| 35 |*`CUDNN_PARAM_DZDESC`* | | -| 36 |*`CUDNN_PARAM_DZDATA_PLACEHOLDER`* | | -| 37 |*`CUDNN_PARAM_BN_DSCALE_PLACEHOLDER`* | | -| 38 |*`CUDNN_PARAM_BN_DBIAS_PLACEHOLDER`* | | -| enum |***`cudnnFusedOpsPointerPlaceHolder_t`*** | | -| 0 |*`CUDNN_PTR_NULL`* | | -| 1 |*`CUDNN_PTR_ELEM_ALIGNED`* | | -| 2 |*`CUDNN_PTR_16B_ALIGNED`* | | -| enum |***`cudnnFusedOpsVariantParamLabel_t`*** | | -| 0 |*`CUDNN_PTR_XDATA`* | | -| 1 |*`CUDNN_PTR_BN_EQSCALE`* | | -| 2 |*`CUDNN_PTR_BN_EQBIAS`* | | -| 3 |*`CUDNN_PTR_WDATA`* | | -| 4 |*`CUDNN_PTR_DWDATA`* | | -| 5 |*`CUDNN_PTR_YDATA`* | | -| 6 |*`CUDNN_PTR_DYDATA`* | | -| 7 |*`CUDNN_PTR_YSUM`* | | -| 8 |*`CUDNN_PTR_YSQSUM`* | | -| 9 |*`CUDNN_PTR_WORKSPACE`* | | -| 10 |*`CUDNN_PTR_BN_SCALE`* | | -| 11 |*`CUDNN_PTR_BN_BIAS`* | | -| 12 |*`CUDNN_PTR_BN_SAVED_MEAN`* | | -| 13 |*`CUDNN_PTR_BN_SAVED_INVSTD`* | | -| 14 |*`CUDNN_PTR_BN_RUNNING_MEAN`* | | -| 15 |*`CUDNN_PTR_BN_RUNNING_VAR`* | | -| 16 |*`CUDNN_PTR_ZDATA`* | | -| 17 |*`CUDNN_PTR_BN_Z_EQSCALE`* | | -| 18 |*`CUDNN_PTR_BN_Z_EQBIAS`* | | -| 19 |*`CUDNN_PTR_ACTIVATION_BITMASK`* | | -| 20 |*`CUDNN_PTR_DXDATA`* | | -| 21 |*`CUDNN_PTR_DZDATA`* | | -| 22 |*`CUDNN_PTR_BN_DSCALE`* | | -| 23 |*`CUDNN_PTR_BN_DBIAS`* | | -| 100 |*`CUDNN_SCALAR_SIZE_T_WORKSPACE_SIZE_IN_BYTES`* | | -| 101 |*`CUDNN_SCALAR_INT64_T_BN_ACCUMULATION_COUNT`* | | -| 102 |*`CUDNN_SCALAR_DOUBLE_BN_EXP_AVG_FACTOR`* | | -| 103 |*`CUDNN_SCALAR_DOUBLE_BN_EPSILON`* | | +| **type** | **CUDA** |**CUDA version\***| **HIP** |**HIP value** (if differs) | +|-------------:|---------------------------------------------------------------|:----------------:|------------------------------------------------------------|---------------------------| +| define |`CUDNN_VERSION` | |`HIPDNN_VERSION` | +| struct |`cudnnContext` | | | +| struct* |`cudnnHandle_t` | |`hipdnnHandle_t` | +| enum |***`cudnnStatus_t`*** | |***`hipdnnStatus_t`*** | +| 0 |*`CUDNN_STATUS_SUCCESS`* | |*`HIPDNN_STATUS_SUCCESS`* | +| 1 |*`CUDNN_STATUS_NOT_INITIALIZED`* | |*`HIPDNN_STATUS_NOT_INITIALIZED`* | +| 2 |*`CUDNN_STATUS_ALLOC_FAILED`* | |*`HIPDNN_STATUS_ALLOC_FAILED`* | +| 3 |*`CUDNN_STATUS_BAD_PARAM`* | |*`HIPDNN_STATUS_BAD_PARAM`* | +| 4 |*`CUDNN_STATUS_INTERNAL_ERROR`* | |*`HIPDNN_STATUS_INTERNAL_ERROR`* | +| 5 |*`CUDNN_STATUS_INVALID_VALUE`* | |*`HIPDNN_STATUS_INVALID_VALUE`* | +| 6 |*`CUDNN_STATUS_ARCH_MISMATCH`* | |*`HIPDNN_STATUS_ARCH_MISMATCH`* | +| 7 |*`CUDNN_STATUS_MAPPING_ERROR`* | |*`HIPDNN_STATUS_MAPPING_ERROR`* | +| 8 |*`CUDNN_STATUS_EXECUTION_FAILED`* | |*`HIPDNN_STATUS_EXECUTION_FAILED`* | +| 9 |*`CUDNN_STATUS_NOT_SUPPORTED`* | |*`HIPDNN_STATUS_NOT_SUPPORTED`* | +| 10 |*`CUDNN_STATUS_LICENSE_ERROR`* | |*`HIPDNN_STATUS_LICENSE_ERROR`* | +| 11 |*`CUDNN_STATUS_RUNTIME_PREREQUISITE_MISSING`* | 7.5 |*`HIPDNN_STATUS_RUNTIME_PREREQUISITE_MISSING`* | +| 12 |*`CUDNN_STATUS_RUNTIME_IN_PROGRESS`* | 8.0 | | +| 13 |*`CUDNN_STATUS_RUNTIME_FP_OVERFLOW`* | 8.0 | | +| struct |`cudnnRuntimeTag_t` | 8.0 | | +| enum |***`cudnnErrQueryMode_t`*** | 8.0 | | +| 0 |*`CUDNN_ERRQUERY_RAWCODE`* | 8.0 | | +| 1 |*`CUDNN_ERRQUERY_NONBLOCKING`* | 8.0 | | +| 2 |*`CUDNN_ERRQUERY_BLOCKING`* | 8.0 | | +| struct |`cudnnTensorStruct` | | | +| struct* |`cudnnTensorDescriptor_t` | |`hipdnnTensorDescriptor_t` | +| struct |`cudnnConvolutionStruct` | | | +| struct* |`cudnnConvolutionDescriptor_t` | |`hipdnnConvolutionDescriptor_t` | +| struct |`cudnnPoolingStruct` | | | +| struct* |`cudnnPoolingDescriptor_t` | |`hipdnnPoolingDescriptor_t` | +| struct |`cudnnFilterStruct` | | | +| struct* |`cudnnFilterDescriptor_t` | |`hipdnnFilterDescriptor_t` | +| struct |`cudnnLRNStruct` | | | +| struct* |`cudnnLRNDescriptor_t` | |`hipdnnLRNDescriptor_t` | +| struct |`cudnnActivationStruct` | | | +| struct* |`cudnnActivationDescriptor_t` | |`hipdnnActivationDescriptor_t` | +| struct |`cudnnSpatialTransformerStruct` | 7.5 | | +| struct* |`cudnnSpatialTransformerDescriptor_t` | 7.5 | | +| struct |`cudnnOpTensorStruct` | 7.5 | | +| struct* |`cudnnOpTensorDescriptor_t` | 7.5 |`hipdnnOpTensorDescriptor_t` | +| struct |`cudnnReduceTensorStruct` | 7.5 | | +| struct* |`cudnnReduceTensorDescriptor_t` | 7.5 |`hipdnnReduceTensorDescriptor_t` | +| struct |`cudnnCTCLossStruct` | 8.0 | | +| struct* |`cudnnCTCLossDescriptor_t` | 8.0 | | +| struct |`cudnnTensorTransformStruct` | 9.0 | | +| struct* |`cudnnTensorTransformDescriptor_t` | 9.0 | | +| enum |***`cudnnDataType_t`*** | |***`hipdnnDataType_t`*** | +| 0 |*`CUDNN_DATA_FLOAT`* | |*`HIPDNN_DATA_FLOAT`* | +| 1 |*`CUDNN_DATA_DOUBLE`* | |*`HIPDNN_DATA_DOUBLE`* | +| 2 |*`CUDNN_DATA_HALF`* | |*`HIPDNN_DATA_HALF`* | +| 3 |*`CUDNN_DATA_INT8`* | 7.5 |*`HIPDNN_DATA_INT8`* | +| 4 |*`CUDNN_DATA_INT32`* | 7.5 |*`HIPDNN_DATA_INT32`* | +| 5 |*`CUDNN_DATA_INT8x4`* | 7.5 |*`HIPDNN_DATA_INT8x4`* | +| 6 |*`CUDNN_DATA_UINT8`* | 8.0 | | +| 7 |*`CUDNN_DATA_UINT8x4`* | 8.0 | | +| 8 |*`CUDNN_DATA_INT8x32`* | 9.0 | | +| enum |***`cudnnMathType_t`*** | 8.0 |***`hipdnnMathType_t`*** | +| 0 |*`CUDNN_DEFAULT_MATH`* | 8.0 |*`HIPDNN_DEFAULT_MATH`* | +| 1 |*`CUDNN_TENSOR_OP_MATH`* | 8.0 |*`HIPDNN_TENSOR_OP_MATH`* | +| enum |***`cudnnNanPropagation_t`*** | |***`hipdnnNanPropagation_t`*** | +| 0 |*`CUDNN_NOT_PROPAGATE_NAN`* | |*`HIPDNN_NOT_PROPAGATE_NAN`* | +| 1 |*`CUDNN_PROPAGATE_NAN`* | |*`HIPDNN_PROPAGATE_NAN`* | +| enum |***`cudnnDeterminism_t`*** | 7.5 | | +| 0 |*`CUDNN_NON_DETERMINISTIC`* | 7.5 | | +| 1 |*`CUDNN_DETERMINISTIC`* | 7.5 | | +| define |`CUDNN_DIM_MAX` | | | +| enum |***`cudnnTensorFormat_t`*** | |***`hipdnnTensorFormat_t`*** | +| 0 |*`CUDNN_TENSOR_NCHW`* | |*`HIPDNN_TENSOR_NCHW`* | +| 1 |*`CUDNN_TENSOR_NHWC`* | |*`HIPDNN_TENSOR_NHWC`* | +| 2 |*`CUDNN_TENSOR_NCHW_VECT_C`* | 7.5 |*`HIPDNN_TENSOR_NCHW_VECT_C`* | +| enum |***`cudnnFoldingDirection_t`*** | 9.0 | | +| 0 |*`CUDNN_TRANSFORM_FOLD`* | 9.0 | | +| 1 |*`CUDNN_TRANSFORM_UNFOLD`* | 9.0 | | +| enum |***`cudnnOpTensorOp_t`*** | 7.5 |***`hipdnnOpTensorOp_t`*** | +| 0 |*`CUDNN_OP_TENSOR_ADD`* | 7.5 |*`HIPDNN_OP_TENSOR_ADD`* | +| 1 |*`CUDNN_OP_TENSOR_MUL`* | 7.5 |*`HIPDNN_OP_TENSOR_MUL`* | +| 2 |*`CUDNN_OP_TENSOR_MIN`* | 7.5 |*`HIPDNN_OP_TENSOR_MIN`* | +| 3 |*`CUDNN_OP_TENSOR_MAX`* | 7.5 |*`HIPDNN_OP_TENSOR_MAX`* | +| 4 |*`CUDNN_OP_TENSOR_SQRT`* | 7.5 |*`HIPDNN_OP_TENSOR_SQRT`* | +| 5 |*`CUDNN_OP_TENSOR_NOT`* | 8.0 |*`HIPDNN_OP_TENSOR_NOT`* | +| enum |***`cudnnReduceTensorOp_t`*** | 7.5 |***`hipdnnReduceTensorOp_t`*** | +| 0 |*`CUDNN_REDUCE_TENSOR_ADD`* | 7.5 |*`HIPDNN_REDUCE_TENSOR_ADD`* | +| 1 |*`CUDNN_REDUCE_TENSOR_MUL`* | 7.5 |*`HIPDNN_REDUCE_TENSOR_MUL`* | +| 2 |*`CUDNN_REDUCE_TENSOR_MIN`* | 7.5 |*`HIPDNN_REDUCE_TENSOR_MIN`* | +| 3 |*`CUDNN_REDUCE_TENSOR_MAX`* | 7.5 |*`HIPDNN_REDUCE_TENSOR_MAX`* | +| 4 |*`CUDNN_REDUCE_TENSOR_AMAX`* | 7.5 |*`HIPDNN_REDUCE_TENSOR_AMAX`* | +| 5 |*`CUDNN_REDUCE_TENSOR_AVG`* | 7.5 |*`HIPDNN_REDUCE_TENSOR_AVG`* | +| 6 |*`CUDNN_REDUCE_TENSOR_NORM1`* | 7.5 |*`HIPDNN_REDUCE_TENSOR_NORM1`* | +| 7 |*`CUDNN_REDUCE_TENSOR_NORM2`* | 7.5 |*`HIPDNN_REDUCE_TENSOR_NORM2`* | +| 8 |*`CUDNN_REDUCE_TENSOR_MUL_NO_ZEROS`* | 8.0 |*`HIPDNN_REDUCE_TENSOR_MUL_NO_ZEROS`* | +| enum |***`cudnnReduceTensorIndices_t`*** | 7.5 |***`hipdnnReduceTensorIndices_t`*** | +| 0 |*`CUDNN_REDUCE_TENSOR_NO_INDICES`* | 7.5 |*`HIPDNN_REDUCE_TENSOR_NO_INDICES`* | +| 1 |*`CUDNN_REDUCE_TENSOR_FLATTENED_INDICES`* | 7.5 |*`HIPDNN_REDUCE_TENSOR_FLATTENED_INDICES`* | +| enum |***`cudnnIndicesType_t`*** | 7.5 |***`hipdnnIndicesType_t`*** | +| 0 |*`CUDNN_32BIT_INDICES`* | 7.5 |*`HIPDNN_32BIT_INDICES`* | +| 1 |*`CUDNN_64BIT_INDICES`* | 7.5 |*`HIPDNN_64BIT_INDICES`* | +| 2 |*`CUDNN_16BIT_INDICES`* | 7.5 |*`HIPDNN_16BIT_INDICES`* | +| 3 |*`CUDNN_8BIT_INDICES`* | 7.5 |*`HIPDNN_8BIT_INDICES`* | +| enum |***`cudnnConvolutionMode_t`*** | |***`hipdnnConvolutionMode_t`*** | +| 0 |*`CUDNN_CONVOLUTION`* | |*`HIPDNN_CONVOLUTION`* | +| 1 |*`CUDNN_CROSS_CORRELATION`* | |*`HIPDNN_CROSS_CORRELATION`* | +| enum |***`cudnnConvolutionFwdPreference_t`*** | |***`hipdnnConvolutionFwdPreference_t`*** | +| 0 |*`CUDNN_CONVOLUTION_FWD_NO_WORKSPACE`* | |*`HIPDNN_CONVOLUTION_FWD_NO_WORKSPACE`* | +| 1 |*`CUDNN_CONVOLUTION_FWD_PREFER_FASTEST`* | |*`HIPDNN_CONVOLUTION_FWD_PREFER_FASTEST`* | +| 2 |*`CUDNN_CONVOLUTION_FWD_SPECIFY_WORKSPACE_LIMIT`* | |*`HIPDNN_CONVOLUTION_FWD_SPECIFY_WORKSPACE_LIMIT`* | +| enum |***`cudnnConvolutionFwdAlgo_t`*** | |***`hipdnnConvolutionFwdAlgo_t`*** | +| 0 |*`CUDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_GEMM`* | |*`HIPDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_GEMM`* | +| 1 |*`CUDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_PRECOMP_GEMM`* | |*`HIPDNN_CONVOLUTION_FWD_ALGO_IMPLICIT_PRECOMP_GEMM`* | +| 2 |*`CUDNN_CONVOLUTION_FWD_ALGO_GEMM`* | |*`HIPDNN_CONVOLUTION_FWD_ALGO_GEMM`* | +| 3 |*`CUDNN_CONVOLUTION_FWD_ALGO_DIRECT`* | |*`HIPDNN_CONVOLUTION_FWD_ALGO_DIRECT`* | +| 4 |*`CUDNN_CONVOLUTION_FWD_ALGO_FFT`* | |*`HIPDNN_CONVOLUTION_FWD_ALGO_FFT`* | +| 5 |*`CUDNN_CONVOLUTION_FWD_ALGO_FFT_TILING`* | |*`HIPDNN_CONVOLUTION_FWD_ALGO_FFT_TILING`* | +| 6 |*`CUDNN_CONVOLUTION_FWD_ALGO_WINOGRAD`* | 7.5 |*`HIPDNN_CONVOLUTION_FWD_ALGO_WINOGRAD`* | +| 7 |*`CUDNN_CONVOLUTION_FWD_ALGO_WINOGRAD_NONFUSED`* | 7.5 |*`HIPDNN_CONVOLUTION_FWD_ALGO_WINOGRAD_NONFUSED`* | +| 8 |*`CUDNN_CONVOLUTION_FWD_ALGO_COUNT`* | 7.5 |*`HIPDNN_CONVOLUTION_FWD_ALGO_COUNT`* | +| struct |`cudnnConvolutionFwdAlgoPerf_t` | |`hipdnnConvolutionFwdAlgoPerf_t` | +| enum |***`cudnnConvolutionBwdFilterPreference_t`*** | |***`hipdnnConvolutionBwdFilterPreference_t`*** | +| 0 |*`CUDNN_CONVOLUTION_BWD_FILTER_NO_WORKSPACE`* | |*`HIPDNN_CONVOLUTION_BWD_FILTER_NO_WORKSPACE`* | +| 1 |*`CUDNN_CONVOLUTION_BWD_FILTER_PREFER_FASTEST`* | |*`HIPDNN_CONVOLUTION_BWD_FILTER_PREFER_FASTEST`* | +| 2 |*`CUDNN_CONVOLUTION_BWD_FILTER_SPECIFY_WORKSPACE_LIMIT`* | |*`HIPDNN_CONVOLUTION_BWD_FILTER_SPECIFY_WORKSPACE_LIMIT`* | +| enum |***`cudnnConvolutionBwdFilterAlgo_t`*** | |***`hipdnnConvolutionBwdFilterAlgo_t`*** | +| 0 |*`CUDNN_CONVOLUTION_BWD_FILTER_ALGO_0`* | |*`HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_0`* | +| 1 |*`CUDNN_CONVOLUTION_BWD_FILTER_ALGO_1`* | |*`HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_1`* | +| 2 |*`CUDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT`* | |*`HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT`* | +| 3 |*`CUDNN_CONVOLUTION_BWD_FILTER_ALGO_3`* | |*`HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_3`* | +| 4 |*`CUDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD`* | 7.5 |*`HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD`* | +| 5 |*`CUDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD_NONFUSED`* | 7.5 |*`HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_WINOGRAD_NONFUSED`* | +| 6 |*`CUDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT_TILING`* | 7.5 |*`HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_FFT_TILING`* | +| 7 |*`CUDNN_CONVOLUTION_BWD_FILTER_ALGO_COUNT`* | 7.5 |*`HIPDNN_CONVOLUTION_BWD_FILTER_ALGO_COUNT`* | +| struct |`cudnnConvolutionBwdDataAlgoPerf_t` | |`hipdnnConvolutionBwdDataAlgoPerf_t` | +| enum |***`cudnnSoftmaxAlgorithm_t`*** | |***`hipdnnSoftmaxAlgorithm_t`*** | +| 0 |*`CUDNN_SOFTMAX_FAST`* | |*`HIPDNN_SOFTMAX_FAST`* | +| 1 |*`CUDNN_SOFTMAX_ACCURATE`* | |*`HIPDNN_SOFTMAX_ACCURATE`* | +| 2 |*`CUDNN_SOFTMAX_LOG`* | |*`HIPDNN_SOFTMAX_LOG`* | +| enum |***`cudnnSoftmaxMode_t`*** | |***`hipdnnSoftmaxMode_t`*** | +| 0 |*`CUDNN_SOFTMAX_MODE_INSTANCE`* | |*`HIPDNN_SOFTMAX_MODE_INSTANCE`* | +| 1 |*`CUDNN_SOFTMAX_MODE_CHANNEL`* | |*`HIPDNN_SOFTMAX_MODE_CHANNEL`* | +| enum |***`cudnnPoolingMode_t`*** | |***`hipdnnPoolingMode_t`*** | +| 0 |*`CUDNN_POOLING_MAX`* | |*`HIPDNN_POOLING_MAX`* | +| 1 |*`CUDNN_POOLING_AVERAGE_COUNT_INCLUDE_PADDING`* | |*`HIPDNN_POOLING_AVERAGE_COUNT_INCLUDE_PADDING`* | +| 2 |*`CUDNN_POOLING_AVERAGE_COUNT_EXCLUDE_PADDING`* | |*`HIPDNN_POOLING_AVERAGE_COUNT_EXCLUDE_PADDING`* | +| 3 |*`CUDNN_POOLING_MAX_DETERMINISTIC`* | 7.5 |*`HIPDNN_POOLING_MAX_DETERMINISTIC`* | +| enum |***`cudnnActivationMode_t`*** | |***`hipdnnActivationMode_t`*** | +| 0 |*`CUDNN_ACTIVATION_SIGMOID`* | |*`HIPDNN_ACTIVATION_SIGMOID`* | +| 1 |*`CUDNN_ACTIVATION_RELU`* | |*`HIPDNN_ACTIVATION_RELU`* | +| 2 |*`CUDNN_ACTIVATION_TANH`* | |*`HIPDNN_ACTIVATION_TANH`* | +| 3 |*`CUDNN_ACTIVATION_CLIPPED_RELU`* | |*`HIPDNN_ACTIVATION_CLIPPED_RELU`* | +| 4 |*`CUDNN_ACTIVATION_ELU`* | 7.5 |*`HIPDNN_ACTIVATION_ELU`* | +| 5 |*`CUDNN_ACTIVATION_IDENTITY`* | 8.0 |*`HIPDNN_ACTIVATION_PATHTRU`* | +| define |`CUDNN_LRN_MIN_N` | | | +| define |`CUDNN_LRN_MAX_N` | | | +| define |`CUDNN_LRN_MIN_K` | | | +| define |`CUDNN_LRN_MIN_BETA` | | | +| enum |***`cudnnLRNMode_t`*** | |***`hipdnnLRNMode_t`*** | +| 0 |*`CUDNN_LRN_CROSS_CHANNEL_DIM1`* | |*`HIPDNN_LRN_CROSS_CHANNEL`* | +| enum |***`cudnnDivNormMode_t`*** | | | +| 0 |*`CUDNN_DIVNORM_PRECOMPUTED_MEANS`* | | | +| enum |***`cudnnBatchNormMode_t`*** | |***`hipdnnBatchNormMode_t`*** | +| 0 |*`CUDNN_BATCHNORM_PER_ACTIVATION`* | |*`HIPDNN_BATCHNORM_PER_ACTIVATION`* | +| 1 |*`CUDNN_BATCHNORM_SPATIAL`* | |*`HIPDNN_BATCHNORM_SPATIAL`* | +| 2 |*`CUDNN_BATCHNORM_SPATIAL_PERSISTENT`* | 8.0 |*`HIPDNN_BATCHNORM_SPATIAL_PERSISTENT`* | +| define |`CUDNN_BN_MIN_EPSILON` | |`HIPDNN_BN_MIN_EPSILON` | +| enum |***`cudnnSamplerType_t`*** | 7.5 | | +| 0 |*`CUDNN_SAMPLER_BILINEAR`* | 7.5 | | +| struct |`cudnnDropoutStruct` | 7.5 | | +| struct* |`cudnnDropoutDescriptor_t` | 7.5 |`hipdnnDropoutDescriptor_t` | +| enum |***`cudnnRNNMode_t`*** | 7.5 |***`hipdnnRNNMode_t`*** | +| 0 |*`CUDNN_RNN_RELU`* | 7.5 |*`HIPDNN_RNN_RELU`* | +| 1 |*`CUDNN_RNN_TANH`* | 7.5 |*`HIPDNN_RNN_TANH`* | +| 2 |*`CUDNN_LSTM`* | 7.5 |*`HIPDNN_LSTM`* | +| 3 |*`CUDNN_GRU`* | 7.5 |*`HIPDNN_GRU`* | +| enum |***`cudnnRNNBiasMode_t`*** | 9.0 |***`hipdnnRNNBiasMode_t`*** | +| 0 |*`CUDNN_RNN_NO_BIAS`* | 9.0 |*`HIPDNN_RNN_NO_BIAS`* | +| 1 |*`CUDNN_RNN_SINGLE_INP_BIAS`* | 9.0 |*`HIPDNN_RNN_WITH_BIAS`* | +| 2 |*`CUDNN_RNN_DOUBLE_BIAS`* | 9.0 |*`HIPDNN_RNN_WITH_BIAS`* | 1 | +| 3 |*`CUDNN_RNN_SINGLE_REC_BIAS`* | 9.0 |*`HIPDNN_RNN_WITH_BIAS`* | 1 | +| enum |***`cudnnDirectionMode_t`*** | 7.5 |***`hipdnnDirectionMode_t`*** | +| 0 |*`CUDNN_UNIDIRECTIONAL`* | 7.5 |*`HIPDNN_UNIDIRECTIONAL`* | +| 1 |*`CUDNN_BIDIRECTIONAL`* | 7.5 |*`HIPDNN_BIDIRECTIONAL`* | +| enum |***`cudnnRNNAlgo_t`*** | 7.5 |***`hipdnnRNNAlgo_t`*** | +| 0 |*`CUDNN_RNN_ALGO_STANDARD`* | 7.5 |*`HIPDNN_RNN_ALGO_STANDARD`* | +| 1 |*`CUDNN_RNN_ALGO_PERSIST_STATIC`* | 7.5 |*`HIPDNN_RNN_ALGO_PERSIST_STATIC`* | +| 2 |*`CUDNN_RNN_ALGO_PERSIST_DYNAMIC`* | 7.5 |*`HIPDNN_RNN_ALGO_PERSIST_DYNAMIC`* | +| 3 |*`CUDNN_RNN_ALGO_COUNT`* | 8.0 | | +| struct |`cudnnAlgorithmStruct` | 8.0 | | +| struct* |`cudnnAlgorithmDescriptor_t` | 8.0 | | +| struct |`cudnnAlgorithmPerformanceStruct` | 8.0 | | +| struct* |`cudnnAlgorithmPerformance_t` | 8.0 | | +| struct |`cudnnRNNStruct` | 7.5 | | +| struct* |`cudnnRNNDescriptor_t` | 7.5 |`hipdnnRNNDescriptor_t` | +| struct |`cudnnPersistentRNNPlan` | 7.5 | | +| struct* |`cudnnPersistentRNNPlan_t` | 7.5 |`hipdnnPersistentRNNPlan_t` | +| enum |***`cudnnCTCLossAlgo_t`*** | 8.0 | | +| 0 |*`CUDNN_CTC_LOSS_ALGO_DETERMINISTIC`* | 8.0 | | +| 1 |*`CUDNN_CTC_LOSS_ALGO_NON_DETERMINISTIC`* | 8.0 | | +| struct |`cudnnAlgorithm_t` | 8.0 | | +| enum |***`cudnnSeverity_t`*** | 8.0 | | +| 0 |*`CUDNN_SEV_FATAL`* | 8.0 | | +| 1 |*`CUDNN_SEV_ERROR`* | 8.0 | | +| 2 |*`CUDNN_SEV_WARNING`* | 8.0 | | +| 3 |*`CUDNN_SEV_INFO`* | 8.0 | | +| define |`CUDNN_SEV_ERROR_EN` | 8.0 | | +| define |`CUDNN_SEV_WARNING_EN` | 8.0 | | +| define |`CUDNN_SEV_INFO_EN` | 8.0 | | +| struct |`cudnnDebug_t` | 8.0 | | +| struct |`cudnnCallback_t` | 8.0 | | +| enum |***`cudnnBatchNormOps_t`*** | 9.0 | | +| 0 |*`CUDNN_BATCHNORM_OPS_BN`* | 9.0 | | +| 1 |*`CUDNN_BATCHNORM_OPS_BN_ACTIVATION`* | 9.0 | | +| 2 |*`CUDNN_BATCHNORM_OPS_BN_ADD_ACTIVATION`* | 9.0 | | +| enum |***`cudnnRNNClipMode_t`*** | 9.0 | | +| 0 |*`CUDNN_RNN_CLIP_NONE`* | 9.0 | | +| 1 |*`CUDNN_RNN_CLIP_MINMAX`* | 9.0 | | +| struct |`cudnnRNNDataStruct` | 9.0 | | +| struct* |`cudnnRNNDataDescriptor_t` | 9.0 | | +| enum |***`cudnnRNNDataLayout_t`*** | 9.0 | | +| 0 |*`CUDNN_RNN_DATA_LAYOUT_SEQ_MAJOR_UNPACKED`* | 9.0 | | +| 1 |*`CUDNN_RNN_DATA_LAYOUT_SEQ_MAJOR_PACKED`* | 9.0 | | +| 2 |*`CUDNN_RNN_DATA_LAYOUT_BATCH_MAJOR_UNPACKED`* | 9.0 | | +| enum |***`cudnnRNNPaddingMode_t`*** | 9.0 | | +| 0 |*`CUDNN_RNN_PADDED_IO_DISABLED`* | 9.0 | | +| 1 |*`CUDNN_RNN_PADDED_IO_ENABLED`* | 9.0 | | +| enum |***`cudnnSeqDataAxis_t`*** | 9.0 | | +| 0 |*`CUDNN_SEQDATA_TIME_DIM`* | 9.0 | | +| 1 |*`CUDNN_SEQDATA_BATCH_DIM`* | 9.0 | | +| 2 |*`CUDNN_SEQDATA_BEAM_DIM`* | 9.0 | | +| 3 |*`CUDNN_SEQDATA_VECT_DIM`* | 9.0 | | +| define |`CUDNN_SEQDATA_DIM_COUNT` | 9.0 | | +| struct |`cudnnSeqDataStruct` | 9.0 | | +| struct* |`cudnnSeqDataDescriptor_t` | 9.0 | | +| enum |***`cudnnAttnQueryMap_t`*** | 9.0 | | +| 0 |*`CUDNN_ATTN_QUERYMAP_ALL_TO_ONE`* | 9.0 | | +| 1 |*`CUDNN_ATTN_QUERYMAP_ONE_TO_ONE`* | 9.0 | | +| struct |`cudnnAttnStruct` | 9.0 | | +| struct* |`cudnnAttnDescriptor_t` | 9.0 | | +| enum |***`cudnnMultiHeadAttnWeightKind_t`*** | 9.0 | | +| 0 |*`CUDNN_MH_ATTN_Q_WEIGHTS`* | 9.0 | | +| 1 |*`CUDNN_MH_ATTN_K_WEIGHTS`* | 9.0 | | +| 2 |*`CUDNN_MH_ATTN_V_WEIGHTS`* | 9.0 | | +| 3 |*`CUDNN_MH_ATTN_O_WEIGHTS`* | 9.0 | | +| enum |***`cudnnWgradMode_t`*** | 9.0 | | +| 0 |*`CUDNN_WGRAD_MODE_ADD`* | 9.0 | | +| 1 |*`CUDNN_WGRAD_MODE_SET`* | 9.0 | | +| enum |***`cudnnReorderType_t`*** | 10.1 | | +| 0 |*`CUDNN_DEFAULT_REORDER`* | 10.1 | | +| 1 |*`CUDNN_NO_REORDER`* | 10.1 | | +| enum |***`cudnnLossNormalizationMode_t`*** | 10.1 | | +| 0 |*`CUDNN_LOSS_NORMALIZATION_NONE`* | 10.1 | | +| 1 |*`CUDNN_LOSS_NORMALIZATION_SOFTMAX`* | 10.1 | | +| struct |`cudnnFusedOpsConstParamStruct` | 10.1 | | +| struct* |`cudnnFusedOpsConstParamPack_t` | 10.1 | | +| struct |`cudnnFusedOpsVariantParamStruct` | 10.1 | | +| struct* |`cudnnFusedOpsVariantParamPack_t` | 10.1 | | +| struct |`cudnnFusedOpsPlanStruct` | 10.1 | | +| struct* |`cudnnFusedOpsPlan_t` | 10.1 | | +| enum |***`cudnnFusedOps_t`*** | 10.1 | | +| 0 |*`CUDNN_FUSED_SCALE_BIAS_ACTIVATION_CONV_BNSTATS`* | 10.1 | | +| 1 |*`CUDNN_FUSED_SCALE_BIAS_ACTIVATION_WGRAD`* | 10.1 | | +| 2 |*`CUDNN_FUSED_BN_FINALIZE_STATISTICS_TRAINING`* | 10.1 | | +| 3 |*`CUDNN_FUSED_BN_FINALIZE_STATISTICS_INFERENCE`* | 10.1 | | +| 4 |*`CUDNN_FUSED_CONV_SCALE_BIAS_ADD_ACTIVATION`* | 10.1 | | +| 5 |*`CUDNN_FUSED_SCALE_BIAS_ADD_ACTIVATION_GEN_BITMASK`* | 10.1 | | +| 6 |*`CUDNN_FUSED_DACTIVATION_FORK_DBATCHNORM`* | 10.1 | | +| enum |***`cudnnFusedOpsConstParamLabel_t`*** | 10.1 | | +| 0 |*`CUDNN_PARAM_XDESC`* | 10.1 | | +| 1 |*`CUDNN_PARAM_XDATA_PLACEHOLDER`* | 10.1 | | +| 2 |*`CUDNN_PARAM_BN_MODE`* | 10.1 | | +| 3 |*`CUDNN_PARAM_BN_EQSCALEBIAS_DESC`* | 10.1 | | +| 4 |*`CUDNN_PARAM_BN_EQSCALE_PLACEHOLDER`* | 10.1 | | +| 5 |*`CUDNN_PARAM_BN_EQBIAS_PLACEHOLDER`* | 10.1 | | +| 6 |*`CUDNN_PARAM_ACTIVATION_DESC`* | 10.1 | | +| 7 |*`CUDNN_PARAM_CONV_DESC`* | 10.1 | | +| 8 |*`CUDNN_PARAM_WDESC`* | 10.1 | | +| 9 |*`CUDNN_PARAM_WDATA_PLACEHOLDER`* | 10.1 | | +| 10 |*`CUDNN_PARAM_DWDESC`* | 10.1 | | +| 11 |*`CUDNN_PARAM_DWDATA_PLACEHOLDER`* | 10.1 | | +| 12 |*`CUDNN_PARAM_YDESC`* | 10.1 | | +| 13 |*`CUDNN_PARAM_YDATA_PLACEHOLDER`* | 10.1 | | +| 14 |*`CUDNN_PARAM_DYDESC`* | 10.1 | | +| 15 |*`CUDNN_PARAM_DYDATA_PLACEHOLDER`* | 10.1 | | +| 16 |*`CUDNN_PARAM_YSTATS_DESC`* | 10.1 | | +| 17 |*`CUDNN_PARAM_YSUM_PLACEHOLDER`* | 10.1 | | +| 18 |*`CUDNN_PARAM_YSQSUM_PLACEHOLDER`* | 10.1 | | +| 19 |*`CUDNN_PARAM_BN_SCALEBIAS_MEANVAR_DESC`* | 10.1 | | +| 20 |*`CUDNN_PARAM_BN_SCALE_PLACEHOLDER`* | 10.1 | | +| 21 |*`CUDNN_PARAM_BN_BIAS_PLACEHOLDER`* | 10.1 | | +| 22 |*`CUDNN_PARAM_BN_SAVED_MEAN_PLACEHOLDER`* | 10.1 | | +| 23 |*`CUDNN_PARAM_BN_SAVED_INVSTD_PLACEHOLDER`* | 10.1 | | +| 24 |*`CUDNN_PARAM_BN_RUNNING_MEAN_PLACEHOLDER`* | 10.1 | | +| 25 |*`CUDNN_PARAM_BN_RUNNING_VAR_PLACEHOLDER`* | 10.1 | | +| 26 |*`CUDNN_PARAM_ZDESC`* | 10.1 | | +| 27 |*`CUDNN_PARAM_ZDATA_PLACEHOLDER`* | 10.1 | | +| 28 |*`CUDNN_PARAM_BN_Z_EQSCALEBIAS_DESC`* | 10.1 | | +| 29 |*`CUDNN_PARAM_BN_Z_EQSCALE_PLACEHOLDER`* | 10.1 | | +| 30 |*`CUDNN_PARAM_BN_Z_EQBIAS_PLACEHOLDER`* | 10.1 | | +| 31 |*`CUDNN_PARAM_ACTIVATION_BITMASK_DESC`* | 10.1 | | +| 32 |*`CUDNN_PARAM_ACTIVATION_BITMASK_PLACEHOLDER`* | 10.1 | | +| 33 |*`CUDNN_PARAM_DXDESC`* | 10.1 | | +| 34 |*`CUDNN_PARAM_DXDATA_PLACEHOLDER`* | 10.1 | | +| 35 |*`CUDNN_PARAM_DZDESC`* | 10.1 | | +| 36 |*`CUDNN_PARAM_DZDATA_PLACEHOLDER`* | 10.1 | | +| 37 |*`CUDNN_PARAM_BN_DSCALE_PLACEHOLDER`* | 10.1 | | +| 38 |*`CUDNN_PARAM_BN_DBIAS_PLACEHOLDER`* | 10.1 | | +| enum |***`cudnnFusedOpsPointerPlaceHolder_t`*** | 10.1 | | +| 0 |*`CUDNN_PTR_NULL`* | 10.1 | | +| 1 |*`CUDNN_PTR_ELEM_ALIGNED`* | 10.1 | | +| 2 |*`CUDNN_PTR_16B_ALIGNED`* | 10.1 | | +| enum |***`cudnnFusedOpsVariantParamLabel_t`*** | 10.1 | | +| 0 |*`CUDNN_PTR_XDATA`* | 10.1 | | +| 1 |*`CUDNN_PTR_BN_EQSCALE`* | 10.1 | | +| 2 |*`CUDNN_PTR_BN_EQBIAS`* | 10.1 | | +| 3 |*`CUDNN_PTR_WDATA`* | 10.1 | | +| 4 |*`CUDNN_PTR_DWDATA`* | 10.1 | | +| 5 |*`CUDNN_PTR_YDATA`* | 10.1 | | +| 6 |*`CUDNN_PTR_DYDATA`* | 10.1 | | +| 7 |*`CUDNN_PTR_YSUM`* | 10.1 | | +| 8 |*`CUDNN_PTR_YSQSUM`* | 10.1 | | +| 9 |*`CUDNN_PTR_WORKSPACE`* | 10.1 | | +| 10 |*`CUDNN_PTR_BN_SCALE`* | 10.1 | | +| 11 |*`CUDNN_PTR_BN_BIAS`* | 10.1 | | +| 12 |*`CUDNN_PTR_BN_SAVED_MEAN`* | 10.1 | | +| 13 |*`CUDNN_PTR_BN_SAVED_INVSTD`* | 10.1 | | +| 14 |*`CUDNN_PTR_BN_RUNNING_MEAN`* | 10.1 | | +| 15 |*`CUDNN_PTR_BN_RUNNING_VAR`* | 10.1 | | +| 16 |*`CUDNN_PTR_ZDATA`* | 10.1 | | +| 17 |*`CUDNN_PTR_BN_Z_EQSCALE`* | 10.1 | | +| 18 |*`CUDNN_PTR_BN_Z_EQBIAS`* | 10.1 | | +| 19 |*`CUDNN_PTR_ACTIVATION_BITMASK`* | 10.1 | | +| 20 |*`CUDNN_PTR_DXDATA`* | 10.1 | | +| 21 |*`CUDNN_PTR_DZDATA`* | 10.1 | | +| 22 |*`CUDNN_PTR_BN_DSCALE`* | 10.1 | | +| 23 |*`CUDNN_PTR_BN_DBIAS`* | 10.1 | | +| 100 |*`CUDNN_SCALAR_SIZE_T_WORKSPACE_SIZE_IN_BYTES`* | 10.1 | | +| 101 |*`CUDNN_SCALAR_INT64_T_BN_ACCUMULATION_COUNT`* | 10.1 | | +| 102 |*`CUDNN_SCALAR_DOUBLE_BN_EXP_AVG_FACTOR`* | 10.1 | | +| 103 |*`CUDNN_SCALAR_DOUBLE_BN_EPSILON`* | 10.1 | | ## **2. CUDNN API functions** -| **CUDA** | **HIP** | -|-----------------------------------------------------------|-------------------------------------------------| +| **CUDA** | **HIP** |**CUDA version\***| +|-----------------------------------------------------------|-------------------------------------------------|:-----------------| |`cudnnGetVersion` |`hipdnnGetVersion` | -|`cudnnGetCudartVersion` | | +|`cudnnGetCudartVersion` | | 7.5 | |`cudnnGetErrorString` |`hipdnnGetErrorString` | -|`cudnnQueryRuntimeError` | | -|`cudnnGetProperty` | | +|`cudnnQueryRuntimeError` | | 8.0 | +|`cudnnGetProperty` | | 7.5 | |`cudnnCreate` |`hipdnnCreate` | |`cudnnDestroy` |`hipdnnDestroy` | |`cudnnSetStream` |`hipdnnSetStream` | -|`cudnnSetStream` |`hipdnnGetStream` | +|`cudnnGetStream` |`hipdnnGetStream` | |`cudnnCreateTensorDescriptor` |`hipdnnCreateTensorDescriptor` | |`cudnnSetTensor4dDescriptor` |`hipdnnSetTensor4dDescriptor` | |`cudnnSetTensor4dDescriptorEx` |`hipdnnSetTensor4dDescriptorEx` | |`cudnnGetTensor4dDescriptor` |`hipdnnGetTensor4dDescriptor` | |`cudnnSetTensorNdDescriptor` |`hipdnnSetTensorNdDescriptor` | -|`cudnnSetTensorNdDescriptorEx` | | +|`cudnnSetTensorNdDescriptorEx` | | 7.5 | |`cudnnGetTensorNdDescriptor` |`hipdnnGetTensorNdDescriptor` | -|`cudnnGetTensorSizeInBytes` | | +|`cudnnGetTensorSizeInBytes` | | 7.5 | |`cudnnDestroyTensorDescriptor` |`hipdnnDestroyTensorDescriptor` | |`cudnnTransformTensor` | | -|`cudnnTransformTensorEx` | | -|`cudnnInitTransformDest` | | -|`cudnnCreateTensorTransformDescriptor` | | -|`cudnnSetTensorTransformDescriptor` | | -|`cudnnGetTensorTransformDescriptor` | | -|`cudnnDestroyTensorTransformDescriptor` | | +|`cudnnTransformTensorEx` | | 9.0 | +|`cudnnInitTransformDest` | | 9.0 | +|`cudnnCreateTensorTransformDescriptor` | | 9.0 | +|`cudnnSetTensorTransformDescriptor` | | 9.0 | +|`cudnnGetTensorTransformDescriptor` | | 9.0 | +|`cudnnDestroyTensorTransformDescriptor` | | 9.0 | |`cudnnAddTensor` |`hipdnnAddTensor` | -|`cudnnCreateOpTensorDescriptor` |`hipdnnCreateOpTensorDescriptor` | -|`cudnnSetOpTensorDescriptor` |`hipdnnSetOpTensorDescriptor` | -|`cudnnGetOpTensorDescriptor` |`hipdnnGetOpTensorDescriptor` | -|`cudnnDestroyOpTensorDescriptor` |`hipdnnDestroyOpTensorDescriptor` | -|`cudnnOpTensor` |`hipdnnOpTensor` | -|`cudnnGetFoldedConvBackwardDataDescriptors` | | -|`cudnnCreateReduceTensorDescriptor` |`hipdnnCreateReduceTensorDescriptor` | -|`cudnnSetReduceTensorDescriptor` |`hipdnnSetReduceTensorDescriptor` | -|`cudnnGetReduceTensorDescriptor` |`hipdnnGetReduceTensorDescriptor` | -|`cudnnDestroyReduceTensorDescriptor` |`hipdnnDestroyReduceTensorDescriptor` | -|`cudnnGetReductionIndicesSize` | | -|`cudnnGetReductionWorkspaceSize` |`hipdnnGetReductionWorkspaceSize` | -|`cudnnReduceTensor` |`hipdnnReduceTensor` | +|`cudnnCreateOpTensorDescriptor` |`hipdnnCreateOpTensorDescriptor` | 7.5 | +|`cudnnSetOpTensorDescriptor` |`hipdnnSetOpTensorDescriptor` | 7.5 | +|`cudnnGetOpTensorDescriptor` |`hipdnnGetOpTensorDescriptor` | 7.5 | +|`cudnnDestroyOpTensorDescriptor` |`hipdnnDestroyOpTensorDescriptor` | 7.5 | +|`cudnnOpTensor` |`hipdnnOpTensor` | 7.5 | +|`cudnnGetFoldedConvBackwardDataDescriptors` | | 10.1 | +|`cudnnCreateReduceTensorDescriptor` |`hipdnnCreateReduceTensorDescriptor` | 7.5 | +|`cudnnSetReduceTensorDescriptor` |`hipdnnSetReduceTensorDescriptor` | 7.5 | +|`cudnnGetReduceTensorDescriptor` |`hipdnnGetReduceTensorDescriptor` | 7.5 | +|`cudnnDestroyReduceTensorDescriptor` |`hipdnnDestroyReduceTensorDescriptor` | 7.5 | +|`cudnnGetReductionIndicesSize` | | 7.5 | +|`cudnnGetReductionWorkspaceSize` |`hipdnnGetReductionWorkspaceSize` | 7.5 | +|`cudnnReduceTensor` |`hipdnnReduceTensor` | 7.5 | |`cudnnSetTensor` |`hipdnnSetTensor` | |`cudnnScaleTensor` |`hipdnnScaleTensor` | |`cudnnCreateFilterDescriptor` |`hipdnnCreateFilterDescriptor` | @@ -390,17 +390,17 @@ |`cudnnGetFilter4dDescriptor` |`hipdnnGetFilter4dDescriptor` | |`cudnnSetFilterNdDescriptor` |`hipdnnSetFilterNdDescriptor` | |`cudnnGetFilterNdDescriptor` |`hipdnnGetFilterNdDescriptor` | -|`cudnnGetFilterSizeInBytes` | | -|`cudnnTransformFilter` | | +|`cudnnGetFilterSizeInBytes` | | 10.1 | +|`cudnnTransformFilter` | | 10.1 | |`cudnnDestroyFilterDescriptor` |`hipdnnDestroyFilterDescriptor` | -|`cudnnReorderFilterAndBias` | | +|`cudnnReorderFilterAndBias` | | 10.1 | |`cudnnCreateConvolutionDescriptor` |`hipdnnCreateConvolutionDescriptor` | -|`cudnnSetConvolutionMathType` |`hipdnnSetConvolutionMathType` | -|`cudnnGetConvolutionMathType` | | -|`cudnnSetConvolutionGroupCount` |`hipdnnSetConvolutionGroupCount` | -|`cudnnGetConvolutionGroupCount` | | -|`cudnnSetConvolutionReorderType` | | -|`cudnnGetConvolutionReorderType` | | +|`cudnnSetConvolutionMathType` |`hipdnnSetConvolutionMathType` | 8.0 | +|`cudnnGetConvolutionMathType` | | 8.0 | +|`cudnnSetConvolutionGroupCount` |`hipdnnSetConvolutionGroupCount` | 8.0 | +|`cudnnGetConvolutionGroupCount` | | 8.0 | +|`cudnnSetConvolutionReorderType` | | 10.1 | +|`cudnnGetConvolutionReorderType` | | 10.1 | |`cudnnSetConvolution2dDescriptor` |`hipdnnSetConvolution2dDescriptor` | |`cudnnGetConvolution2dDescriptor` |`hipdnnGetConvolution2dDescriptor` | |`cudnnGetConvolution2dForwardOutputDim` |`hipdnnGetConvolution2dForwardOutputDim` | @@ -408,27 +408,27 @@ |`cudnnGetConvolutionNdDescriptor` | | |`cudnnGetConvolutionNdForwardOutputDim` | | |`cudnnDestroyConvolutionDescriptor` | | -|`cudnnGetConvolutionForwardAlgorithmMaxCount` | | +|`cudnnGetConvolutionForwardAlgorithmMaxCount` | | 8.0 | |`cudnnFindConvolutionForwardAlgorithm` |`hipdnnFindConvolutionForwardAlgorithm` | -|`cudnnFindConvolutionForwardAlgorithmEx` |`hipdnnFindConvolutionForwardAlgorithmEx` | +|`cudnnFindConvolutionForwardAlgorithmEx` |`hipdnnFindConvolutionForwardAlgorithmEx` | 7.5 | |`cudnnGetConvolutionForwardAlgorithm` |`hipdnnGetConvolutionForwardAlgorithm` | -|`cudnnGetConvolutionForwardAlgorithm_v7` | | +|`cudnnGetConvolutionForwardAlgorithm_v7` | | 8.0 | |`cudnnGetConvolutionForwardWorkspaceSize` |`hipdnnGetConvolutionForwardWorkspaceSize` | |`cudnnConvolutionForward` |`hipdnnConvolutionForward` | -|`cudnnConvolutionBiasActivationForward` | | +|`cudnnConvolutionBiasActivationForward` | | 7.5 | |`cudnnConvolutionBackwardBias` |`hipdnnConvolutionBackwardBias` | -|`cudnnGetConvolutionBackwardFilterAlgorithmMaxCount` | | +|`cudnnGetConvolutionBackwardFilterAlgorithmMaxCount` | | 8.0 | |`cudnnFindConvolutionBackwardFilterAlgorithm` |`hipdnnFindConvolutionBackwardFilterAlgorithm` | -|`cudnnFindConvolutionBackwardFilterAlgorithmEx` |`hipdnnFindConvolutionBackwardFilterAlgorithmEx` | +|`cudnnFindConvolutionBackwardFilterAlgorithmEx` |`hipdnnFindConvolutionBackwardFilterAlgorithmEx` | 7.5 | |`cudnnGetConvolutionBackwardFilterAlgorithm` |`hipdnnGetConvolutionBackwardFilterAlgorithm` | -|`cudnnGetConvolutionBackwardFilterAlgorithm_v7` | | +|`cudnnGetConvolutionBackwardFilterAlgorithm_v7` | | 8.0 | |`cudnnGetConvolutionBackwardFilterWorkspaceSize` |`hipdnnGetConvolutionBackwardFilterWorkspaceSize`| |`cudnnConvolutionBackwardFilter` |`hipdnnConvolutionBackwardFilter` | -|`cudnnGetConvolutionBackwardDataAlgorithmMaxCount` | | +|`cudnnGetConvolutionBackwardDataAlgorithmMaxCount` | | 8.0 | |`cudnnFindConvolutionBackwardDataAlgorithm` |`hipdnnFindConvolutionBackwardDataAlgorithm` | -|`cudnnFindConvolutionBackwardDataAlgorithmEx` |`hipdnnFindConvolutionBackwardDataAlgorithmEx` | +|`cudnnFindConvolutionBackwardDataAlgorithmEx` |`hipdnnFindConvolutionBackwardDataAlgorithmEx` | 7.5 | |`cudnnGetConvolutionBackwardDataAlgorithm` |`hipdnnGetConvolutionBackwardDataAlgorithm` | -|`cudnnGetConvolutionBackwardDataAlgorithm_v7` | | +|`cudnnGetConvolutionBackwardDataAlgorithm_v7` | | 8.0 | |`cudnnGetConvolutionBackwardDataWorkspaceSize` |`hipdnnGetConvolutionBackwardDataWorkspaceSize` | |`cudnnConvolutionBackwardData` |`hipdnnConvolutionBackwardData` | |`cudnnIm2Col` | | @@ -460,118 +460,120 @@ |`cudnnDivisiveNormalizationBackward` | | |`cudnnDeriveBNTensorDescriptor` |`hipdnnDeriveBNTensorDescriptor` | |`cudnnBatchNormalizationForwardTraining` |`hipdnnBatchNormalizationForwardTraining` | -|`cudnnBatchNormalizationForwardTrainingEx` | | +|`cudnnBatchNormalizationForwardTrainingEx` | | 9.0 | |`cudnnBatchNormalizationForwardInference` |`hipdnnBatchNormalizationForwardInference` | |`cudnnBatchNormalizationBackward` |`hipdnnBatchNormalizationBackward` | -|`cudnnBatchNormalizationBackwardEx` | | -|`cudnnCreateSpatialTransformerDescriptor` | | -|`cudnnSetSpatialTransformerNdDescriptor` | | -|`cudnnDestroySpatialTransformerDescriptor` | | -|`cudnnSpatialTfGridGeneratorForward` | | -|`cudnnSpatialTfGridGeneratorBackward` | | -|`cudnnSpatialTfSamplerForward` | | -|`cudnnSpatialTfSamplerBackward` | | -|`cudnnCreateDropoutDescriptor` |`hipdnnCreateDropoutDescriptor` | -|`cudnnDestroyDropoutDescriptor` |`hipdnnDestroyDropoutDescriptor` | -|`cudnnDropoutGetStatesSize` |`hipdnnDropoutGetStatesSize` | -|`cudnnDropoutGetReserveSpaceSize` | | -|`cudnnSetDropoutDescriptor` |`hipdnnSetDropoutDescriptor` | -|`cudnnGetDropoutDescriptor` | | -|`cudnnRestoreDropoutDescriptor` | | -|`cudnnDropoutForward` | | -|`cudnnDropoutBackward` | | -|`cudnnCreateRNNDescriptor` |`hipdnnCreateRNNDescriptor` | -|`cudnnDestroyRNNDescriptor` |`hipdnnDestroyRNNDescriptor` | -|`cudnnGetRNNForwardInferenceAlgorithmMaxCount` | | -|`cudnnFindRNNForwardInferenceAlgorithmEx` | | -|`cudnnGetRNNForwardTrainingAlgorithmMaxCount` | | -|`cudnnFindRNNForwardTrainingAlgorithmEx` | | -|`cudnnGetRNNBackwardDataAlgorithmMaxCount` | | -|`cudnnFindRNNBackwardDataAlgorithmEx` | | -|`cudnnGetRNNBackwardWeightsAlgorithmMaxCount` | | -|`cudnnFindRNNBackwardWeightsAlgorithmEx` | | -|`cudnnCreatePersistentRNNPlan` |`hipdnnCreatePersistentRNNPlan` | -|`cudnnSetPersistentRNNPlan` |`hipdnnSetPersistentRNNPlan` | -|`cudnnDestroyPersistentRNNPlan` |`hipdnnDestroyPersistentRNNPlan` | -|`cudnnSetRNNDescriptor` |`hipdnnSetRNNDescriptor` | -|`cudnnGetRNNDescriptor` |`hipdnnGetRNNDescriptor` | -|`cudnnSetRNNProjectionLayers` | | -|`cudnnGetRNNProjectionLayers` | | -|`cudnnSetRNNAlgorithmDescriptor` | | -|`cudnnSetRNNMatrixMathType` | | -|`cudnnGetRNNMatrixMathType` | | -|`cudnnGetRNNWorkspaceSize` |`hipdnnGetRNNWorkspaceSize` | -|`cudnnGetRNNTrainingReserveSize` |`hipdnnGetRNNTrainingReserveSize` | -|`cudnnGetRNNParamsSize` |`hipdnnGetRNNParamsSize` | -|`cudnnGetRNNLinLayerMatrixParams` |`hipdnnGetRNNLinLayerMatrixParams` | -|`cudnnGetRNNLinLayerBiasParams` |`hipdnnGetRNNLinLayerBiasParams` | -|`cudnnRNNForwardInference` |`hipdnnRNNForwardInference` | -|`cudnnRNNForwardInferenceEx` | | -|`cudnnRNNForwardTraining` |`hipdnnRNNForwardTraining` | -|`cudnnRNNForwardTrainingEx` | | -|`cudnnRNNBackwardData` |`hipdnnRNNBackwardData` | -|`cudnnRNNBackwardDataEx` | | -|`cudnnRNNBackwardWeights` |`hipdnnRNNBackwardWeights` | -|`cudnnRNNBackwardWeightsEx` | | -|`cudnnSetRNNPaddingMode` | | -|`cudnnGetRNNPaddingMode` | | -|`cudnnCreateRNNDataDescriptor` | | -|`cudnnDestroyRNNDataDescriptor` | | -|`cudnnSetRNNDataDescriptor` | | -|`cudnnGetRNNDataDescriptor` | | -|`cudnnSetRNNBiasMode` | | -|`cudnnGetRNNBiasMode` | | -|`cudnnCreateCTCLossDescriptor` | | -|`cudnnSetCTCLossDescriptor` | | -|`cudnnSetCTCLossDescriptorEx` | | -|`cudnnGetCTCLossDescriptor` | | -|`cudnnGetCTCLossDescriptorEx` | | -|`cudnnDestroyCTCLossDescriptor` | | -|`cudnnCTCLoss` | | -|`cudnnGetCTCLossWorkspaceSize` | | -|`cudnnCreateAlgorithmDescriptor` | | -|`cudnnSetAlgorithmDescriptor` | | -|`cudnnGetAlgorithmDescriptor` | | -|`cudnnCopyAlgorithmDescriptor` | | -|`cudnnDestroyAlgorithmDescriptor` | | -|`cudnnCreateAlgorithmPerformance` | | -|`cudnnSetAlgorithmPerformance` | | -|`cudnnGetAlgorithmPerformance` | | -|`cudnnDestroyAlgorithmPerformance` | | -|`cudnnGetAlgorithmSpaceSize` | | -|`cudnnSaveAlgorithm` | | -|`cudnnRestoreAlgorithm` | | -|`cudnnSetRNNDescriptor_v5` |`hipdnnSetRNNDescriptor_v5` | -|`cudnnSetRNNDescriptor_v6` |`hipdnnSetRNNDescriptor_v6` | -|`cudnnSetCallback` | | -|`cudnnGetCallback` | | -|`cudnnGetBatchNormalizationForwardTrainingExWorkspaceSize` | | -|`cudnnGetBatchNormalizationBackwardExWorkspaceSize` | | -|`cudnnGetBatchNormalizationTrainingExReserveSpaceSize` | | -|`cudnnRNNSetClip` | | -|`cudnnRNNGetClip` | | -|`cudnnCreateSeqDataDescriptor` | | -|`cudnnDestroySeqDataDescriptor` | | -|`cudnnSetSeqDataDescriptor` | | -|`cudnnGetSeqDataDescriptor` | | -|`cudnnCreateAttnDescriptor` | | -|`cudnnDestroyAttnDescriptor` | | -|`cudnnSetAttnDescriptor` | | -|`cudnnGetAttnDescriptor` | | -|`cudnnGetMultiHeadAttnBuffers` | | -|`cudnnGetMultiHeadAttnWeights` | | -|`cudnnMultiHeadAttnForward` | | -|`cudnnMultiHeadAttnBackwardData` | | -|`cudnnMultiHeadAttnBackwardWeights` | | -|`cudnnCreateFusedOpsConstParamPack` | | -|`cudnnDestroyFusedOpsConstParamPack` | | -|`cudnnSetFusedOpsConstParamPackAttribute` | | -|`cudnnGetFusedOpsConstParamPackAttribute` | | -|`cudnnCreateFusedOpsVariantParamPack` | | -|`cudnnDestroyFusedOpsVariantParamPack` | | -|`cudnnSetFusedOpsVariantParamPackAttribute` | | -|`cudnnGetFusedOpsVariantParamPackAttribute` | | -|`cudnnCreateFusedOpsPlan` | | -|`cudnnDestroyFusedOpsPlan` | | -|`cudnnMakeFusedOpsPlan` | | -|`cudnnFusedOpsExecute` | | +|`cudnnBatchNormalizationBackwardEx` | | 9.0 | +|`cudnnCreateSpatialTransformerDescriptor` | | 7.5 | +|`cudnnSetSpatialTransformerNdDescriptor` | | 7.5 | +|`cudnnDestroySpatialTransformerDescriptor` | | 7.5 | +|`cudnnSpatialTfGridGeneratorForward` | | 7.5 | +|`cudnnSpatialTfGridGeneratorBackward` | | 7.5 | +|`cudnnSpatialTfSamplerForward` | | 7.5 | +|`cudnnSpatialTfSamplerBackward` | | 7.5 | +|`cudnnCreateDropoutDescriptor` |`hipdnnCreateDropoutDescriptor` | 7.5 | +|`cudnnDestroyDropoutDescriptor` |`hipdnnDestroyDropoutDescriptor` | 7.5 | +|`cudnnDropoutGetStatesSize` |`hipdnnDropoutGetStatesSize` | 7.5 | +|`cudnnDropoutGetReserveSpaceSize` | | 7.5 | +|`cudnnSetDropoutDescriptor` |`hipdnnSetDropoutDescriptor` | 7.5 | +|`cudnnGetDropoutDescriptor` | | 8.0 | +|`cudnnRestoreDropoutDescriptor` | | 8.0 | +|`cudnnDropoutForward` | | 7.5 | +|`cudnnDropoutBackward` | | 7.5 | +|`cudnnCreateRNNDescriptor` |`hipdnnCreateRNNDescriptor` | 7.5 | +|`cudnnDestroyRNNDescriptor` |`hipdnnDestroyRNNDescriptor` | 7.5 | +|`cudnnGetRNNForwardInferenceAlgorithmMaxCount` | | 8.0 | +|`cudnnFindRNNForwardInferenceAlgorithmEx` | | 8.0 | +|`cudnnGetRNNForwardTrainingAlgorithmMaxCount` | | 8.0 | +|`cudnnFindRNNForwardTrainingAlgorithmEx` | | 8.0 | +|`cudnnGetRNNBackwardDataAlgorithmMaxCount` | | 8.0 | +|`cudnnFindRNNBackwardDataAlgorithmEx` | | 8.0 | +|`cudnnGetRNNBackwardWeightsAlgorithmMaxCount` | | 8.0 | +|`cudnnFindRNNBackwardWeightsAlgorithmEx` | | 8.0 | +|`cudnnCreatePersistentRNNPlan` |`hipdnnCreatePersistentRNNPlan` | 7.5 | +|`cudnnSetPersistentRNNPlan` |`hipdnnSetPersistentRNNPlan` | 7.5 | +|`cudnnDestroyPersistentRNNPlan` |`hipdnnDestroyPersistentRNNPlan` | 7.5 | +|`cudnnSetRNNDescriptor` |`hipdnnSetRNNDescriptor` | 7.5 | +|`cudnnGetRNNDescriptor` |`hipdnnGetRNNDescriptor` | 8.0 | +|`cudnnSetRNNProjectionLayers` | | 8.0 | +|`cudnnGetRNNProjectionLayers` | | 8.0 | +|`cudnnSetRNNAlgorithmDescriptor` | | 8.0 | +|`cudnnSetRNNMatrixMathType` | | 8.0 | +|`cudnnGetRNNMatrixMathType` | | 8.0 | +|`cudnnGetRNNWorkspaceSize` |`hipdnnGetRNNWorkspaceSize` | 7.5 | +|`cudnnGetRNNTrainingReserveSize` |`hipdnnGetRNNTrainingReserveSize` | 7.5 | +|`cudnnGetRNNParamsSize` |`hipdnnGetRNNParamsSize` | 7.5 | +|`cudnnGetRNNLinLayerMatrixParams` |`hipdnnGetRNNLinLayerMatrixParams` | 7.5 | +|`cudnnGetRNNLinLayerBiasParams` |`hipdnnGetRNNLinLayerBiasParams` | 7.5 | +|`cudnnRNNForwardInference` |`hipdnnRNNForwardInference` | 7.5 | +|`cudnnRNNForwardInferenceEx` | | 9.0 | +|`cudnnRNNForwardTraining` |`hipdnnRNNForwardTraining` | 7.5 | +|`cudnnRNNForwardTrainingEx` | | 9.0 | +|`cudnnRNNBackwardData` |`hipdnnRNNBackwardData` | 7.5 | +|`cudnnRNNBackwardDataEx` | | 9.0 | +|`cudnnRNNBackwardWeights` |`hipdnnRNNBackwardWeights` | 7.5 | +|`cudnnRNNBackwardWeightsEx` | | 9.0 | +|`cudnnSetRNNPaddingMode` | | 9.0 | +|`cudnnGetRNNPaddingMode` | | 9.0 | +|`cudnnCreateRNNDataDescriptor` | | 9.0 | +|`cudnnDestroyRNNDataDescriptor` | | 9.0 | +|`cudnnSetRNNDataDescriptor` | | 9.0 | +|`cudnnGetRNNDataDescriptor` | | 9.0 | +|`cudnnSetRNNBiasMode` | | 9.0 | +|`cudnnGetRNNBiasMode` | | 9.0 | +|`cudnnCreateCTCLossDescriptor` | | 8.0 | +|`cudnnSetCTCLossDescriptor` | | 8.0 | +|`cudnnSetCTCLossDescriptorEx` | | 10.1 | +|`cudnnGetCTCLossDescriptor` | | 8.0 | +|`cudnnGetCTCLossDescriptorEx` | | 10.1 | +|`cudnnDestroyCTCLossDescriptor` | | 8.0 | +|`cudnnCTCLoss` | | 8.0 | +|`cudnnGetCTCLossWorkspaceSize` | | 8.0 | +|`cudnnCreateAlgorithmDescriptor` | | 8.0 | +|`cudnnSetAlgorithmDescriptor` | | 8.0 | +|`cudnnGetAlgorithmDescriptor` | | 8.0 | +|`cudnnCopyAlgorithmDescriptor` | | 8.0 | +|`cudnnDestroyAlgorithmDescriptor` | | 8.0 | +|`cudnnCreateAlgorithmPerformance` | | 8.0 | +|`cudnnSetAlgorithmPerformance` | | 8.0 | +|`cudnnGetAlgorithmPerformance` | | 8.0 | +|`cudnnDestroyAlgorithmPerformance` | | 8.0 | +|`cudnnGetAlgorithmSpaceSize` | | 8.0 | +|`cudnnSaveAlgorithm` | | 8.0 | +|`cudnnRestoreAlgorithm` | | 8.0 | +|`cudnnSetRNNDescriptor_v5` |`hipdnnSetRNNDescriptor_v5` | 8.0 | +|`cudnnSetRNNDescriptor_v6` |`hipdnnSetRNNDescriptor_v6` | 7.5 | +|`cudnnSetCallback` | | 8.0 | +|`cudnnGetCallback` | | 8.0 | +|`cudnnGetBatchNormalizationForwardTrainingExWorkspaceSize` | | 9.0 | +|`cudnnGetBatchNormalizationBackwardExWorkspaceSize` | | 9.0 | +|`cudnnGetBatchNormalizationTrainingExReserveSpaceSize` | | 9.0 | +|`cudnnRNNSetClip` | | 9.0 | +|`cudnnRNNGetClip` | | 9.0 | +|`cudnnCreateSeqDataDescriptor` | | 9.0 | +|`cudnnDestroySeqDataDescriptor` | | 9.0 | +|`cudnnSetSeqDataDescriptor` | | 9.0 | +|`cudnnGetSeqDataDescriptor` | | 9.0 | +|`cudnnCreateAttnDescriptor` | | 9.0 | +|`cudnnDestroyAttnDescriptor` | | 9.0 | +|`cudnnSetAttnDescriptor` | | 9.0 | +|`cudnnGetAttnDescriptor` | | 9.0 | +|`cudnnGetMultiHeadAttnBuffers` | | 9.0 | +|`cudnnGetMultiHeadAttnWeights` | | 9.0 | +|`cudnnMultiHeadAttnForward` | | 9.0 | +|`cudnnMultiHeadAttnBackwardData` | | 9.0 | +|`cudnnMultiHeadAttnBackwardWeights` | | 9.0 | +|`cudnnCreateFusedOpsConstParamPack` | | 10.1 | +|`cudnnDestroyFusedOpsConstParamPack` | | 10.1 | +|`cudnnSetFusedOpsConstParamPackAttribute` | | 10.1 | +|`cudnnGetFusedOpsConstParamPackAttribute` | | 10.1 | +|`cudnnCreateFusedOpsVariantParamPack` | | 10.1 | +|`cudnnDestroyFusedOpsVariantParamPack` | | 10.1 | +|`cudnnSetFusedOpsVariantParamPackAttribute` | | 10.1 | +|`cudnnGetFusedOpsVariantParamPackAttribute` | | 10.1 | +|`cudnnCreateFusedOpsPlan` | | 10.1 | +|`cudnnDestroyFusedOpsPlan` | | 10.1 | +|`cudnnMakeFusedOpsPlan` | | 10.1 | +|`cudnnFusedOpsExecute` | | 10.1 | + +\* CUDA version, in which API has appeared and (optional) last version before abandoning it; no value in case of earlier versions < 7.5.