style: format all CUDA source files with clang-format-17 #15
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 | |
| name: CI | |
| on: | |
| push: | |
| branches: [main, master] | |
| pull_request: | |
| branches: [main, master] | |
| 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.13.0 | |
| with: | |
| clang-format-version: '17' | |
| check-path: '.' | |
| exclude-regex: '(^|/)(build|third_party|external|vendor|\.git|\.kiro)(/|$)' | |
| 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=OFF -DCMAKE_CUDA_ARCHITECTURES="70;75;80;86;89;90" | |
| - name: Build | |
| run: cmake --build build --target sgemm_benchmark -j2 --verbose | |
| - name: Info | |
| run: | | |
| echo "✅ CUDA compilation successful" | |
| echo "ℹ️ GPU runtime tests require a CUDA-capable machine" |