vulkan: Tweak Xe2 warptile configuration #1247
Workflow file for this run
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
| name: CI (self-hosted) | |
| on: | |
| workflow_dispatch: # allows manual triggering | |
| push: | |
| branches: | |
| - master | |
| paths: [ | |
| '.github/workflows/build.yml', | |
| '**/CMakeLists.txt', | |
| '**/.cmake', | |
| '**/*.h', | |
| '**/*.hpp', | |
| '**/*.c', | |
| '**/*.cpp', | |
| '**/*.cu', | |
| '**/*.cuh', | |
| '**/*.swift', | |
| '**/*.m', | |
| '**/*.metal', | |
| '**/*.comp', | |
| '**/*.glsl', | |
| '**/*.wgsl' | |
| ] | |
| pull_request: | |
| types: [opened, synchronize, reopened] | |
| paths: [ | |
| '.github/workflows/build-self-hosted.yml', | |
| '**/CMakeLists.txt', | |
| '**/.cmake', | |
| '**/*.h', | |
| '**/*.hpp', | |
| '**/*.c', | |
| '**/*.cpp', | |
| '**/*.cu', | |
| '**/*.cuh', | |
| '**/*.swift', | |
| '**/*.m', | |
| '**/*.metal', | |
| '**/*.comp', | |
| '**/*.glsl', | |
| '**/*.wgsl' | |
| ] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }} | |
| cancel-in-progress: true | |
| env: | |
| GGML_NLOOP: 3 | |
| GGML_N_THREADS: 1 | |
| LLAMA_LOG_COLORS: 1 | |
| LLAMA_LOG_PREFIX: 1 | |
| LLAMA_LOG_TIMESTAMPS: 1 | |
| jobs: | |
| ggml-ci-nvidia-cuda: | |
| runs-on: [self-hosted, Linux, NVIDIA] | |
| steps: | |
| - name: Clone | |
| id: checkout | |
| uses: actions/checkout@v6 | |
| - name: Test | |
| id: ggml-ci | |
| run: | | |
| nvidia-smi | |
| GG_BUILD_CUDA=1 bash ./ci/run.sh ~/results/llama.cpp /mnt/llama.cpp | |
| ggml-ci-nvidia-vulkan-cm: | |
| runs-on: [self-hosted, Linux, NVIDIA] | |
| steps: | |
| - name: Clone | |
| id: checkout | |
| uses: actions/checkout@v6 | |
| - name: Test | |
| id: ggml-ci | |
| run: | | |
| vulkaninfo --summary | |
| GG_BUILD_VULKAN=1 GGML_VK_DISABLE_COOPMAT2=1 bash ./ci/run.sh ~/results/llama.cpp /mnt/llama.cpp | |
| ggml-ci-nvidia-vulkan-cm2: | |
| runs-on: [self-hosted, Linux, NVIDIA, COOPMAT2] | |
| steps: | |
| - name: Clone | |
| id: checkout | |
| uses: actions/checkout@v6 | |
| - name: Test | |
| id: ggml-ci | |
| run: | | |
| vulkaninfo --summary | |
| GG_BUILD_VULKAN=1 bash ./ci/run.sh ~/results/llama.cpp /mnt/llama.cpp | |
| # TODO: provision AMX-compatible machine | |
| #ggml-ci-cpu-amx: | |
| # runs-on: [self-hosted, Linux, CPU, AMX] | |
| # steps: | |
| # - name: Clone | |
| # id: checkout | |
| # uses: actions/checkout@v6 | |
| # - name: Test | |
| # id: ggml-ci | |
| # run: | | |
| # bash ./ci/run.sh ~/results/llama.cpp /mnt/llama.cpp | |
| # TODO: provision AMD GPU machine | |
| # ggml-ci-amd-vulkan: | |
| # runs-on: [self-hosted, Linux, AMD] | |
| # steps: | |
| # - name: Clone | |
| # id: checkout | |
| # uses: actions/checkout@v6 | |
| # - name: Test | |
| # id: ggml-ci | |
| # run: | | |
| # vulkaninfo --summary | |
| # GG_BUILD_VULKAN=1 bash ./ci/run.sh ~/results/llama.cpp /mnt/llama.cpp | |
| # TODO: provision AMD GPU machine | |
| # ggml-ci-amd-rocm: | |
| # runs-on: [self-hosted, Linux, AMD] | |
| # steps: | |
| # - name: Clone | |
| # id: checkout | |
| # uses: actions/checkout@v6 | |
| # - name: Test | |
| # id: ggml-ci | |
| # run: | | |
| # amd-smi static | |
| # GG_BUILD_ROCM=1 GG_BUILD_AMDGPU_TARGETS="gfx1101" bash ./ci/run.sh ~/results/llama.cpp /mnt/llama.cpp | |
| # TODO: sandbox Mac runners | |
| # ggml-ci-mac-metal: | |
| # runs-on: [self-hosted, macOS, ARM64] | |
| # | |
| # steps: | |
| # - name: Clone | |
| # id: checkout | |
| # uses: actions/checkout@v6 | |
| # | |
| # - name: Test | |
| # id: ggml-ci | |
| # run: | | |
| # GG_BUILD_METAL=1 bash ./ci/run.sh ~/results/llama.cpp ~/mnt/llama.cpp | |
| # | |
| # ggml-ci-mac-webgpu: | |
| # runs-on: [self-hosted, macOS, ARM64] | |
| # | |
| # steps: | |
| # - name: Clone | |
| # id: checkout | |
| # uses: actions/checkout@v6 | |
| # | |
| # - name: Dawn Dependency | |
| # id: dawn-depends | |
| # run: | | |
| # DAWN_VERSION="v2.0.0" | |
| # DAWN_OWNER="reeselevine" | |
| # DAWN_REPO="dawn" | |
| # DAWN_ASSET_NAME="Dawn-5e9a4865b1635796ccc77dd30057f2b4002a1355-macos-latest-Release" | |
| # echo "Fetching release asset from https://github.com/${DAWN_OWNER}/${DAWN_REPO}/releases/download/${DAWN_VERSION}/${DAWN_ASSET_NAME}.zip" | |
| # curl -L -o artifact.zip \ | |
| # "https://github.com/${DAWN_OWNER}/${DAWN_REPO}/releases/download/${DAWN_VERSION}/${DAWN_ASSET_NAME}.zip" | |
| # mkdir dawn | |
| # unzip artifact.zip | |
| # tar -xvf ${DAWN_ASSET_NAME}.tar.gz -C dawn --strip-components=1 | |
| # | |
| # - name: Test | |
| # id: ggml-ci | |
| # run: | | |
| # GG_BUILD_WEBGPU=1 GG_BUILD_WEBGPU_DAWN_PREFIX="$GITHUB_WORKSPACE/dawn" \ | |
| # bash ./ci/run.sh ~/results/llama.cpp ~/mnt/llama.cpp | |
| # | |
| # ggml-ci-mac-vulkan: | |
| # runs-on: [self-hosted, macOS, ARM64] | |
| # | |
| # steps: | |
| # - name: Clone | |
| # id: checkout | |
| # uses: actions/checkout@v6 | |
| # | |
| # - name: Test | |
| # id: ggml-ci | |
| # run: | | |
| # vulkaninfo --summary | |
| # GG_BUILD_VULKAN=1 bash ./ci/run.sh ~/results/llama.cpp ~/mnt/llama.cpp | |
| ggml-ci-linux-intel-vulkan: | |
| runs-on: [self-hosted, Linux, Intel] | |
| steps: | |
| - name: Clone | |
| id: checkout | |
| uses: actions/checkout@v6 | |
| with: | |
| persist-credentials: false | |
| - name: Test | |
| id: ggml-ci | |
| run: | | |
| vulkaninfo --summary | |
| GG_BUILD_VULKAN=1 bash ./ci/run.sh ~/results/llama.cpp ~/mnt/llama.cpp | |
| ggml-ci-win-intel-vulkan: | |
| runs-on: [self-hosted, Windows, X64, Intel] | |
| steps: | |
| - name: Clone | |
| id: checkout | |
| uses: actions/checkout@v6 | |
| - name: Test | |
| id: ggml-ci | |
| shell: C:\msys64\usr\bin\bash.exe --noprofile --norc -eo pipefail "{0}" | |
| env: | |
| MSYSTEM: UCRT64 | |
| CHERE_INVOKING: 1 | |
| PATH: C:\msys64\ucrt64\bin;C:\msys64\usr\bin;C:\Windows\System32;${{ env.PATH }} | |
| run: | | |
| vulkaninfo --summary | |
| # Skip python related tests with GG_BUILD_LOW_PERF=1 since Windows MSYS2 UCRT64 currently fails to create | |
| # a valid python environment for testing | |
| LLAMA_FATAL_WARNINGS=OFF GG_BUILD_NINJA=1 GG_BUILD_VULKAN=1 GG_BUILD_LOW_PERF=1 ./ci/run.sh ./results/llama.cpp ./mnt/llama.cpp | |
| ggml-ci-intel-openvino-gpu-low-perf: | |
| runs-on: [self-hosted, Linux, Intel, OpenVINO] | |
| env: | |
| # Sync versions in build.yml, build-self-hosted.yml, release.yml, build-cache.yml, .devops/openvino.Dockerfile | |
| OPENVINO_VERSION_MAJOR: "2026.0" | |
| OPENVINO_VERSION_FULL: "2026.0.0.20965.c6d6a13a886" | |
| steps: | |
| - name: Clone | |
| id: checkout | |
| uses: actions/checkout@v6 | |
| - name: Setup OpenVINO Toolkit | |
| uses: ./.github/actions/linux-setup-openvino | |
| with: | |
| path: ./openvino_toolkit | |
| version_major: ${{ env.OPENVINO_VERSION_MAJOR }} | |
| version_full: ${{ env.OPENVINO_VERSION_FULL }} | |
| - name: Install OpenVINO dependencies | |
| run: | | |
| cd ./openvino_toolkit | |
| chmod +x ./install_dependencies/install_openvino_dependencies.sh | |
| echo "Y" | sudo -E ./install_dependencies/install_openvino_dependencies.sh | |
| - name: Test | |
| id: ggml-ci | |
| run: | | |
| source ./openvino_toolkit/setupvars.sh | |
| GG_BUILD_OPENVINO=1 GGML_OPENVINO_DEVICE=GPU GG_BUILD_LOW_PERF=1 bash ./ci/run.sh ./tmp/results ./tmp/mnt |