Skip to content

Commit af6528e

Browse files
authored
ci: remove redundant or duplicate jobs (ggml-org#23927)
* remove redundant apple job openvino gpu and cpu test can share the same build and machine Update build-rpc.yml Update build-openvino.yml cpu any doesnt make sense as we have an arm job already, so do high perf on both x86 and arm remove duplicate x86 vulkan combine backend sampling Update server.yml run server on arm as windows is x86 * emdawn on one machine only * fix openvino, remove cpu tag as we dont have many x64 machines with that tag
1 parent 6f165c1 commit af6528e

7 files changed

Lines changed: 49 additions & 136 deletions

File tree

.github/workflows/build-apple.yml

Lines changed: 0 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -109,40 +109,6 @@ jobs:
109109
cd build
110110
ctest -L main --verbose --timeout 900
111111
112-
macos-latest-ios:
113-
runs-on: macos-latest
114-
115-
steps:
116-
- name: Clone
117-
id: checkout
118-
uses: actions/checkout@v6
119-
120-
# TODO: this likely does not do anything - if yes, remove it
121-
- name: ccache
122-
uses: ggml-org/ccache-action@v1.2.21
123-
with:
124-
key: apple-ios
125-
evict-old-files: 1d
126-
save: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
127-
128-
- name: Build
129-
id: cmake_build
130-
run: |
131-
sysctl -a
132-
cmake -B build -G Xcode \
133-
-DGGML_METAL_USE_BF16=ON \
134-
-DGGML_METAL_EMBED_LIBRARY=ON \
135-
-DLLAMA_BUILD_APP=OFF \
136-
-DLLAMA_BUILD_COMMON=OFF \
137-
-DLLAMA_BUILD_EXAMPLES=OFF \
138-
-DLLAMA_BUILD_TOOLS=OFF \
139-
-DLLAMA_BUILD_TESTS=OFF \
140-
-DLLAMA_BUILD_SERVER=OFF \
141-
-DCMAKE_SYSTEM_NAME=iOS \
142-
-DCMAKE_OSX_DEPLOYMENT_TARGET=14.0 \
143-
-DCMAKE_XCODE_ATTRIBUTE_DEVELOPMENT_TEAM=ggml
144-
cmake --build build --config Release -j $(sysctl -n hw.logicalcpu) -- CODE_SIGNING_ALLOWED=NO
145-
146112
macos-latest-ios-xcode:
147113
runs-on: macos-latest
148114

.github/workflows/build-openvino.yml

Lines changed: 12 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -35,24 +35,12 @@ env:
3535

3636
jobs:
3737
ubuntu-24-openvino:
38-
name: ubuntu-24-openvino-${{ matrix.openvino_device }}
38+
runs-on: [self-hosted, Linux, Intel, OpenVINO]
3939

4040
concurrency:
41-
group: openvino-${{ matrix.variant }}-${{ github.head_ref || github.ref }}
41+
group: openvino-gpu-${{ github.head_ref || github.ref }}
4242
cancel-in-progress: false
4343

44-
strategy:
45-
matrix:
46-
include:
47-
- variant: cpu
48-
runner: '"ubuntu-24.04"'
49-
openvino_device: "CPU"
50-
- variant: gpu
51-
runner: '["self-hosted","Linux","Intel","OpenVINO"]'
52-
openvino_device: "GPU"
53-
54-
runs-on: ${{ fromJSON(matrix.runner) }}
55-
5644
env:
5745
# Sync versions in build-openvino.yml, build-self-hosted.yml, release.yml, build-cache.yml, .devops/openvino.Dockerfile
5846
OPENVINO_VERSION_MAJOR: "2026.0"
@@ -63,31 +51,14 @@ jobs:
6351
id: checkout
6452
uses: actions/checkout@v6
6553

66-
- name: ccache
67-
if: runner.environment == 'github-hosted'
68-
uses: ggml-org/ccache-action@v1.2.21
69-
with:
70-
key: openvino-ubuntu-24.04-${{ matrix.variant }}-no-preset-v1
71-
evict-old-files: 1d
72-
save: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
73-
7454
- name: Dependencies
7555
id: depends
7656
run: |
7757
sudo apt-get update
7858
sudo apt-get install -y build-essential libssl-dev libtbb12 cmake ninja-build python3-pip
7959
sudo apt-get install -y ocl-icd-opencl-dev opencl-headers opencl-clhpp-headers intel-opencl-icd
8060
81-
- name: Use OpenVINO Toolkit Cache
82-
if: runner.environment == 'github-hosted'
83-
uses: actions/cache@v5
84-
id: cache-openvino
85-
with:
86-
path: ./openvino_toolkit
87-
key: cache-gha-openvino-toolkit-v${{ env.OPENVINO_VERSION_FULL }}-${{ runner.os }}
88-
8961
- name: Setup OpenVINO Toolkit
90-
if: steps.cache-openvino.outputs.cache-hit != 'true'
9162
uses: ./.github/actions/linux-setup-openvino
9263
with:
9364
path: ./openvino_toolkit
@@ -109,12 +80,17 @@ jobs:
10980
-DGGML_OPENVINO=ON
11081
time cmake --build build/ReleaseOV --config Release -j $(nproc)
11182
112-
- name: Test
113-
id: cmake_test
83+
- name: Test (CPU)
84+
id: cmake_test_cpu
85+
# TODO: fix and re-enable the `test-llama-archs` test below
86+
run: |
87+
cd ${{ github.workspace }}
88+
ctest --test-dir build/ReleaseOV -L main -E "test-llama-archs" --verbose --timeout 2000
89+
90+
- name: Test (GPU)
91+
id: cmake_test_gpu
11492
# TODO: fix and re-enable the `test-llama-archs` test below
11593
run: |
11694
cd ${{ github.workspace }}
117-
if [ "${{ matrix.openvino_device }}" = "GPU" ]; then
118-
export GGML_OPENVINO_DEVICE=GPU
119-
fi
95+
export GGML_OPENVINO_DEVICE=GPU
12096
ctest --test-dir build/ReleaseOV -L main -E "test-llama-archs" --verbose --timeout 2000

.github/workflows/build-rpc.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,8 @@ env:
3434
LLAMA_ARG_LOG_TIMESTAMPS: 1
3535

3636
jobs:
37-
ubuntu-latest-rpc:
38-
runs-on: ubuntu-latest
37+
ubuntu-24-rpc:
38+
runs-on: ${{ 'ubuntu-24.04-arm' || 'ubuntu-24.04' }}
3939

4040
continue-on-error: true
4141

.github/workflows/build-self-hosted.yml

Lines changed: 7 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ jobs:
210210
GG_BUILD_WEBGPU=1 GG_BUILD_WEBGPU_DAWN_PREFIX="$GITHUB_WORKSPACE/dawn" \
211211
bash ./ci/run.sh ~/results/llama.cpp ~/mnt/llama.cpp
212212
213-
gpu-vulkan:
213+
gpu-vulkan-apple:
214214
runs-on: [self-hosted, macOS, ARM64]
215215

216216
steps:
@@ -261,7 +261,7 @@ jobs:
261261
# a valid python environment for testing
262262
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
263263
264-
cpu-openvino-low-perf:
264+
gpu-openvino-low-perf:
265265
runs-on: [self-hosted, Linux, Intel, OpenVINO]
266266

267267
concurrency:
@@ -297,8 +297,8 @@ jobs:
297297
source ./openvino_toolkit/setupvars.sh
298298
GG_BUILD_OPENVINO=1 GGML_OPENVINO_DEVICE=GPU GG_BUILD_LOW_PERF=1 bash ./ci/run.sh ~/results/llama.cpp ~/mnt/llama.cpp
299299
300-
cpu-any-low-perf:
301-
runs-on: [self-hosted, CPU]
300+
cpu-x64-high-perf:
301+
runs-on: [self-hosted, X64]
302302

303303
steps:
304304
- name: Clone
@@ -308,22 +308,9 @@ jobs:
308308
- name: Test
309309
id: ggml-ci
310310
run: |
311-
LLAMA_ARG_THREADS=$(nproc) GG_BUILD_LOW_PERF=1 bash ./ci/run.sh ~/results/llama.cpp ~/mnt/llama.cpp
311+
LLAMA_ARG_THREADS=$(nproc) GG_BUILD_HIGH_PERF=1 GG_BUILD_EXTRA_TESTS_0=1 bash ./ci/run.sh ~/results/llama.cpp ~/mnt/llama.cpp
312312
313-
cpu-any-high-perf:
314-
runs-on: [self-hosted, CPU]
315-
316-
steps:
317-
- name: Clone
318-
id: checkout
319-
uses: actions/checkout@v6
320-
321-
- name: Test
322-
id: ggml-ci
323-
run: |
324-
LLAMA_ARG_THREADS=$(nproc) GG_BUILD_HIGH_PERF=1 GG_BUILD_NO_SVE=1 GG_BUILD_NO_BF16=1 GG_BUILD_EXTRA_TESTS_0=1 bash ./ci/run.sh ~/results/llama.cpp ~/mnt/llama.cpp
325-
326-
cpu-arm64-graviton4:
313+
cpu-arm64-high-perf-graviton4:
327314
runs-on: ah-ubuntu_22_04-c8g_8x
328315

329316
steps:
@@ -360,7 +347,7 @@ jobs:
360347
- name: Test
361348
id: ggml-ci
362349
run: |
363-
LLAMA_ARG_THREADS=$(nproc) GG_BUILD_NO_BF16=1 GG_BUILD_EXTRA_TESTS_0=1 bash ./ci/run.sh ~/results/llama.cpp ~/mnt/llama.cpp
350+
LLAMA_ARG_THREADS=$(nproc) GG_BUILD_HIGH_PERF=1 GG_BUILD_NO_BF16=1 GG_BUILD_EXTRA_TESTS_0=1 bash ./ci/run.sh ~/results/llama.cpp ~/mnt/llama.cpp
364351
365352
cpu-arm64-graviton4-kleidiai:
366353
runs-on: ah-ubuntu_22_04-c8g_8x

.github/workflows/build-vulkan.yml

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -36,16 +36,8 @@ env:
3636
LLAMA_ARG_LOG_TIMESTAMPS: 1
3737

3838
jobs:
39-
ubuntu:
40-
strategy:
41-
matrix:
42-
include:
43-
- build: 'x64'
44-
os: ubuntu-24.04
45-
- build: 'arm64'
46-
os: ubuntu-24.04-arm
47-
48-
runs-on: ${{ matrix.os }}
39+
ubuntu-arm64:
40+
runs-on: ubuntu-24.04-arm
4941

5042
steps:
5143
- name: Clone
@@ -63,7 +55,7 @@ jobs:
6355
- name: ccache
6456
uses: ggml-org/ccache-action@v1.2.21
6557
with:
66-
key: vulkan-${{ matrix.os }}-new
58+
key: vulkan-ubuntu-24.04-arm-new
6759
variant: ccache
6860
evict-old-files: 1d
6961
save: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}

