Skip to content

Commit

Permalink
* Bump up CUDA version to 12.8 in build
Browse files Browse the repository at this point in the history
* Also use cudart v12.8 whereever applicable

Signed-off-by: Pradnya Khalate <[email protected]>
  • Loading branch information
khalatepradnya committed Feb 25, 2025
1 parent 87a415d commit acf05c2
Show file tree
Hide file tree
Showing 16 changed files with 43 additions and 43 deletions.
10 changes: 5 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ jobs:
strategy:
matrix:
platform: [amd64, arm64]
cuda_version: ["11.8", "12.0"]
cuda_version: ["11.8", "12.8"]
fail-fast: false
uses: ./.github/workflows/dev_environment.yml
secrets:
Expand All @@ -132,7 +132,7 @@ jobs:
strategy:
matrix:
platform: [amd64, arm64]
cuda_version: ["11.8", "12.0"]
cuda_version: ["11.8", "12.8"]
fail-fast: false
uses: ./.github/workflows/dev_environment.yml
secrets:
Expand Down Expand Up @@ -235,7 +235,7 @@ jobs:
matrix:
platform: [amd64, arm64]
python_version: ['3.10', '3.12']
cuda_version: ["11.8", "12.0"]
cuda_version: ["11.8", "12.8"]
fail-fast: false
uses: ./.github/workflows/python_wheels.yml
secrets:
Expand All @@ -256,7 +256,7 @@ jobs:
with:
cudaq_version: ${{ needs.python_wheels.outputs.cudaq_version }}
python_versions: "['3.10', '3.12']"
cuda_versions: "['', '11.8', '12.0']"
cuda_versions: "['', '11.8', '12.8']"
wheel_artifacts: 'pycudaq-*'

