Skip to content

Try to detect meaningful info about NVIDIA CUDA usage #32

Try to detect meaningful info about NVIDIA CUDA usage

Try to detect meaningful info about NVIDIA CUDA usage #32

Workflow file for this run

##==================================================================================================
## SPY - C++ Informations Broker
## Copyright : SPY Project Contributors
## SPDX-License-Identifier: BSL-1.0
##==================================================================================================
name: SPY - Unit Tests
on:
pull_request:
branches:
- main
concurrency:
group: unit-${{ github.ref }}
cancel-in-progress: true
jobs:
##################################################################################################
## Mac OS X Targets
##################################################################################################
macosx:
runs-on: [macos-12]
strategy:
fail-fast: false
matrix:
cfg:
- { comp: clang , arch: x86_osx, mode: Debug }
- { comp: clang , arch: x86_osx, mode: Release }
- { comp: gcc , arch: x86_osx, mode: Debug }
- { comp: gcc , arch: x86_osx, mode: Release }
steps:
- name: Fetch current branch
uses: actions/checkout@v4.1.1
- name: Running CMake for ${{ matrix.cfg.comp }} in ${{ matrix.cfg.mode }} mode
run: |
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE="${{ matrix.cfg.mode }}" \
-DCMAKE_TOOLCHAIN_FILE=../test/toolchain/${{ matrix.cfg.comp }}.${{ matrix.cfg.arch }}.cmake
- name: Compiling Unit Tests
run: cd build && make unit -j 2
- name: Running Unit Tests
run: cd build && ctest --output-on-failure -j 2
##################################################################################################
## Windows Targets
##################################################################################################
msvc:
runs-on: [windows-2022]
strategy:
fail-fast: false
matrix:
cfg:
- { mode: Debug }
- { mode: Release }
steps:
- name: Fetch current branch
uses: actions/checkout@v4.1.1
- name: Running CMake for MSVC ${{ matrix.cfg.mode }}
run: |
mkdir build && cd build
cmake -G "Visual Studio 17 2022" -A x64 ..
- name: Compiling Unit Tests
run: |
cd build
cmake --build . --target unit --config ${{ matrix.cfg.mode }} --parallel 2
- name: Running Tests
run: |
cd build
ctest -C ${{ matrix.cfg.mode }} --output-on-failure
clang-cl:
runs-on: [windows-2022]
strategy:
fail-fast: false
matrix:
cfg:
- { mode: Debug }
- { mode: Release }
steps:
- name: Fetch current branch
uses: actions/checkout@v4.1.1
- name: Running CMake for Clang CL ${{ matrix.cfg.mode }}
run: |
mkdir build && cd build
cmake -G "Visual Studio 17 2022" -T ClangCL -A x64 ..
- name: Compiling Unit Tests
run: |
cd build
cmake --build . --target unit --config ${{ matrix.cfg.mode }} --parallel 2
- name: Running Tests
run: |
cd build
ctest -C ${{ matrix.cfg.mode }} --output-on-failure
##################################################################################################
## WASM targets
##################################################################################################
wasm:
runs-on: ubuntu-latest
container:
image: ghcr.io/jfalcou/compilers:v7
strategy:
fail-fast: false
matrix:
cfg:
- { comp: clang , arch: wasm, mode: Debug }
- { comp: clang , arch: wasm, mode: Release }
steps:
- name: Fetch current branch
uses: actions/checkout@v4.1.1
- name: Running CMake for ${{ matrix.cfg.comp }} in ${{ matrix.cfg.mode }} mode
run: |
mkdir build && cd build
cmake .. -G Ninja -DCMAKE_BUILD_TYPE="${{ matrix.cfg.mode }}" \
-DCMAKE_TOOLCHAIN_FILE=../test/toolchain/${{ matrix.cfg.comp }}.${{ matrix.cfg.arch }}.cmake
- name: Compiling Unit Tests
run: cd build && ninja unit -j 2
- name: Running Unit Tests
run: cd build && ctest --output-on-failure -j 2
##################################################################################################
## NVCC targets
##################################################################################################
nvcc:
runs-on: ubuntu-latest
container:
image: nvidia/cuda:12.3.2-devel-ubi8
steps:
- name: Fetch current branch
uses: actions/checkout@v4.1.1
- name: Compiling Unit Tests
run: |
mkdir build && cd build
nvcc ../test/arch.cpp -std=c++17 -I../include -o arch.exe
nvcc ../test/compiler.cpp -std=c++17 -I../include -o compiler.exe
nvcc ../test/data_model.cpp -std=c++17 -I../include -o data_model.exe
nvcc ../test/libc.cpp -std=c++17 -I../include -o libc.exe
nvcc ../test/os.cpp -std=c++17 -I../include -o os.exe
nvcc ../test/simd.cpp -std=c++17 -I../include -o simd.exe
nvcc ../test/stdlib.cpp -std=c++17 -I../include -o stdlib.exe
- name: Running Unit Tests
run: |
cd build
./arch.exe && ./compiler.exe && ./data_model.exe && ./libc.exe && ./os.exe && ./simd.exe && ./stdlib.exe
##################################################################################################
## DPC++ Target
##################################################################################################
dpcpp:
runs-on: ubuntu-latest
container:
image: ghcr.io/jfalcou/compilers:sycl-v1
strategy:
fail-fast: false
matrix:
cfg:
- { comp: dpcpp , arch: x86 , mode: Debug }
- { comp: dpcpp , arch: sycl, mode: Debug }
- { comp: dpcpp , arch: x86 , mode: Release }
- { comp: dpcpp , arch: sycl, mode: Release }
steps:
- name: Fetch current branch
uses: actions/checkout@v4.1.1
- name: Running CMake for ${{ matrix.cfg.comp }} in ${{ matrix.cfg.mode }} mode
run: |
source /opt/intel/oneapi/setvars.sh
mkdir build && cd build
cmake .. -G Ninja -DCMAKE_BUILD_TYPE="${{ matrix.cfg.mode }}" \
-DCMAKE_TOOLCHAIN_FILE=../test/toolchain/${{ matrix.cfg.comp }}.${{ matrix.cfg.arch }}.cmake
- name: Compiling Unit Tests
run: cd build && ninja unit -j 2
- name: Running Unit Tests
run: cd build && ctest --output-on-failure -j 2
##################################################################################################
## Clang targets
##################################################################################################
clang:
runs-on: ubuntu-latest
container:
image: ghcr.io/jfalcou/compilers:v7
strategy:
fail-fast: false
matrix:
cfg:
- { comp: clang , arch: x86, mode: Debug }
- { comp: clang , arch: x86, mode: Release }
steps:
- name: Fetch current branch
uses: actions/checkout@v4.1.1
- name: Running CMake for ${{ matrix.cfg.comp }} in ${{ matrix.cfg.mode }} mode
run: |
mkdir build && cd build
cmake .. -G Ninja -DCMAKE_BUILD_TYPE="${{ matrix.cfg.mode }}" \
-DCMAKE_TOOLCHAIN_FILE=../test/toolchain/${{ matrix.cfg.comp }}.${{ matrix.cfg.arch }}.cmake
- name: Compiling Unit Tests
run: cd build && ninja unit -j 2
- name: Running Unit Tests
run: cd build && ctest --output-on-failure -j 2
##################################################################################################
## gcc targets
##################################################################################################
gcc:
runs-on: ubuntu-latest
container:
image: ghcr.io/jfalcou/compilers:v7
strategy:
fail-fast: false
matrix:
cfg:
- { comp: gcc , arch: x86 , opts: , mode: Debug }
- { comp: gcc , arch: x86 , opts: , mode: Release }
- { comp: gcc , arch: aarch64 , opts: -Wno-psabi, mode: Debug }
- { comp: gcc , arch: aarch64 , opts: -Wno-psabi, mode: Release }
- { comp: gcc , arch: aarch64.sve , opts: -Wno-psabi, mode: Debug }
- { comp: gcc , arch: aarch64.sve , opts: -Wno-psabi, mode: Release }
- { comp: gcc , arch: aarch64.sve2, opts: -Wno-psabi, mode: Debug }
- { comp: gcc , arch: aarch64.sve2, opts: -Wno-psabi, mode: Release }
- { comp: gcc , arch: ppc64 , opts: -Wno-psabi, mode: Debug }
- { comp: gcc , arch: ppc64 , opts: -Wno-psabi, mode: Release }
steps:
- name: Fetch current branch
uses: actions/checkout@v4.1.1
- name: Running CMake for ${{ matrix.cfg.comp }} in ${{ matrix.cfg.mode }} mode
run: |
mkdir build && cd build
cmake .. -G Ninja -DCMAKE_BUILD_TYPE="${{ matrix.cfg.mode }}" \
-DCMAKE_TOOLCHAIN_FILE=../test/toolchain/${{ matrix.cfg.comp }}.${{ matrix.cfg.arch }}.cmake
- name: Compile Unit Tests
run: cd build && ninja unit -j 2
- name: Running Unit Tests
run: cd build && ctest --output-on-failure -j 2