From fa57e523605a2db4b031ebec7bcd19050767cfd2 Mon Sep 17 00:00:00 2001 From: Brad King Date: Fri, 5 Apr 2024 15:12:17 -0400 Subject: ci: add cuda12.2 base image --- .gitlab/ci/docker/cuda12.2/Dockerfile | 9 ++++ .gitlab/ci/docker/cuda12.2/install_deps.sh | 20 +++++++++ .gitlab/ci/docker/cuda12.2/llvm-snapshot.gpg.key | 52 ++++++++++++++++++++++++ .gitlab/ci/docker/cuda12.2/llvm.list | 2 + 4 files changed, 83 insertions(+) create mode 100644 .gitlab/ci/docker/cuda12.2/Dockerfile create mode 100755 .gitlab/ci/docker/cuda12.2/install_deps.sh create mode 100644 .gitlab/ci/docker/cuda12.2/llvm-snapshot.gpg.key create mode 100644 .gitlab/ci/docker/cuda12.2/llvm.list diff --git a/.gitlab/ci/docker/cuda12.2/Dockerfile b/.gitlab/ci/docker/cuda12.2/Dockerfile new file mode 100644 index 0000000..e46f228 --- /dev/null +++ b/.gitlab/ci/docker/cuda12.2/Dockerfile @@ -0,0 +1,9 @@ +FROM kitware/nvidia-cuda:12.2.2-devel-ubuntu22.04 +MAINTAINER Brad King + +COPY llvm.list /etc/apt/sources.list.d/llvm.list +COPY llvm-snapshot.gpg.key /root/llvm-snapshot.gpg.key +RUN apt-key add /root/llvm-snapshot.gpg.key + +COPY install_deps.sh /root/install_deps.sh +RUN sh /root/install_deps.sh diff --git a/.gitlab/ci/docker/cuda12.2/install_deps.sh b/.gitlab/ci/docker/cuda12.2/install_deps.sh new file mode 100755 index 0000000..94fbd98 --- /dev/null +++ b/.gitlab/ci/docker/cuda12.2/install_deps.sh @@ -0,0 +1,20 @@ +#!/bin/sh + +set -e + +apt-get update + +# Install dependency without interaction. +env DEBIAN_FRONTEND=noninteractive \ + TZ=America/New_York \ + apt-get install -y \ + tzdata + +# Install development tools. +apt-get install -y \ + g++ \ + clang-18 \ + curl \ + git + +apt-get clean diff --git a/.gitlab/ci/docker/cuda12.2/llvm-snapshot.gpg.key b/.gitlab/ci/docker/cuda12.2/llvm-snapshot.gpg.key new file mode 100644 index 0000000..aa6b105 --- /dev/null +++ b/.gitlab/ci/docker/cuda12.2/llvm-snapshot.gpg.key @@ -0,0 +1,52 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1.4.12 (GNU/Linux) + +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 +bXb5c6gCHESH5PXwPU4jQEE7Ib9J6sbk7ZT2Mw== +=j+4q +-----END PGP PUBLIC KEY BLOCK----- diff --git a/.gitlab/ci/docker/cuda12.2/llvm.list b/.gitlab/ci/docker/cuda12.2/llvm.list new file mode 100644 index 0000000..350a712 --- /dev/null +++ b/.gitlab/ci/docker/cuda12.2/llvm.list @@ -0,0 +1,2 @@ +deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-18 main +deb-src http://apt.llvm.org/jammy/ llvm-toolchain-jammy-18 main -- cgit v0.12 From c7a97873c85dd60180e89bfbf4a61e41f1334735 Mon Sep 17 00:00:00 2001 From: Brad King Date: Fri, 5 Apr 2024 15:20:48 -0400 Subject: ci: add jobs testing cuda12.2 with nvcc and clang 18 --- .gitlab-ci.yml | 21 +++++++++++++++++++++ .gitlab/ci/configure_cuda12.2_clang.cmake | 3 +++ .gitlab/ci/configure_cuda12.2_nvidia.cmake | 4 ++++ .gitlab/ci/env_cuda12.2_clang.sh | 3 +++ .gitlab/os-linux.yml | 18 ++++++++++++++++++ 5 files changed, 49 insertions(+) create mode 100644 .gitlab/ci/configure_cuda12.2_clang.cmake create mode 100644 .gitlab/ci/configure_cuda12.2_nvidia.cmake create mode 100644 .gitlab/ci/env_cuda12.2_clang.sh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1cfeb35..dd11292 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -363,6 +363,27 @@ t:cuda11.8-minimal-splayed-ninja: variables: CMAKE_CI_NO_MR: "true" +t:cuda12.2-nvidia: + extends: + - .cuda12.2_nvidia + - .cmake_test_linux_release + - .linux_x86_64_tags_cuda + - .cmake_junit_artifacts + - .run_dependent + - .needs_centos7_x86_64 + variables: + CMAKE_CI_NO_MR: "true" + +t:cuda12.2-clang: + extends: + - .cuda12.2_clang + - .cmake_test_linux_release + - .linux_x86_64_tags_cuda + - .run_dependent + - .needs_centos7_x86_64 + variables: + CMAKE_CI_NO_MR: "true" + t:hip5.5-nvidia: extends: - .hip5.5_nvidia diff --git a/.gitlab/ci/configure_cuda12.2_clang.cmake b/.gitlab/ci/configure_cuda12.2_clang.cmake new file mode 100644 index 0000000..e13ca88 --- /dev/null +++ b/.gitlab/ci/configure_cuda12.2_clang.cmake @@ -0,0 +1,3 @@ +set(CMake_TEST_CUDA "Clang" CACHE STRING "") + +include("${CMAKE_CURRENT_LIST_DIR}/configure_external_test.cmake") diff --git a/.gitlab/ci/configure_cuda12.2_nvidia.cmake b/.gitlab/ci/configure_cuda12.2_nvidia.cmake new file mode 100644 index 0000000..2cb2950 --- /dev/null +++ b/.gitlab/ci/configure_cuda12.2_nvidia.cmake @@ -0,0 +1,4 @@ +set(CMake_TEST_CUDA "NVIDIA" CACHE STRING "") +set(CMake_TEST_CUDA_CUPTI "ON" CACHE STRING "") + +include("${CMAKE_CURRENT_LIST_DIR}/configure_external_test.cmake") diff --git a/.gitlab/ci/env_cuda12.2_clang.sh b/.gitlab/ci/env_cuda12.2_clang.sh new file mode 100644 index 0000000..4b71b42 --- /dev/null +++ b/.gitlab/ci/env_cuda12.2_clang.sh @@ -0,0 +1,3 @@ +export CC=/usr/bin/clang-18 +export CXX=/usr/bin/clang++-18 +export CUDACXX=/usr/bin/clang++-18 diff --git a/.gitlab/os-linux.yml b/.gitlab/os-linux.yml index 5710715..e6e9773 100644 --- a/.gitlab/os-linux.yml +++ b/.gitlab/os-linux.yml @@ -367,6 +367,24 @@ CMAKE_CONFIGURATION: cuda11.8_splayed_nvidia CTEST_NO_WARNINGS_ALLOWED: 1 +.cuda12.2: + extends: .cuda + image: "kitware/cmake:ci-cuda12.2-x86_64-2024-04-05" + variables: + CMAKE_ARCH: x86_64 + +.cuda12.2_nvidia: + extends: .cuda12.2 + variables: + CMAKE_CONFIGURATION: cuda12.2_nvidia + CTEST_NO_WARNINGS_ALLOWED: 1 + +.cuda12.2_clang: + extends: .cuda12.2 + variables: + CMAKE_CONFIGURATION: cuda12.2_clang + CTEST_NO_WARNINGS_ALLOWED: 1 + ### HIP builds .hip5.5: -- cgit v0.12