.github/workflows/build-webgpu.yml

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -130,15 +130,7 @@ jobs:
130130
ctest -L main -E test-backend-ops --verbose --timeout 900
131131
132132
ubuntu-wasm:
133-
strategy:
134-
matrix:
135-
include:
136-
- build: 'x64'
137-
os: ubuntu-24.04
138-
- build: 'arm64'
139-
os: ubuntu-24.04-arm
140-
141-
runs-on: ${{ matrix.os }}
133+
runs-on: ubuntu-24.04-arm
142134

143135
steps:
144136
- name: Clone
@@ -148,7 +140,7 @@ jobs:
148140
- name: ccache
149141
uses: ggml-org/ccache-action@v1.2.21
150142
with:
151-
key: webgpu-${{ matrix.os }}-wasm
143+
key: webgpu-ubuntu-24.04-arm-wasm
152144
evict-old-files: 1d
153145
save: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
154146

.github/workflows/server.yml

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -55,21 +55,7 @@ concurrency:
5555

5656
jobs:
5757
ubuntu:
58-
runs-on: ubuntu-24.04
59-
60-
name: ubuntu (${{ matrix.wf_name }})
61-
strategy:
62-
matrix:
63-
build_type: [Release]
64-
wf_name: ["default"]
65-
include:
66-
- build_type: Release
67-
extra_args: ""
68-
wf_name: "default"
69-
- build_type: Release
70-
extra_args: "LLAMA_ARG_BACKEND_SAMPLING=1"
71-
wf_name: "backend-sampling"
72-
fail-fast: false
58+
runs-on: ubuntu-24.04-arm
7359

