From ea030fa0aef0216c0bc6cb0c3bf0d37ae86c3464 Mon Sep 17 00:00:00 2001 From: JP Ungaretti <19893438+jungaretti@users.noreply.github.com> Date: Sun, 21 Aug 2022 11:22:51 -0700 Subject: Add new NVIDIA CUDA feature (#80) * Add new Nvidia feature * Remove random empty files * Update comments * Rename feature to nvidia-cuda * Add feature to tests * Add version * Move test to match new name * Add final output message * Fix capitalization of NVIDIA * Remove option for base CUDA * Use camelCase * Check for required packages * Use os-release instead of lsb_release * Clean up keyring variables * Collapse keyring lines * Always install CUDA libraries * Add option to install NVTX * Always use ubuntu2004 repo * Use test instead of brackets * Add default values to feature * Add version options for CUDA and cuDNN * Rename CUDA version option * Add scenario to test specific CUDA/cuDNN version * Rename cuDNN scenario * Fix typo in test scenario * Update variable casing * Add more helpful error messages * Remove default values from script * Use enum for version option * Polish new scenarios * Remove apt_get_update_if_needed and check_packages * Add more versions * Improve error messages * Comments and feature description Co-authored-by: Josh Spicer --- test-scenarios/install_cudnn_nvxt.sh | 15 +++++++++++++++ test-scenarios/install_cudnn_nvxt_version.sh | 16 ++++++++++++++++ test-scenarios/scenarios.json | 20 ++++++++++++++++++++ 3 files changed, 51 insertions(+) create mode 100644 test-scenarios/install_cudnn_nvxt.sh create mode 100644 test-scenarios/install_cudnn_nvxt_version.sh (limited to 'test-scenarios') diff --git a/test-scenarios/install_cudnn_nvxt.sh b/test-scenarios/install_cudnn_nvxt.sh new file mode 100644 index 0000000..7b20f43 --- /dev/null +++ b/test-scenarios/install_cudnn_nvxt.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +set -e + +# Optional: Import test library +source dev-container-features-test-lib + +# Check installation of libcudnn8 +check "libcudnn.so.8" test 1 -eq "$(find /usr -name 'libcudnn.so.8' | wc -l)" + +# Check installation of cuda-nvtx-11- +check "cuda-11+nvtx" test -e '/usr/local/cuda-11/targets/x86_64-linux/include/nvtx3' + +# Report result +reportResults diff --git a/test-scenarios/install_cudnn_nvxt_version.sh b/test-scenarios/install_cudnn_nvxt_version.sh new file mode 100644 index 0000000..a7f46bd --- /dev/null +++ b/test-scenarios/install_cudnn_nvxt_version.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +set -e + +# Optional: Import test library +source dev-container-features-test-lib + +# Check installation of libcudnn8 (8.3.2) +check "libcudnn.so.8.3.2" test 1 -eq "$(find /usr -name 'libcudnn.so.8.3.2' | wc -l)" + +# Check installation of cuda-nvtx-11-5 (11.5) +check "cuda-11-5+nvtx" test -e '/usr/local/cuda-11.5/targets/x86_64-linux/include/nvtx3' + +# Report result +reportResults + \ No newline at end of file diff --git a/test-scenarios/scenarios.json b/test-scenarios/scenarios.json index 853da2f..4f45aba 100644 --- a/test-scenarios/scenarios.json +++ b/test-scenarios/scenarios.json @@ -91,5 +91,25 @@ "version": "3" } } + }, + "install_cudnn_nvxt": { + "image": "debian", + "features": { + "nvidia-cuda": { + "installCudnn": true, + "installNvtx": true + } + } + }, + "install_cudnn_nvxt_version": { + "image": "debian", + "features": { + "nvidia-cuda": { + "installCudnn": true, + "installNvtx": true, + "cudaVersion": "11.5", + "cudnnVersion": "8.3.2.44" + } + } } } -- cgit v1.2.3