binaries:
Expand All @@ -265,7 +265,7 @@ jobs:
strategy:
matrix:
platform: [amd64, arm64]
cuda_version: ["11.8", "12.0"]
cuda_version: ["11.8", "12.8"]
fail-fast: false
uses: ./.github/workflows/prebuilt_binaries.yml
secrets:
Expand Down
14 changes: 7 additions & 7 deletions .github/workflows/config/validation_config.json
Original file line number Diff line number Diff line change
Expand Up @@ -48,31 +48,31 @@
"ubuntu:22.04":
{
"libcdev_package": "libc6-dev",
"cudart_version": "12.0",
"cudart_version": "12.8",
"cuda_distribution": "ubuntu2204"
},
"debian:12":
{
"libcdev_package": "libc6-dev",
"cudart_version": "12.6",
"cudart_version": "12.8",
"cuda_distribution": "debian12"
},
"redhat/ubi9:9.2":
{
"libcdev_package": "glibc-devel",
"cudart_version": "12.0",
"cudart_version": "12.8",
"cuda_distribution": "rhel9"
},
"opensuse/leap:15.5":
{
"libcdev_package": "glibc-devel",
"cudart_version": "12.0",
"cudart_version": "12.8",
"cuda_distribution": "opensuse15"
},
"fedora:39":
{
"libcdev_package": "glibc-devel",
"cudart_version": "12.4",
"cudart_version": "12.8",
"cuda_distribution": "fedora39"
}
},
Expand Down Expand Up @@ -122,13 +122,13 @@
"ubuntu:22.04":
{
"libcdev_package": "libc6-dev",
"cudart_version": "12.0",
"cudart_version": "12.8",
"cuda_distribution": "ubuntu2204"
},
"redhat/ubi9:9.2":
{
"libcdev_package": "glibc-devel",
"cudart_version": "12.0",
"cudart_version": "12.8",
"cuda_distribution": "rhel9"
}
},
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/create_cache_command.yml
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ jobs:
strategy:
matrix:
platform: [amd64, arm64]
cuda_version: ["11.8", "12.0"]
cuda_version: ["11.8", "12.8"]
fail-fast: false
uses: ./.github/workflows/dev_environment.yml
secrets:
Expand Down Expand Up @@ -141,7 +141,7 @@ jobs:
strategy:
matrix:
platform: [amd64, arm64]
cuda_version: ["11.8", "12.0"]
cuda_version: ["11.8", "12.8"]
fail-fast: false
uses: ./.github/workflows/dev_environment.yml
secrets:
Expand Down
14 changes: 7 additions & 7 deletions .github/workflows/deployments.yml
Original file line number Diff line number Diff line change
Expand Up @@ -210,7 +210,7 @@ jobs:
# There are currently no multi-platform manylinux images available.
# See https://github.com/pypa/manylinux/issues/1306.
platform: ${{ fromJson(needs.metadata.outputs.platforms).ids }}
cuda_version: ["11.8", "12.0"]
cuda_version: ["11.8", "12.8"]
fail-fast: false
uses: ./.github/workflows/dev_environment.yml
secrets:
Expand Down Expand Up @@ -242,7 +242,7 @@ jobs:
strategy:
matrix:
platform: ${{ fromJson(needs.metadata.outputs.platforms).ids }}
cuda_version: ["11.8", "12.0"]
cuda_version: ["11.8", "12.8"]
fail-fast: false
uses: ./.github/workflows/dev_environment.yml
secrets:
Expand Down Expand Up @@ -273,7 +273,7 @@ jobs:
strategy:
matrix:
platform: ${{ fromJson(needs.metadata.outputs.multi_platform || needs.metadata.outputs.platforms).ids }}
cuda_version: ["11.8", "12.0"]
cuda_version: ["11.8", "12.8"]
fail-fast: false
uses: ./.github/workflows/dev_environment.yml
secrets:
Expand Down Expand Up @@ -356,7 +356,7 @@ jobs:
strategy:
matrix:
platform: ${{ fromJson(needs.metadata.outputs.multi_platform || needs.metadata.outputs.platforms).ids }}
cuda_version: ["11.8", "12.0"]
cuda_version: ["11.8", "12.8"]
fail-fast: false
uses: ./.github/workflows/dev_environment.yml
secrets:
Expand Down Expand Up @@ -401,7 +401,7 @@ jobs:
strategy:
matrix:
platform: ${{ fromJson(needs.metadata.outputs.multi_platform || needs.metadata.outputs.platforms).ids }}
cuda_version: ["11.8", "12.0"]
cuda_version: ["11.8", "12.8"]
fail-fast: false
uses: ./.github/workflows/docker_images.yml
secrets:
Expand All @@ -423,7 +423,7 @@ jobs:
matrix:
platform: ${{ fromJson(needs.metadata.outputs.platforms).ids }}
python_version: ['3.10', '3.11', '3.12']
cuda_version: ["11.8", "12.0"]
cuda_version: ["11.8", "12.8"]
fail-fast: false
uses: ./.github/workflows/python_wheels.yml
secrets:
Expand All @@ -442,7 +442,7 @@ jobs:
strategy:
matrix:
platform: ${{ fromJson(needs.metadata.outputs.platforms).ids }}
cuda_version: ["11.8", "12.0"]
cuda_version: ["11.8", "12.8"]
fail-fast: false
uses: ./.github/workflows/prebuilt_binaries.yml
secrets:
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/publishing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -774,7 +774,7 @@ jobs:
with:
cudaq_version: ${{ needs.assets.outputs.cudaq_version }}
python_versions: "['3.10', '3.11', '3.12']"
cuda_versions: "['', '11.8', '12.0']"
cuda_versions: "['', '11.8', '12.8']"
wheel_artifacts: '*-wheels'
github_commit: ${{ inputs.github_commit || needs.assets.outputs.github_commit }}

Expand Down Expand Up @@ -903,7 +903,7 @@ jobs:
strategy:
matrix:
os_image: ['redhat/ubi8:8.0', 'ubuntu:22.04']
cuda_version: ['11.8', '12.0']
cuda_version: ['11.8', '12.8']
fail-fast: false

container:
Expand Down Expand Up @@ -1098,7 +1098,7 @@ jobs:

strategy:
matrix:
cuda_version: ['11.8', '12.4']
cuda_version: ['11.8', '12.8']
fail-fast: false

