Skip to content

Commit

Permalink
Update to CUDA 12.4 (#242)
Browse files Browse the repository at this point in the history
* update to CUDA 12.4

* update matrix.yml to CUDA 12.4

* Add 12.4 mapping in Windows installer

* Add 12.4 to component map

---------

Co-authored-by: Wesley Maxey <[email protected]>
  • Loading branch information
trxcllnt and wmaxey authored Mar 7, 2024
1 parent ae81975 commit 6294c06
Show file tree
Hide file tree
Showing 10 changed files with 26 additions and 20 deletions.
2 changes: 1 addition & 1 deletion features/src/cuda/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ A feature to install the NVIDIA CUDA Toolkit

| Options Id | Description | Type | Default Value |
|-----|-----|-----|-----|
| version | Version of the CUDA Toolkit to install. | string | 12.2 |
| version | Version of the CUDA Toolkit to install. | string | 12.4 |
| installCompilers | Install NVIDIA CUDA Compiler (nvcc) | boolean | true |
| installProfilers | Install NVIDIA NSight Systems Profiler (nsys) | boolean | true |
| installCTKLibraries | Shortcut to install all CUDA Toolkit Libraries | boolean | true |
Expand Down
6 changes: 4 additions & 2 deletions features/src/cuda/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
{
"name": "CUDA Toolkit",
"id": "cuda",
"version": "24.4.0",
"version": "24.4.1",
"description": "A feature to install the NVIDIA CUDA Toolkit",
"options": {
"version": {
"type": "string",
"proposals": [
"12.4",
"12.3",
"12.2",
"12.1",
"12.0",
Expand All @@ -19,7 +21,7 @@
"11.2",
"11.1"
],
"default": "12.2",
"default": "12.4",
"description": "Version of the CUDA Toolkit to install."
},
"installCompilers": {
Expand Down
2 changes: 1 addition & 1 deletion features/src/cuda/install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ export OSNAME="$(
echo "$ID$((major - (major % 2)))${minor}";
)";

VERSION="${CUDA_VERSION:-${VERSION:-12.2.0}}";
VERSION="${CUDA_VERSION:-${VERSION:-12.4.0}}";

if [[ "$NVARCH" == aarch64 ]]; then
NVARCH="sbsa";
Expand Down
6 changes: 3 additions & 3 deletions features/test/_global/cpp_llvm_cuda_nvhpc.sh
Original file line number Diff line number Diff line change
Expand Up @@ -39,11 +39,11 @@ source dev-container-features-test-lib;
check "gitlab-cli version" glab --version

# Check CUDA
check "CUDA version" bash -c "echo '$CUDA_VERSION' | grep '12.2.0'";
check "CUDA version" bash -c "echo '$CUDA_VERSION' | grep '12.4.0'";
check "CUDA major version" bash -c "echo '$CUDA_VERSION_MAJOR' | grep '12'";
check "CUDA minor version" bash -c "echo '$CUDA_VERSION_MINOR' | grep '2'";
check "CUDA minor version" bash -c "echo '$CUDA_VERSION_MINOR' | grep '4'";
check "CUDA patch version" bash -c "echo '$CUDA_VERSION_PATCH' | grep '0'";
check "installed" stat /usr/local/cuda-12.2 /usr/local/cuda;
check "installed" stat /usr/local/cuda-12.4 /usr/local/cuda;
check "nvcc exists and is on path" which nvcc;

# Check NVHPC
Expand Down
6 changes: 3 additions & 3 deletions features/test/_global/cuda_rust.sh
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,11 @@ source dev-container-features-test-lib;
>&2 echo "BASH_ENV=$BASH_ENV";

# Check CUDA
check "CUDA version" bash -c "echo '$CUDA_VERSION' | grep '12.2.0'";
check "CUDA version" bash -c "echo '$CUDA_VERSION' | grep '12.4.0'";
check "CUDA major version" bash -c "echo '$CUDA_VERSION_MAJOR' | grep '12'";
check "CUDA minor version" bash -c "echo '$CUDA_VERSION_MINOR' | grep '2'";
check "CUDA minor version" bash -c "echo '$CUDA_VERSION_MINOR' | grep '4'";
check "CUDA patch version" bash -c "echo '$CUDA_VERSION_PATCH' | grep '0'";
check "installed" stat /usr/local/cuda-12.2 /usr/local/cuda;
check "installed" stat /usr/local/cuda-12.4 /usr/local/cuda;
check "nvcc exists and is on path" which nvcc;

# Check Rust
Expand Down
4 changes: 2 additions & 2 deletions features/test/_global/scenarios.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"features": {
"rust": {},
"cuda": {
"version": "12.2"
"version": "12.4"
}
},
"overrideFeatureInstallOrder": [
Expand Down Expand Up @@ -44,7 +44,7 @@
"version": "16"
},
"cuda": {
"version": "12.2"
"version": "12.4"
},
"nvhpc": {
"version": "23.1"
Expand Down
6 changes: 3 additions & 3 deletions features/test/cuda/test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,11 @@ source dev-container-features-test-lib

# Feature-specific tests
# The 'check' command comes from the dev-container-features-test-lib.
check "CUDA version" bash -c "echo '$CUDA_VERSION' | grep '12.2.0'";
check "CUDA version" bash -c "echo '$CUDA_VERSION' | grep '12.4.0'";
check "CUDA major version" bash -c "echo '$CUDA_VERSION_MAJOR' | grep '12'";
check "CUDA minor version" bash -c "echo '$CUDA_VERSION_MINOR' | grep '2'";
check "CUDA minor version" bash -c "echo '$CUDA_VERSION_MINOR' | grep '4'";
check "CUDA patch version" bash -c "echo '$CUDA_VERSION_PATCH' | grep '0'";
check "installed" stat /usr/local/cuda-12.2 /usr/local/cuda
check "installed" stat /usr/local/cuda-12.4 /usr/local/cuda
check "nvcc exists and is on path" which nvcc

# Report result
Expand Down
4 changes: 2 additions & 2 deletions features/test/ucx/scenarios.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"image": "ubuntu:22.04",
"features": {
"cuda": {
"version": "12.2"
"version": "12.4"
},
"ucx": {
"version": "1.14.1"
Expand All @@ -14,7 +14,7 @@
"image": "ubuntu:22.04",
"features": {
"cuda": {
"version": "12.2"
"version": "12.4"
},
"ucx": {
"version": "1.15.0-rc3"
Expand Down
2 changes: 1 addition & 1 deletion matrix.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
x-cuda-prev-min: &cuda_prev_min { name: "cuda", version: "11.1" }
x-cuda-prev-max: &cuda_prev_max { name: "cuda", version: "11.8" }
x-cuda-curr-min: &cuda_curr_min { name: "cuda", version: "12.0" }
x-cuda-curr-max: &cuda_curr_max { name: "cuda", version: "12.3" }
x-cuda-curr-max: &cuda_curr_max { name: "cuda", version: "12.4" }
x-cuda-curr-max: &cuda_curr_max_rapids { name: "cuda", version: "12.2" }

x-gcc-6: &gcc_6 { name: "gcc", version: "6" }
Expand Down
8 changes: 6 additions & 2 deletions windows/image/installers/install-cuda.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,9 @@ $cudaUri = @{
"12.2.0" = "12.2.0/network_installers/cuda_12.2.0_windows_network.exe"
"12.3" = "12.3.0/network_installers/cuda_12.3.0_windows_network.exe"
"12.3.0" = "12.3.0/network_installers/cuda_12.3.0_windows_network.exe"
"latest" = "12.3.0/network_installers/cuda_12.3.0_windows_network.exe"
"12.4" = "12.4.0/network_installers/cuda_12.4.0_windows_network.exe"
"12.4.0" = "12.4.0/network_installers/cuda_12.4.0_windows_network.exe"
"latest" = "12.4.0/network_installers/cuda_12.4.0_windows_network.exe"
}[$cudaVersion]

# The component tags don't include patch, so we need to map input to major.minor
Expand All @@ -37,7 +39,9 @@ $componentTag = @{
"12.2.0" = "12.2"
"12.3" = "12.3"
"12.3.0" = "12.3"
"latest" = "12.3"
"12.4" = "12.4"
"12.4.0" = "12.4"
"latest" = "12.4"
}[$cudaVersion]

$cudaVersionUrl = "https://developer.download.nvidia.com/compute/cuda/$cudaUri"
Expand Down

0 comments on commit 6294c06

Please sign in to comment.