Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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: ["12.6"]
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: ["12.6"]
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.11', '3.13']
cuda_version: ["11.8", "12.0"]
cuda_version: ["12.6"]
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.11', '3.13']"
cuda_versions: "['', '11.8', '12.0']"
cuda_versions: "['', '12.6']"
wheel_artifacts: 'pycudaq-*'

binaries:
Expand All @@ -265,7 +265,7 @@ jobs:
strategy:
matrix:
platform: [amd64, arm64]
cuda_version: ["11.8", "12.0"]
cuda_version: ["12.6"]
fail-fast: false
uses: ./.github/workflows/prebuilt_binaries.yml
secrets:
Expand Down
18 changes: 5 additions & 13 deletions .github/workflows/config/validation_config.json
Original file line number Diff line number Diff line change
@@ -1,14 +1,6 @@
{
"python":
[
{
"version": "3.10",
"operating_systems":
[
"ubuntu:22.04",
"fedora:42"
]
},
{
"version": "3.11",
"operating_systems":
Expand Down Expand Up @@ -55,7 +47,7 @@
"ubuntu:22.04":
{
"libcdev_package": "libc6-dev",
"cudart_version": "12.0",
"cudart_version": "12.6",
"cuda_distribution": "ubuntu2204"
},
"debian:12":
Expand All @@ -67,13 +59,13 @@
"redhat/ubi9:9.6":
{
"libcdev_package": "glibc-devel",
"cudart_version": "12.0",
"cudart_version": "12.6",
"cuda_distribution": "rhel9"
},
"opensuse/leap:15.5":
{
"libcdev_package": "glibc-devel",
"cudart_version": "12.0",
"cudart_version": "12.6",
"cuda_distribution": "opensuse15"
},
"fedora:42":
Expand Down Expand Up @@ -129,13 +121,13 @@
"ubuntu:22.04":
{
"libcdev_package": "libc6-dev",
"cudart_version": "12.0",
"cudart_version": "12.6",
"cuda_distribution": "ubuntu2204"
},
"redhat/ubi9:9.6":
{
"libcdev_package": "glibc-devel",
"cudart_version": "12.0",
"cudart_version": "12.6",
"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: ["12.6"]
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: ["12.6"]
fail-fast: false
uses: ./.github/workflows/dev_environment.yml
secrets:
Expand Down
20 changes: 10 additions & 10 deletions .github/workflows/deployments.yml
Original file line number Diff line number Diff line change
Expand Up @@ -205,7 +205,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: ["12.6"]
fail-fast: false
uses: ./.github/workflows/dev_environment.yml
secrets:
Expand Down Expand Up @@ -237,7 +237,7 @@ jobs:
strategy:
matrix:
platform: ${{ fromJson(needs.metadata.outputs.platforms).ids }}
cuda_version: ["11.8", "12.0"]
cuda_version: ["12.6"]
fail-fast: false
uses: ./.github/workflows/dev_environment.yml
secrets:
Expand Down Expand Up @@ -268,7 +268,7 @@ jobs:
strategy:
matrix:
platform: ${{ fromJson(needs.metadata.outputs.platforms).ids }}
cuda_version: ["11.8", "12.0"]
cuda_version: ["12.6"]
fail-fast: false
uses: ./.github/workflows/dev_environment.yml
secrets:
Expand Down Expand Up @@ -354,7 +354,7 @@ jobs:
strategy:
matrix:
platform: ${{ fromJson(needs.metadata.outputs.platforms).ids }}
cuda_version: ["11.8", "12.0"]
cuda_version: ["12.6"]
fail-fast: false
uses: ./.github/workflows/dev_environment.yml
secrets:
Expand Down Expand Up @@ -402,7 +402,7 @@ jobs:
strategy:
matrix:
platform: ${{ fromJson(needs.metadata.outputs.platforms).ids }}
cuda_version: ["11.8", "12.0"]
cuda_version: ["12.6"]
fail-fast: false
uses: ./.github/workflows/docker_images.yml
secrets:
Expand Down Expand Up @@ -443,7 +443,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
cuda: ["11.8", "12.0"]
cuda: ["12.6"]

environment: ghcr-deployment

Expand Down Expand Up @@ -666,7 +666,7 @@ jobs:
STITCHED_JSON='${{ needs.aggregate_stitched_images.outputs.json }}'
echo "$STITCHED_JSON" | jq .

for cuda in 11.8 12.0; do
for cuda in 12.6; do
cuda_major="${cuda%%.*}"
artifact_name="image_cu${cuda_major}_publishing"
info_file="$artifact_name.txt"
Expand Down Expand Up @@ -718,8 +718,8 @@ jobs:
strategy:
matrix:
platform: ${{ fromJson(needs.metadata.outputs.platforms).ids }}
python_version: ['3.10', '3.11', '3.12', '3.13']
cuda_version: ["11.8", "12.0"]
python_version: ['3.11', '3.12', '3.13']
cuda_version: ["12.6"]
fail-fast: false
uses: ./.github/workflows/python_wheels.yml
secrets:
Expand All @@ -738,7 +738,7 @@ jobs:
strategy:
matrix:
platform: ${{ fromJson(needs.metadata.outputs.platforms).ids }}
cuda_version: ["11.8", "12.0"]
cuda_version: ["12.6"]
fail-fast: false
uses: ./.github/workflows/prebuilt_binaries.yml
secrets:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docker_images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -842,7 +842,7 @@ jobs:
docker cp docs/notebook_validation.py cuda-quantum:"/home/cudaq/notebook_validation.py"
# In containers without GPU support, UCX does not work properly since it is configured to work with GPU-support.
# Hence, don't enforce UCX when running these tests.
docker exec cuda-quantum bash -c "python3 -m pip install pandas scipy pandas seaborn 'h5py<3.11' contfrac"
docker exec cuda-quantum bash -c "python3 -m pip install pandas scipy pandas seaborn h5py contfrac"
(docker exec cuda-quantum bash -c "unset OMPI_MCA_pml && set -o pipefail && bash validate_container.sh | tee /tmp/validation.out") && passed=true || passed=false
docker cp cuda-quantum:"/tmp/validation.out" /tmp/validation.out
docker stop cuda-quantum
Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/integration_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,6 @@ on:
required: true
description: 'Python version to run wheel test'
options:
- '3.10'
- '3.11'
- '3.12'
- '3.13'
Expand All @@ -72,7 +71,7 @@ env:
NVQC_FUNCTION_ID: 3bfa0342-7d2a-4f1b-8e81-b6608d28ca7d
# <Backend>:<GPU Type>:<Instance Type>:<Min Instances>:<Max Instances>
NGC_NVQC_DEPLOYMENT_SPEC: GFN:L40S:gl40s_1.br25_2xlarge:1:1
python_version: '3.10'
python_version: '3.12'

jobs:
# We need this job purely to choose the container image values because the
Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/nvqc_regression_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ on:
required: true
description: 'Python version to run wheel test'
options:
- '3.10'
- '3.11'
- '3.12'
- '3.13'
Expand All @@ -35,7 +34,7 @@ on:
- cron: 0 3 * * *

env:
python_version: '3.10'
python_version: '3.12'

jobs:
# We need this job purely to choose the container image values because the
Expand Down
14 changes: 7 additions & 7 deletions .github/workflows/publishing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -650,7 +650,7 @@ jobs:
strategy:
matrix:
info_file: ${{ fromJson(needs.assets.outputs.python_wheels).info_files }}
python_version: ['3.10', '3.11', '3.12', '3.13']
python_version: ['3.11', '3.12', '3.13']
fail-fast: false

runs-on: ${{ (contains(matrix.info_file, 'arm') && 'linux-arm64-cpu8') || 'linux-amd64-cpu8' }}
Expand Down Expand Up @@ -733,10 +733,10 @@ jobs:
- name: Set retention days
id: set_retention_days
run: |
# Save the x86_64-py3.10-wheels for longer because our some of our
# Save the x86_64-py3.12-wheels for longer because our some of our
# nightly jobs rely on them being present, even if we haven't done a
# fresh publishing in the last 24 hours.
if [ "${{ steps.release_info.outputs.platform_arch }}" == "x86_64" ] && [ "${{ matrix.python_version }}" == "3.10" ]; then
if [ "${{ steps.release_info.outputs.platform_arch }}" == "x86_64" ] && [ "${{ matrix.python_version }}" == "3.12" ]; then
echo "retention_days=7" >> $GITHUB_OUTPUT
else
echo "retention_days=1" >> $GITHUB_OUTPUT
Expand Down Expand Up @@ -782,8 +782,8 @@ jobs:
uses: ./.github/workflows/python_metapackages.yml
with:
cudaq_version: ${{ needs.assets.outputs.cudaq_version }}
python_versions: "['3.10', '3.11', '3.12', '3.13']"
cuda_versions: "['', '11.8', '12.0']"
python_versions: "['3.11', '3.12', '3.13']"
cuda_versions: "['', '12.6']"
wheel_artifacts: '*-wheels'
github_commit: ${{ inputs.github_commit || needs.assets.outputs.github_commit }}

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

container:
Expand Down Expand Up @@ -1203,7 +1203,7 @@ jobs:
source validate_pycudaq.sh \
-v ${{ needs.assets.outputs.cudaq_version }} \
-i /tmp/packages -f /tmp \
-c ${{ matrix.cuda_version }} -p 3.10
-c ${{ matrix.cuda_version }} -p 3.12
set -e # Re-enable exit code error checking

expected_dependency=cuda-quantum-cu$(echo ${{ matrix.cuda_version }} | cut -d . -f1)
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/python_metapackages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@ on:
python_versions:
required: true
type: string
description: Json array of the Python versions to test the packages with (e.g. ['3.10', '3.12']).
description: Json array of the Python versions to test the packages with (e.g. ['3.11', '3.12']).
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. ['12.6']).
wheel_artifacts:
required: true
type: string
Expand Down
14 changes: 7 additions & 7 deletions docker/build/devdeps.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
# then the toolchain will be built from source.

# [Operating System]
ARG base_image=ubuntu:22.04
ARG base_image=ubuntu:24.04

# [CUDA-Q Dependencies]
FROM ${base_image} AS prereqs
Expand Down Expand Up @@ -51,12 +51,14 @@ ENV ZLIB_INSTALL_PREFIX=/usr/local/zlib
ENV OPENSSL_INSTALL_PREFIX=/usr/local/openssl
ENV CURL_INSTALL_PREFIX=/usr/local/curl
ENV AWS_INSTALL_PREFIX=/usr/local/aws
# TODO: eliminate the need for this
ENV PIP_BREAK_SYSTEM_PACKAGES=1

## [Build Dependencies]
RUN apt-get update && apt-get install -y --no-install-recommends \
wget git unzip \
python3-dev python3-pip && \
python3 -m pip install --no-cache-dir numpy && \
python3 -m pip install --no-cache-dir numpy --break-system-packages && \
apt-get autoremove -y --purge && apt-get clean && rm -rf /var/lib/apt/lists/*
ADD scripts/install_toolchain.sh /cuda-quantum/scripts/install_toolchain.sh
RUN source /cuda-quantum/scripts/install_toolchain.sh \
Expand Down Expand Up @@ -151,23 +153,21 @@ RUN apt-get update && apt-get install --no-install-recommends -y wget ca-certifi
&& apt-get remove -y wget ca-certificates \
&& apt-get autoremove -y --purge && apt-get clean && rm -rf /var/lib/apt/lists/*
ENV PATH="${PATH}:/usr/local/cmake-3.28/bin"
# We must use h5py<3.11 because 3.11 doesn't include aarch64 Linux wheels.
# https://github.com/h5py/h5py/issues/2408
RUN apt-get update && apt-get install -y --no-install-recommends \
git gdb ninja-build file lldb \
python3 python3-pip libpython3-dev \
&& python3 -m pip install --no-cache-dir \
&& python3 -m pip install --no-cache-dir --break-system-packages \
lit==18.1.4 pytest==8.2.0 numpy==1.26.4 requests==2.31.0 \
fastapi==0.111.0 uvicorn==0.29.0 pydantic==2.7.1 llvmlite==0.42.0 \
pyspelling==2.10 pymdown-extensions==10.8.1 yapf \
scipy==1.10.1 openfermionpyscf==0.5 'h5py<3.11' \
scipy==1.11.4 openfermionpyscf==0.5 h5py==3.12.1 \
&& apt-get autoremove -y --purge && apt-get clean && rm -rf /var/lib/apt/lists/*

# Install additional tools for CUDA-Q documentation generation.
COPY --from=prereqs /usr/local/bin/doxygen /usr/local/bin/doxygen
ENV PATH="${PATH}:/usr/local/bin"
RUN apt-get update && apt-get install -y --no-install-recommends python3 python3-pip pandoc aspell aspell-en \
&& python3 -m pip install --no-cache-dir \
&& python3 -m pip install --no-cache-dir --break-system-packages \
ipython==8.15.0 pandoc==2.3 sphinx==5.3.0 sphinx_rtd_theme==1.2.0 sphinx-reredirects==0.1.2 \
sphinx-copybutton==0.5.2 sphinx_inline_tabs==2023.4.21 enum-tools[sphinx] breathe==4.34.0 \
nbsphinx==0.9.2 sphinx_gallery==0.13.0 myst-parser==1.0.0 ipykernel==6.29.4 notebook==7.3.2 \
Expand Down
Loading
Loading