From 67c2626988ba29e014541631b89dc15d52db752d Mon Sep 17 00:00:00 2001 From: Evgeny Mankov Date: Thu, 8 Aug 2024 21:47:02 +0100 Subject: [PATCH] [HIPIFY][DNN] cuDNN 9.3.0 is the latest supported version --- docs/hipify-clang.rst | 22 +++++++++---------- docs/tables/CUDNN_API_supported_by_HIP.md | 2 +- .../CUDNN_API_supported_by_HIP_and_MIOPEN.md | 2 +- docs/tables/CUDNN_API_supported_by_MIOPEN.md | 2 +- src/CUDA2HIP_DNN_API_functions.cpp | 2 +- src/Statistics.cpp | 1 + src/Statistics.h | 3 ++- 7 files changed, 18 insertions(+), 16 deletions(-) diff --git a/docs/hipify-clang.rst b/docs/hipify-clang.rst index a2b51a40..bb96d631 100644 --- a/docs/hipify-clang.rst +++ b/docs/hipify-clang.rst @@ -545,7 +545,7 @@ LLVM >= 10.0.0 .. code-block:: shell - -DCUDA_DNN_ROOT_DIR=D:/CUDA/cuDNN/9.2.1 + -DCUDA_DNN_ROOT_DIR=D:/CUDA/cuDNN/9.3.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. @@ -637,8 +637,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 - 18.1.8, CUDA 7.0 - 12.3.2, cuDNN 5.1.10 - 9.2.1 -* Ubuntu 22-23: LLVM 13.0.0 - 18.1.8, CUDA 7.0 - 12.3.2, cuDNN 8.0.5 - 9.2.1 +* Ubuntu 20-21: LLVM 9.0.0 - 18.1.8, CUDA 7.0 - 12.3.2, cuDNN 5.1.10 - 9.3.0 +* Ubuntu 22-23: LLVM 13.0.0 - 18.1.8, CUDA 7.0 - 12.3.2, cuDNN 8.0.5 - 9.3.0 Minimum build system requirements for the above configurations: @@ -658,7 +658,7 @@ Here's how to build ``hipify-clang`` with testing support on ``Ubuntu 23.10.01`` -DCMAKE_INSTALL_PREFIX=../dist \ -DCMAKE_PREFIX_PATH=/usr/llvm/18.1.8/dist \ -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-12.3.2 \ - -DCUDA_DNN_ROOT_DIR=/usr/local/cudnn-9.2.1 \ + -DCUDA_DNN_ROOT_DIR=/usr/local/cudnn-9.3.0 \ -DLLVM_EXTERNAL_LIT=/usr/llvm/18.1.8/build/bin/llvm-lit \ ../hipify @@ -696,7 +696,7 @@ The corresponding successful output is: -- Initial CUDA to configure: -- - CUDA Toolkit path : /usr/local/cuda-12.3.2 -- - CUDA Samples path : - -- - cuDNN path : /usr/local/cudnn-9.2.1 + -- - cuDNN path : /usr/local/cudnn-9.3.0 -- - CUB path : -- Found CUDAToolkit: /usr/local/cuda-12.3.2/targets/x86_64-linux/include (found version "12.3.107") -- Performing Test CMAKE_HAVE_LIBC_PTHREAD @@ -705,7 +705,7 @@ The corresponding successful output is: -- Found CUDA config: -- - CUDA Toolkit path : /usr/local/cuda-12.3.2 -- - CUDA Samples path : OFF - -- - cuDNN path : /usr/local/cudnn-9.2.1 + -- - cuDNN path : /usr/local/cudnn-9.3.0 -- - CUB path : /usr/local/cuda-12.3.2/include/cub -- Configuring done (0.5s) -- Generating done (0.0s) @@ -818,13 +818,13 @@ Tested configurations: - ``3.11.4`` * - ``17.0.1`` :sup:`6` - ``18.1.8`` :sup:`7` - ``7.0 - 12.3.2`` - - ``8.0.5 - 9.2.1`` + - ``8.0.5 - 9.3.0`` - ``2019.16.11.38, 2022.17.10.5`` - ``3.30.0`` - ``3.12.4`` * - ``19.0.0git`` - ``7.0 - 12.5.1`` - - ``8.0.5 - 9.2.1`` + - ``8.0.5 - 9.3.0`` - ``2019.16.11.38, 2022.17.10.5`` - ``3.30.0`` - ``3.12.4`` @@ -855,7 +855,7 @@ Building with testing support using ``Visual Studio 17 2022`` on ``Windows 11``: -DCMAKE_PREFIX_PATH=D:/LLVM/18.1.8/dist \ -DCUDA_TOOLKIT_ROOT_DIR="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.3" \ -DCUDA_SDK_ROOT_DIR="C:/ProgramData/NVIDIA Corporation/CUDA Samples/v12.3" \ - -DCUDA_DNN_ROOT_DIR=D:/CUDA/cuDNN/9.2.1 \ + -DCUDA_DNN_ROOT_DIR=D:/CUDA/cuDNN/9.3.0 \ -DLLVM_EXTERNAL_LIT=D:/LLVM/18.1.8/build/Release/bin/llvm-lit.py \ ../hipify @@ -892,13 +892,13 @@ The corresponding successful output is: -- Initial CUDA to configure: -- - CUDA Toolkit path : C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.3 -- - CUDA Samples path : C:/ProgramData/NVIDIA Corporation/CUDA Samples/v12.3 - -- - cuDNN path : D:/CUDA/cuDNN/9.2.1 + -- - cuDNN path : D:/CUDA/cuDNN/9.3.0 -- - CUB path : -- Found CUDAToolkit: C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.3/include (found version "12.3.107") -- Found CUDA config: -- - CUDA Toolkit path : C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.3 -- - CUDA Samples path : C:/ProgramData/NVIDIA Corporation/CUDA Samples/v12.3 - -- - cuDNN path : D:/CUDA/cuDNN/9.2.1 + -- - cuDNN path : D:/CUDA/cuDNN/9.3.0 -- - CUB path : C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.3/include/cub -- Configuring done (1.4s) -- Generating done (0.1s) diff --git a/docs/tables/CUDNN_API_supported_by_HIP.md b/docs/tables/CUDNN_API_supported_by_HIP.md index 0f86fb2d..feb58d01 100644 --- a/docs/tables/CUDNN_API_supported_by_HIP.md +++ b/docs/tables/CUDNN_API_supported_by_HIP.md @@ -886,7 +886,7 @@ |`cudnnBackendExecute`|8.0.1| | | | | | | | | | |`cudnnBackendFinalize`|8.0.1| | | | | | | | | | |`cudnnBackendGetAttribute`|8.0.1| | | | | | | | | | -|`cudnnBackendInitialize`|8.0.1| | | | | | | | | | +|`cudnnBackendInitialize`|8.0.1|9.3.0| | | | | | | | | |`cudnnBackendSetAttribute`|8.0.1| | | | | | | | | | |`cudnnBatchNormalizationBackward`|4.0.0|9.0.0| | |`hipdnnBatchNormalizationBackward`| | | | | | |`cudnnBatchNormalizationBackwardEx`|7.4.1|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 a803ea4c..b8c4ddd9 100644 --- a/docs/tables/CUDNN_API_supported_by_HIP_and_MIOPEN.md +++ b/docs/tables/CUDNN_API_supported_by_HIP_and_MIOPEN.md @@ -886,7 +886,7 @@ |`cudnnBackendExecute`|8.0.1| | | | | | | | | | | | | | | | |`cudnnBackendFinalize`|8.0.1| | | | | | | | | | | | | | | | |`cudnnBackendGetAttribute`|8.0.1| | | | | | | | | | | | | | | | -|`cudnnBackendInitialize`|8.0.1| | | | | | | | | | | | | | | | +|`cudnnBackendInitialize`|8.0.1|9.3.0| | | | | | | | | | | | | | | |`cudnnBackendSetAttribute`|8.0.1| | | | | | | | | | | | | | | | |`cudnnBatchNormalizationBackward`|4.0.0|9.0.0| | |`hipdnnBatchNormalizationBackward`| | | | | |`miopenBatchNormalizationBackward`| | | | | | |`cudnnBatchNormalizationBackwardEx`|7.4.1|9.0.0| | | | | | | | | | | | | | | diff --git a/docs/tables/CUDNN_API_supported_by_MIOPEN.md b/docs/tables/CUDNN_API_supported_by_MIOPEN.md index 26a01db0..0e77a3de 100644 --- a/docs/tables/CUDNN_API_supported_by_MIOPEN.md +++ b/docs/tables/CUDNN_API_supported_by_MIOPEN.md @@ -886,7 +886,7 @@ |`cudnnBackendExecute`|8.0.1| | | | | | | | | | |`cudnnBackendFinalize`|8.0.1| | | | | | | | | | |`cudnnBackendGetAttribute`|8.0.1| | | | | | | | | | -|`cudnnBackendInitialize`|8.0.1| | | | | | | | | | +|`cudnnBackendInitialize`|8.0.1|9.3.0| | | | | | | | | |`cudnnBackendSetAttribute`|8.0.1| | | | | | | | | | |`cudnnBatchNormalizationBackward`|4.0.0|9.0.0| | |`miopenBatchNormalizationBackward`| | | | | | |`cudnnBatchNormalizationBackwardEx`|7.4.1|9.0.0| | | | | | | | | diff --git a/src/CUDA2HIP_DNN_API_functions.cpp b/src/CUDA2HIP_DNN_API_functions.cpp index ceba36bd..4baf2e0b 100644 --- a/src/CUDA2HIP_DNN_API_functions.cpp +++ b/src/CUDA2HIP_DNN_API_functions.cpp @@ -432,7 +432,7 @@ const std::map CUDA_DNN_FUNCTION_VER_MAP { {"cudnnAdvTrainVersionCheck", {CUDNN_801, CUDA_0, CUDNN_900}}, {"cudnnBackendCreateDescriptor", {CUDNN_801, CUDA_0, CUDA_0 }}, {"cudnnBackendDestroyDescriptor", {CUDNN_801, CUDA_0, CUDA_0 }}, - {"cudnnBackendInitialize", {CUDNN_801, CUDA_0, CUDA_0 }}, + {"cudnnBackendInitialize", {CUDNN_801, CUDNN_930, CUDA_0 }}, {"cudnnBackendFinalize", {CUDNN_801, CUDA_0, CUDA_0 }}, {"cudnnBackendSetAttribute", {CUDNN_801, CUDA_0, CUDA_0 }}, {"cudnnBackendGetAttribute", {CUDNN_801, CUDA_0, CUDA_0 }}, diff --git a/src/Statistics.cpp b/src/Statistics.cpp index b79cdfbc..0902fb7e 100644 --- a/src/Statistics.cpp +++ b/src/Statistics.cpp @@ -541,6 +541,7 @@ std::string Statistics::getCudaVersion(const cudaVersions &ver) { case CUDNN_900: return "9.0.0"; case CUDNN_910: return "9.1.0"; case CUDNN_920: return "9.2.0"; + case CUDNN_930: return "9.3.0"; } return ""; } diff --git a/src/Statistics.h b/src/Statistics.h index b24cc48e..a775bda2 100644 --- a/src/Statistics.h +++ b/src/Statistics.h @@ -295,7 +295,8 @@ enum cudaVersions { CUDNN_900 = 900, CUDNN_910 = 910, CUDNN_920 = 920, - CUDNN_LATEST = CUDNN_920, + CUDNN_930 = 930, + CUDNN_LATEST = CUDNN_930, }; enum hipVersions {