Merge origin/master and retain closeout improvements #52
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Continuous Integration | |
| # Validates code formatting and CUDA compilation of all targets (benchmark + tests) | |
| # | |
| # Workflow separation: | |
| # - This workflow: formatting + CUDA compile-time checks (no GPU runtime) | |
| # - pages.yml: docs tests/build and GitHub Pages buildability | |
| name: CI | |
| on: | |
| push: | |
| branches: [master] | |
| paths-ignore: | |
| - '**/*.md' | |
| - 'docs/**' | |
| pull_request: | |
| branches: [master] | |
| paths-ignore: | |
| - '**/*.md' | |
| - 'docs/**' | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: ci-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| format-check: | |
| name: Format Check | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Check formatting | |
| uses: jidicula/clang-format-action@v4.14.0 | |
| with: | |
| clang-format-version: '17' | |
| fallback-style: 'LLVM' | |
| cuda-build: | |
| name: CUDA Build | |
| runs-on: ubuntu-latest | |
| container: | |
| image: nvidia/cuda:12.4.1-devel-ubuntu22.04 | |
| steps: | |
| - name: Install dependencies | |
| run: apt-get update && apt-get install -y cmake git build-essential | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Configure | |
| run: cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTS=ON | |
| - name: Build | |
| run: cmake --build build -j2 | |
| - name: Info | |
| run: | | |
| echo "✅ CUDA compilation successful for all targets (benchmark + tests)" | |
| echo "ℹ️ GPU runtime tests require a CUDA-capable machine" |