# Must have environment to access environment secreats
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/python_metapackages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ on:
cuda_versions:
required: true
type: string
description: Json array of the CUDA versions to test the packages with (e.g. ['11.8', '12.0']).
description: Json array of the CUDA versions to test the packages with (e.g. ['11.8', '12.8']).
wheel_artifacts:
required: true
type: string
Expand Down
4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -519,8 +519,8 @@ endfunction()

if(CMAKE_CUDA_COMPILER)
if (NOT CUDA_TARGET_ARCHS)
# Volta, Ampere, Hopper
set(CUDA_TARGET_ARCHS "70;80;90")
# Volta, Ampere, Hopper, Blackwell
set(CUDA_TARGET_ARCHS "70;80;90;100")
endif()
CUDA_get_gencode_args(CUDA_gencode_flags ${CUDA_TARGET_ARCHS})
set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -shared -std=c++17 ${CUDA_gencode_flags} --compiler-options -fPIC")
Expand Down
2 changes: 1 addition & 1 deletion docker/build/assets.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
ARG base_image=amd64/almalinux:8
FROM ${base_image} AS prereqs
SHELL ["/bin/bash", "-c"]
ARG cuda_version=12.0
ARG cuda_version=12.8
ENV CUDA_VERSION=${cuda_version}

# When a dialogue box would be needed during install, assume default configurations.
Expand Down
2 changes: 1 addition & 1 deletion docker/build/cudaq.dev.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
# 3) set the CC and CXX environment variable to use the same compiler toolchain
# as the LLVM dependencies have been built with.

ARG base_image=ghcr.io/nvidia/cuda-quantum-devdeps:ext-cu12.0-gcc11-main
ARG base_image=ghcr.io/nvidia/cuda-quantum-devdeps:ext-cu12.8-gcc11-main
FROM $base_image

ENV CUDAQ_REPO_ROOT=/workspaces/cuda-quantum
Expand Down
2 changes: 1 addition & 1 deletion docker/build/devdeps.ompi.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
# Must be built from the repo root with:
# docker build -t ghcr.io/nvidia/cuda-quantum-devdeps:ompi -f docker/build/devdeps.ompi.Dockerfile .

ARG cuda_version=12.0
ARG cuda_version=12.8
FROM nvidia/cuda:${cuda_version}.0-devel-ubuntu22.04
SHELL ["/bin/bash", "-c"]
ARG DEBIAN_FRONTEND=noninteractive
Expand Down
2 changes: 1 addition & 1 deletion docker/release/cudaq.wheel.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
# - https://github.com/numpy/numpy/blob/main/pyproject.toml, and
# - https://github.com/numpy/numpy/blob/main/.github/workflows/wheels.yml

ARG base_image=ghcr.io/nvidia/cuda-quantum-devdeps:manylinux-amd64-cu12.0-gcc11-main
ARG base_image=ghcr.io/nvidia/cuda-quantum-devdeps:manylinux-amd64-cu12.8-gcc11-main
FROM $base_image AS wheelbuild

ARG release_version=
Expand Down
2 changes: 1 addition & 1 deletion docker/test/installer/runtime_dependencies.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ esac

CUDA_DOWNLOAD_URL=https://developer.download.nvidia.com/compute/cuda/repos
CUDA_ARCH_FOLDER=$([ "$(uname -m)" == "aarch64" ] && echo sbsa || echo x86_64)
CUDA_VERSION_SUFFIX=$(echo ${CUDART_VERSION:-'12.0'} | tr . -)
CUDA_VERSION_SUFFIX=$(echo ${CUDART_VERSION:-'12.8'} | tr . -)
CUDA_PACKAGES=$(echo "cuda-cudart cuda-nvrtc libcusolver libcublas" | sed "s/[^ ]*/&-${CUDA_VERSION_SUFFIX} /g")
if [ $(echo ${CUDART_VERSION} | cut -d . -f1) -gt 11 ]; then
CUDA_PACKAGES+=" libnvjitlink-${CUDA_VERSION_SUFFIX}"
Expand Down
4 changes: 2 additions & 2 deletions docs/sphinx/using/install/data_center_install.rst
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,7 @@ CUDA

