Skip to content

Commit

Permalink
CI update
Browse files Browse the repository at this point in the history
  • Loading branch information
j-stephan committed May 10, 2022
1 parent 0819e45 commit c31efb6
Show file tree
Hide file tree
Showing 6 changed files with 118 additions and 56 deletions.
103 changes: 62 additions & 41 deletions .github/workflows/ci.yml

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,3 +63,4 @@ include:
- local: '/script/gitlabci/job_hip4.3.yml'
- local: '/script/gitlabci/job_hip4.5.yml'
- local: '/script/gitlabci/job_hip5.0.yml'
- local: '/script/gitlabci/job_hip5.1.yml'
28 changes: 14 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,20 +70,20 @@ Supported Compilers

This library uses C++17 (or newer when available).

| Accelerator Back-end | gcc 7.5 <br/> (Linux) | gcc 8.5 <br/> (Linux) | gcc 9.4 <br/> (Linux) | gcc 10.3 <br/> (Linux) | gcc 11.1 <br/> (Linux) | clang 5-7 <br/> (Linux) | clang 8-9 <br/> (Linux) | clang 10 <br/> (Linux) | clang 11 <br/> (Linux) | clang 12 <br/> (Linux) | clang 13 <br/> (Linux) | icpx (latest) | Apple LLVM 12.4.0/13.2.1 <br /> (macOS) | Visual Studio 2019 <br/> (Windows) | Visual Studio 2022 <br/> (Windows) |
|--------------------------------------------------------------------------------|-------------------------------------------|-------------------------------------------|-------------------------------------------|--------------------------------------|------------------------|-------------------------|-------------------------------------------------|--------------------------------------------------|------------------------------------------|-------------------------------------------|--------------------------------------|--------------------|-------------------------------------------------------|-------------------------------------------|--------------------------------------|
| Serial | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: |
| OpenMP 2.0+ blocks | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: |
| OpenMP 2.0+ threads | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: |
| OpenMP 5.0 (CPU) | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :white_check_mark: | :white_check_mark: | - | :x: | :x: | :x: | :x: |
| std::thread | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: |
| Boost.Fiber | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: |
| TBB | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :x: | :white_check_mark: | :x: | :x: |
| CUDA (nvcc) | :white_check_mark: <br/> (CUDA 11.0-11.6) | :white_check_mark: <br/> (CUDA 11.0-11.6) | :white_check_mark: <br/> (CUDA 11.0-11.6) | :white_check_mark: <br/> (CUDA 11.6) | :x: | :x: | :white_check_mark: <br/> (CUDA 11.0-11.2; 11.6) | :white_check_mark: <br/> (CUDA 11.1, 11.2, 11.6) | :white_check_mark: <br/> (CUDA 11.6) | :white_check_mark: <br/> (CUDA 11.6) | :white_check_mark: <br/> (CUDA 11.6) | :x: | :x: | :white_check_mark: <br/> (CUDA 11.2-11.6) | :white_check_mark: <br/> (CUDA 11.6) |
| CUDA (clang) | - | - | - | - | - | - | - | :x: | :white_check_mark: <br/> (CUDA 9.2-10.1) | :white_check_mark: <br/> (CUDA 10.0-10.2) | - | :x: | - | - | - |
| [HIP](https://alpaka.readthedocs.io/en/latest/install/HIP.html) (clang) | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :x: | :white_check_mark: (HIP 4.2) | :white_check_mark: (HIP 4.3 - 5.0) | :x: | - | - | - |

Other compilers or combinations marked with :x: in the table above may work but are not tested in CI and are therefore not explicitly supported.
| Accelerator back-end | gcc 7 - 9 <br/> (Linux) | gcc 10 - 11 <br/> (Linux) | gcc 12 <br/> (Linux) | clang 5-7 <br/> (Linux) | clang 8-9 <br/> (Linux) | clang 10 <br/> (Linux) | clang 11 <br/> (Linux) | clang 12 <br/> (Linux) | clang 13 <br/> (Linux) | clang 14 <br/> (Linux) | icpx (latest) | Apple LLVM 12.4.0/13.2.1/13.3.1 <br /> (macOS) | Visual Studio 2019 <br/> (Windows) | Visual Studio 2022 <br/> (Windows) |
|----------------------|---------------------------------------------|-----------------------------------------|----------------------|-------------------------|-------------------------------------------------|--------------------------------------------------|------------------------------------------|-------------------------------------------|-------------------------------------------|-------------------------------------------|--------------------|------------------------------------------------|-------------------------------------------|--------------------------------------|
| Serial | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: |
| OpenMP 2.0+ blocks | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: |
| OpenMP 2.0+ threads | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: |
| OpenMP 5.0 (CPU) | :x: | :x: | :x: | :x: | :x: | :x: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :x: | :x: | :x: | :x: |
| std::thread | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: |
| Boost.Fiber | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: |
| TBB | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :x: | :white_check_mark: | :x: | :x: |
| CUDA (nvcc) | :white_check_mark: <br/> (CUDA 11.0-11.6) | :white_check_mark: <br/> (CUDA 11.6) | :x: | :x: | :white_check_mark: <br/> (CUDA 11.0-11.2; 11.6) | :white_check_mark: <br/> (CUDA 11.1, 11.2, 11.6) | :white_check_mark: <br/> (CUDA 11.6) | :white_check_mark: <br/> (CUDA 11.6) | :white_check_mark: <br/> (CUDA 11.6) | :x: | :x: | :x: | :white_check_mark: <br/> (CUDA 11.2-11.6) | :white_check_mark: <br/> (CUDA 11.6) |
| CUDA (clang) | - | - | - | :x: | - | :x: | :white_check_mark: <br/> (CUDA 9.2-10.1) | :white_check_mark: <br/> (CUDA 10.0-10.1) | :white_check_mark: <br/> (CUDA 10.0-10.1) | :white_check_mark: <br/> (CUDA 10.0-11.5) | :x: | - | - | - |
| HIP (HIP-clang) | - | - | - | :x: | :x: | :x: | :x: | :white_check_mark: <br/> (HIP 4.2) | :white_check_mark: <br/> (HIP 4.3-5.0) | :white_check_mark: <br/> (HIP 4.3-5.1) | - | - | - | - |

Other compilers or combinations marked with :x: in the table above may work but are not tested in CI and are therefore not explicitly supported. Combinations marked with `-` in the table are impossible.

Dependencies
------------
Expand Down
11 changes: 11 additions & 0 deletions script/gitlabci/job_cuda11.6.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,17 @@ linux_nvcc-11.6_gcc-10_debug:
ALPAKA_CI_CMAKE_VER: 3.19.8
stage: stageRun1

linux_nvcc-11.6_gcc-11_release:
extends: .base_cuda_gcc
variables:
ALPAKA_CI_UBUNTU_VER: "20.04"
ALPAKA_CI_CUDA_VERSION: "11.6"
ALPAKA_CI_GCC_VER: 11
CMAKE_BUILD_TYPE: Release
ALPAKA_BOOST_VERSION: 1.79.0
ALPAKA_CI_CMAKE_VER: 3.23.1
stage: stageRun1

# nvcc + clang
linux_nvcc-11.6_clang-8_release:
extends: .base_cuda_clang
Expand Down
22 changes: 22 additions & 0 deletions script/gitlabci/job_hip5.1.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# HIP
linux_hip5.1_clang_debug_hip_only:
extends: .base_hip
variables:
ALPAKA_CI_HIP_VERSION: "5.1"
ALPAKA_CI_CLANG_VER: 14
ALPAKA_CI_STDLIB: libstdc++
CMAKE_BUILD_TYPE: Debug
ALPAKA_BOOST_VERSION: 1.78.0
ALPAKA_CI_CMAKE_VER: 3.22.4
stage: stageRun0

linux_hip5.1_clang_release_hip_only:
extends: .base_hip
variables:
ALPAKA_CI_HIP_VERSION: "5.0"
ALPAKA_CI_CLANG_VER: 14
ALPAKA_CI_STDLIB: libstdc++
CMAKE_BUILD_TYPE: Release
ALPAKA_BOOST_VERSION: 1.79.0
ALPAKA_CI_CMAKE_VER: 3.23.1
stage: stageRun1
9 changes: 8 additions & 1 deletion script/install_clang.sh
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/bin/bash

#
# Copyright 2021 Benjamin Worpitz, Bernhard Manfred Gruber
# Copyright 2022 Benjamin Worpitz, Bernhard Manfred Gruber, Jan Stephan
#
# This file is part of alpaka.
#
Expand Down Expand Up @@ -36,6 +36,13 @@ then
sudo add-apt-repository 'deb http://apt.llvm.org/focal/ llvm-toolchain-focal-13 main'
fi

# add clang-14 repository for ubuntu 20.04
if [[ "$(cat /etc/os-release)" == *"20.04"* && "${ALPAKA_CI_CLANG_VER}" -eq 14 ]]
then
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
sudo add-apt-repository 'deb http://apt.llvm.org/focal/ llvm-toolchain-focal-14 main'
fi

travis_retry sudo apt-get -y --quiet --allow-unauthenticated --no-install-recommends install clang-${ALPAKA_CI_CLANG_VER}

if [ "${ALPAKA_CI_STDLIB}" == "libc++" ]
Expand Down

0 comments on commit c31efb6

Please sign in to comment.