7460
steps:
7561
- name: Dependencies
@@ -96,7 +82,7 @@ jobs:
9682
- name: ccache
9783
uses: ggml-org/ccache-action@v1.2.21
9884
with:
99-
key: server-ubuntu-24.04-x64
85+
key: server-ubuntu-24.04-arm
10086
evict-old-files: 1d
10187
save: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
10288

@@ -105,7 +91,7 @@ jobs:
10591
run: |
10692
cmake -B build \
10793
-DGGML_SCHED_NO_REALLOC=ON
108-
cmake --build build --config ${{ matrix.build_type }} -j $(nproc) --target llama-server
94+
cmake --build build --config Release -j $(nproc) --target llama-server
10995
11096
- name: Python setup
11197
id: setup_python
@@ -116,18 +102,32 @@ jobs:
116102

117103
- name: Tests
118104
id: server_integration_tests
119-
if: ${{ (!matrix.disabled_on_pr || !github.event.pull_request) }}
105+
if: ${{ !github.event.pull_request }}
120106
run: |
121107
cd tools/server/tests
122-
export ${{ matrix.extra_args }}
123108
pytest -v -x -m "not slow"
124109
125110
- name: Slow tests
126111
id: server_integration_tests_slow
127-
if: ${{ (github.event.schedule || github.event.inputs.slow_tests == 'true') && matrix.build_type == 'Release' }}
112+
if: ${{ github.event.schedule || github.event.inputs.slow_tests == 'true' }}
128113
run: |
129114
cd tools/server/tests
130-
export ${{ matrix.extra_args }}
115+
SLOW_TESTS=1 pytest -v -x
116+
117+
- name: Tests (Backend sampling)
118+
id: server_integration_tests_backend_sampling
119+
if: ${{ !github.event.pull_request }}
120+
run: |
121+
cd tools/server/tests
122+
export LLAMA_ARG_BACKEND_SAMPLING=1
123+
pytest -v -x -m "not slow"
124+
125+
- name: Slow tests (Backend sampling)
126+
id: server_integration_tests_slow_backend_sampling
127+
if: ${{ github.event.schedule || github.event.inputs.slow_tests == 'true' }}
128+
run: |
129+
cd tools/server/tests
130+
export LLAMA_ARG_BACKEND_SAMPLING=1
131131
SLOW_TESTS=1 pytest -v -x
132132
133133
windows:
@@ -169,15 +169,15 @@ jobs:
169169

170170
- name: Tests
171171
id: server_integration_tests
172-
if: ${{ !matrix.disabled_on_pr || !github.event.pull_request }}
172+
if: ${{ !github.event.pull_request }}
173173
run: |
174174
cd tools/server/tests
175175
$env:PYTHONIOENCODING = ":replace"
176176
pytest -v -x -m "not slow"
177177
178178
- name: Slow tests
179179
id: server_integration_tests_slow
180-
if: ${{ (github.event.schedule || github.event.inputs.slow_tests == 'true') && matrix.build_type == 'Release' }}
180+
if: ${{ github.event.schedule || github.event.inputs.slow_tests == 'true' }}
181181
run: |
182182
cd tools/server/tests
183183
$env:SLOW_TESTS = "1"

0 commit comments

Comments
 (0)