Drop Ubuntu 20.04 and add Ubuntu 24.04 support Change-Id: I34cb0032598c84820ead2cde8e0a083d82d0e1ce
diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index ef2b1ba..8cd9d8e 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml
@@ -18,8 +18,8 @@ fail-fast: true matrix: os: - - ubuntu:20.04 - ubuntu:22.04 + - ubuntu:24.04 build_type: - Release lib: @@ -49,27 +49,36 @@ libsuitesparse-dev \ ninja-build \ wget - # nvidia cuda toolkit shipped with 20.04 LTS does not support stream-ordered allocations - - name: Setup CUDA toolkit repositories (20.04) - if: matrix.gpu == 'cuda' && matrix.os == 'ubuntu:20.04' - run: | - wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-keyring_1.0-1_all.deb - dpkg -i cuda-keyring_1.0-1_all.deb + # nvidia cuda toolkit + gcc combo shipped with 22.04LTS is broken # and is not able to compile code that uses thrust # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1006962 - - name: Setup CUDA toolkit repositories (22.04) + - name: Setup CUDA Toolkit Repositories (22.04) if: matrix.gpu == 'cuda' && matrix.os == 'ubuntu:22.04' run: | wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.0-1_all.deb dpkg -i cuda-keyring_1.0-1_all.deb - - name: Setup CUDA toolkit - if: matrix.gpu == 'cuda' + + - name: Setup CUDA Toolkit Repositories (24.04) + if: matrix.gpu == 'cuda' && matrix.os == 'ubuntu:24.04' + run: | + wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-keyring_1.1-1_all.deb + dpkg -i cuda-keyring_1.1-1_all.deb + + - name: Setup CUDA Toolkit (<24.04) + if: matrix.gpu == 'cuda' && matrix.os != 'ubuntu:24.04' run: | apt-get update apt-get install -y cuda echo "CUDACXX=/usr/local/cuda/bin/nvcc" >> $GITHUB_ENV + - name: Setup CUDA Toolkit (>=24.04) + if: matrix.gpu == 'cuda' && matrix.os == 'ubuntu:24.04' + run: | + apt-get update + apt-get install -y nvidia-cuda-toolkit + echo "CUDACXX=/usr/lib/nvidia-cuda-toolkit/bin/nvcc" >> $GITHUB_ENV + - name: Cache Build id: cache-build uses: actions/cache@v4