Building CUDA-Q requires a full installation of the CUDA toolkit.
**You can install the CUDA toolkit and use the CUDA compiler without having a GPU.**
The instructions are tested using version 11.8 and 12.0, but other CUDA 11 or 12 versions
The instructions are tested using version 11.8 and 12.8, but other CUDA 11 or 12 versions
should work, as long as the CUDA runtime version on the host system matches the
CUDA version used for the build, and the installed driver on the host
system supports that CUDA version. We recommend using the latest CUDA version
Expand All @@ -160,7 +160,7 @@ following the installation guide for your platform in the online documentation
linked on that page.

Within the tested AlmaLinux 8 environment, for example, the following commands
install CUDA 12.0:
install CUDA 12.8:

.. literalinclude:: ../../../../scripts/configure_build.sh
:language: bash
Expand Down
2 changes: 1 addition & 1 deletion docs/sphinx/using/install/local_installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -839,7 +839,7 @@ The following table summarizes the required components.
:header-rows: 0

* - GPU Architectures
- Volta, Turing, Ampere, Ada, Hopper
- Volta, Turing, Ampere, Ada, Hopper, Blackwell
* - NVIDIA GPU with Compute Capability
- 7.0+
* - CUDA
Expand Down
8 changes: 4 additions & 4 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,10 @@ dependencies = [
'numpy >= 1.24',
'scipy >= 1.10.1',
'requests >= 2.31',
'nvidia-cublas-cu12 ~= 12.0',
'nvidia-cuda-runtime-cu12 ~= 12.0',
'nvidia-cusolver-cu12 ~= 11.4',
'nvidia-cuda-nvrtc-cu12 ~= 12.0'
'nvidia-cublas-cu12 ~= 12.8',
'nvidia-cuda-runtime-cu12 ~= 12.8',
'nvidia-cusolver-cu12 ~= 11.7',
'nvidia-cuda-nvrtc-cu12 ~= 12.8'
]
classifiers = [
'Intended Audience :: Science/Research',
Expand Down
8 changes: 4 additions & 4 deletions scripts/configure_build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ if [ "$1" == "install-cuda" ]; then
CUDA_ARCH_FOLDER=$([ "$(uname -m)" == "aarch64" ] && echo sbsa || echo x86_64)

# [>CUDAInstall]
CUDA_VERSION=${CUDA_VERSION:-12.0}
CUDA_VERSION=${CUDA_VERSION:-12.8}
CUDA_DOWNLOAD_URL=https://developer.download.nvidia.com/compute/cuda/repos
# Go to the url above, set the variables below to a suitable distribution
# and subfolder for your platform, and uncomment the line below.
Expand All @@ -45,7 +45,7 @@ if [ "$1" == "install-cudart" ]; then
CUDA_ARCH_FOLDER=$([ "$(uname -m)" == "aarch64" ] && echo sbsa || echo x86_64)

# [>CUDARTInstall]
CUDA_VERSION=${CUDA_VERSION:-12.0}
CUDA_VERSION=${CUDA_VERSION:-12.8}
CUDA_DOWNLOAD_URL=https://developer.download.nvidia.com/compute/cuda/repos
# Go to the url above, set the variables below to a suitable distribution
# and subfolder for your platform, and uncomment the line below.
Expand All @@ -66,7 +66,7 @@ if [ "$1" == "install-cudart" ]; then
fi

if [ "$1" == "install-cuquantum" ]; then
CUDA_VERSION=${CUDA_VERSION:-12.0}
CUDA_VERSION=${CUDA_VERSION:-12.8}
CUDA_ARCH_FOLDER=$([ "$(uname -m)" == "aarch64" ] && echo sbsa || echo x86_64)

# [>cuQuantumInstall]
Expand All @@ -82,7 +82,7 @@ if [ "$1" == "install-cuquantum" ]; then
fi

if [ "$1" == "install-cutensor" ]; then
CUDA_VERSION=${CUDA_VERSION:-12.0}
CUDA_VERSION=${CUDA_VERSION:-12.8}
CUDA_ARCH_FOLDER=$([ "$(uname -m)" == "aarch64" ] && echo sbsa || echo x86_64)

# [>cuTensorInstall]
Expand Down

0 comments on commit acf05c2

Please sign in to comment.