Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
134 commits
Select commit Hold shift + click to select a range
dc71236
ci : update macos release to use macos-26 runner (#23878)
ggerganov May 29, 2026
b5f5228
server: remove obsolete scripts (#23870)
ngxson May 29, 2026
764f1e6
graph : ensure DS32 kq_mask_lid is F32 (#23864)
CISC May 29, 2026
2084434
vocab : support tokenizer for LFM2.5-8B-A1B (#23826)
tdakhran May 29, 2026
22d66b5
ui: handle audio/vnd.wave as audio WAV file (#23754)
ValdikSS May 29, 2026
5a46b46
app: add llama update self updater (#23865)
ServeurpersoCom May 29, 2026
689a9a4
server-bench : add speed-bench for speculative decoding benchmarking …
ruixiang63 May 29, 2026
b22da25
ggml-webgpu: add q4_0/q8_0 SET_ROWS (#23760)
reeselevine May 29, 2026
151f3a9
ggml-webgpu: Check earlier for WebGPU required features (#23879)
reeselevine May 29, 2026
0821c5f
server: in SSE mode, send HTTP headers when slot starts (#23884)
ngxson May 29, 2026
1738129
llama : do not skip iGPU when only RPC devices are present (#23868)
rgerganov May 30, 2026
d4204b0
ci : clear cache instead of "no timestamp" keys + fix macos (#23895)
ggerganov May 30, 2026
3375285
ci : fix s390x release job (#23898)
ggerganov May 30, 2026
6e093b8
vulkan: add Flash Attention support for BFloat16 KV cache (#23420)
0cc4m May 30, 2026
d48a56e
ggml : add some lsx support (#23798)
MQ-mengqing May 30, 2026
4c4e91b
ci : update ios-xcode release job to macos-26 (#23906)
ggerganov May 30, 2026
e674b12
test: (test-llama-archs) log the config name first (#23885)
ngxson May 30, 2026
2d9b7c8
metal : restore im2col implementation for large kernels (#23901)
ggerganov May 30, 2026
8b0e0db
TP: fix granularity for Qwen 3.5/3.6 + 3 GPUs (#23843)
JohannesGaessler May 30, 2026
d38d50e
ui: exclude generated build dirs from prettier and eslint so lint err…
ServeurpersoCom May 30, 2026
d6588da
opencl: support bf16 by converting to f16 (#23839)
lhez May 30, 2026
aa46bda
Support `-fa auto` in llama-bench (#23714)
gaugarg-nv May 30, 2026
d749821
webui: add custom CSS injection via config (#23904)
ServeurpersoCom May 30, 2026
22cadc1
llama: only use one iGPU device by default (#23897)
0cc4m May 31, 2026
e6123e2
docs : update ZenDNN docs for Q8 support (#23791)
truecoder34 May 31, 2026
3292da0
ui: fix ETag truncation with MSVC compiler (#23917)
EZForever May 31, 2026
d4c8e2c
vocab : add tokenizer support for jina-embeddings-v2-base-zh (#18756)
o7si May 31, 2026
399739d
ci : limit trigger paths for the CPU workflow (#23938)
ggerganov May 31, 2026
6f165c1
server : handle If-None-Match weak ETags (#23916)
EZForever May 31, 2026
af6528e
ci: remove redundant or duplicate jobs (#23927)
netrunnereve Jun 1, 2026
44e211c
sycl : Optimize Q3_K mul_mat by reorder (#23725)
arthw Jun 1, 2026
4162522
[SYCL] Add more types in GET_ROWS OP (#23710)
arthw Jun 1, 2026
a511424
[SYCL] Support Q4_1, Q5_0, Q5_1 in Flash-attention (#23812)
arthw Jun 1, 2026
e22b0de
ci : add missing Linux label to cpu-x64-high-perf runner (#23958)
ggerganov Jun 1, 2026
5254a79
common : support manually triggering the reasoning budget end sequenc…
aldehir Jun 1, 2026
f8c0a19
vulkan: Removed unused functions (#23175)
winstonma Jun 1, 2026
1962000
vulkan: Block-load Q3_K/Q6_K block data and subtract on 32b ints (#23…
TheBlueMatt Jun 1, 2026
48b88c3
model: Add EXAONE 4.5 implementations (#21733)
nuxlear Jun 1, 2026
02a5701
security : disable private disclosures (#23963)
ggerganov Jun 1, 2026
8e6fff8
TP: quantized KV cache support (#23792)
JohannesGaessler Jun 1, 2026
5aba536
vocab: add normalizer.lowercase support to WPM (#23899)
o7si Jun 1, 2026
bef69f1
vulkan: reduce host memory lock contention (#23376)
winstonma Jun 1, 2026
55ac090
vulkan: don't hold the device mutex while compiling pipelines (#23641)
jeffbolznv Jun 1, 2026
95b8b8e
metal: template GLU kernels to support f16/f32 (#23882)
shrivasshankar Jun 1, 2026
de6f727
llama: limit max outputs of `llama_context` (#23861)
am17an Jun 1, 2026
335abed
vendor : update cpp-httplib to 0.46.1 (#23980)
angt Jun 1, 2026
27d9ed8
opencl: add basic support for q5_0 and q5_1 (#23548)
shaofeiqi Jun 1, 2026
5aa3a64
nix : add nix-nodejs facilities to build Web UI (#23846)
choener Jun 1, 2026
5dcb711
speculative : fix n_outputs_max and remove draft-simple auto-enable (…
ggerganov Jun 1, 2026
b8275a8
revert to using global_invocation_id for cpy shader (#23955)
yomaytk Jun 1, 2026
210a657
opencl: fix compiler warnings for non-adreno path (#23922)
lhez Jun 2, 2026
1fd5f48
clean up unused variables warnings (#23975)
anavp-nvidia Jun 2, 2026
354ebac
server: real-time reasoning interruption via control endpoint (#23971)
ServeurpersoCom Jun 2, 2026
d178a11
hexagon: add gelu_quick (#24007)
tboinovski1 Jun 2, 2026
8f7f3bf
hexagon: MUL_MAT, MUL_MAT_ID, FLASH_ATTN and GDN cleanup and optimiza…
max-krasnyansky Jun 2, 2026
4f3a4be
llama : deprecate `llama_set_warmup` (#24009)
ggerganov Jun 2, 2026
f7a0777
convert : support Step3.7-Flash (#23845)
forforever73 Jun 2, 2026
2365315
kv-cache : SWA checkpoints store only non-masked cells (#23981)
ggerganov Jun 2, 2026
f8e67fc
ui: Add Thinking mode toggle with reasoning effort levels + improveme…
allozaur Jun 2, 2026
69cea5b
ui: simplify network error handling (#23431)
socram8888 Jun 2, 2026
d5ab083
docs : update HOWTO-add-model.md (#23883)
Xarbirus Jun 2, 2026
a468b89
ci : reduce self-hosted server workflow jobs (#24012)
ggerganov Jun 2, 2026
60130d1
server: add SSE ping interval (#24013)
ngxson Jun 2, 2026
0b71540
common : fix state save in common_prompt_batch_decode (#23468)
danbev Jun 2, 2026
2187e00
StepFun 3.5 MTP (#23274)
pwilkin Jun 2, 2026
bfb4308
model : support granite multilingual embeddings R2 (ibm-granite/grani…
hansolosan Jun 2, 2026
4fb16ec
model: add Mellum architecture (#23966)
Xarbirus Jun 2, 2026
5c394fd
hexagon: profiler output fix and script updates (#24042)
max-krasnyansky Jun 2, 2026
63e66fd
opencl: use flat variants of q4_K and q6_K gemv for very large M (#24…
lhez Jun 2, 2026
e366626
arg : removed unecesary mmproj download when users pass --no-mmproj (…
ryan-mangeno Jun 3, 2026
4da6370
ci : disable ccache for msvc windows release jobs (#23911)
ggerganov Jun 3, 2026
d545a2a
update BoringSSL to 0.20260526.0 (#23794)
cabelo Jun 3, 2026
06938ac
tests : add support for qwen3 SSM archs (#24031)
ggerganov Jun 3, 2026
f8f0a47
cuda: reserve space for quantize kv-cache at startup (#23907)
am17an Jun 3, 2026
3571fa5
ggml-cpu: use runtime SVE width in FWHT (#24059)
chaxu01 Jun 3, 2026
9e58d4d
Avoid PDL race conditions by disabling __restrict__ when PDL is used …
aendk Jun 3, 2026
ee4cf70
ui: Mermaid Diagrams in chat + interactive preview (#24032)
allozaur Jun 3, 2026
a731805
mtmd, model: allow skip build_vit() (#24077)
ngxson Jun 3, 2026
c8d6a00
mtmd: enable non-causal vision for gemma 4 unified (#24082)
ngxson Jun 3, 2026
166fe29
qwen35: use post-norm hidden state for MTP (#24025)
am17an Jun 3, 2026
94a220c
mtmd: fix Gemma 4 unified FPE (#24088)
abetlen Jun 3, 2026
f478f1b
sycl : Improve SYCL doc (#23025)
malsbat Jun 4, 2026
3c7450c
ggml-cpu: extend RVV quantization vec dot to higher VLENs (#22754)
rehan-10xengineer Jun 4, 2026
e8c5489
ggml-webgpu: FlashAttention refactor + standardize quantization suppo…
reeselevine Jun 4, 2026
3d19986
metal : reduce rset heartbeat from 500ms -> 5ms (#24074)
ggerganov Jun 4, 2026
65ef50a
tests : refactor test-save-load-state to accept token input (#24073)
ggerganov Jun 4, 2026
6ddc943
readme : add status badges (#24104)
ggerganov Jun 4, 2026
e3ba22d
fix(mtmd): handle Gemma 4 audio projector embedding size (#24091)
abetlen Jun 4, 2026
7ac5a42
cmake: skip cvector-generator and export-lora when CPU backend is dis…
arichiardi Jun 4, 2026
0066404
server : add header to tools/server/server-http.h (#24089)
abawany Jun 4, 2026
4d74287
build : use umbrella Headers directory for XCFramework module map (#2…
gmarzjr Jun 4, 2026
4586479
webui: fix tool selector toggle/counter, key tools by stable identity…
ServeurpersoCom Jun 4, 2026
a121232
agents: refactor, include more guidelines (#24111)
ngxson Jun 4, 2026
6f3a9f3
server: avoid unnecessary checkpoint restore when new tokens are pres…
Abioy Jun 4, 2026
4c51309
ggml: vectorize ggml_vec_dot_q4_1_q8_1 with WASM SIMD128 (#22209)
sirohikartik Jun 4, 2026
e802356
convert: Fix Gemma 4 Unified conversion (#24118)
pcuenca Jun 4, 2026
0dbfa66
return filter to save memory (#24125)
forforever73 Jun 4, 2026
5269770
ui: added single line reasoning preview (#23601)
gugugiyu Jun 4, 2026
21444c8
ui: Fixed packages (#24119)
allozaur Jun 4, 2026
e7bcf1c
Move duplicated imatrix code into single common imatrix-loader.cpp (#…
bartowski1182 Jun 4, 2026
42b2d60
webui: [a11y] fix keyboard navigation issues in chat interface and si…
vignesh191 Jun 4, 2026
260862b
arg: fix double mtp downloads (#24128)
ngxson Jun 4, 2026
7c158fb
server : disable on-device spec checkpoints (#24108)
ggerganov Jun 4, 2026
7fe2ae4
sycl : port multi-column MMVQ from CUDA backend (#21845)
masonmilby Jun 5, 2026
46fa662
ci : build-msys job slimming [no ci] (#24157)
danbev Jun 5, 2026
2154a0f
CUDA: enroll mul_mat_vec_q_moe into pdl (#24087)
ORippler Jun 5, 2026
3ecfb15
kleidiai : dynamic chunck-based scheduling for hybrid execution (#23819)
chaxu01 Jun 5, 2026
7acb4e8
hparams : refactor `hparams.n_layer` (#24060)
ggerganov Jun 5, 2026
59917d3
minor : fix lint issues (#24165)
ggerganov Jun 5, 2026
ad1b88c
docs: Update quantization readme (#24133)
pcuenca Jun 5, 2026
cc7bef3
ui: add ignore-scripts=true to npmrc (#24149)
ngxson Jun 5, 2026
9c955c4
Fix link to available UI settings (#24169)
wariuccio Jun 5, 2026
2016bf2
ui: run npm install when package-lock.json is newer than node_modules…
ServeurpersoCom Jun 5, 2026
96fbe00
model : fix llama_model::n_gpu_layers() (#24188)
ggerganov Jun 5, 2026
86591c7
cli: fix model params not propagated (#23893)
therealkenc Jun 5, 2026
6effcec
TP: round up granularity to 128 (#24180)
JohannesGaessler Jun 5, 2026
64086f2
model, mtmd: Granite4 Vision (#23545)
gabe-l-hart Jun 5, 2026
c4a278d
model: fix build failed (#24193)
ngxson Jun 5, 2026
e82beaa
vulkan: add fwht support for Intel with shmem reduction (#23964)
0cc4m Jun 5, 2026
da87e9b
common/chat : unify and fix LFM2/LFM2.5 tool parser (#24178)
tdakhran Jun 5, 2026
308f61c
opencl: improve get_rows, cpy, concat and q6_k flat gemv (#24160)
lhez Jun 5, 2026
603300b
context : fix off-by-one comparisons to n_gpu_layers (#24208)
CISC Jun 6, 2026
5343f45
model : rename local n_layer_all variable (#24209)
CISC Jun 6, 2026
5a69c97
vulkan: check coopmat2 features before reporting support (#24186)
0cc4m Jun 6, 2026
f5c6ae1
mtmd, server: add "placeholder bitmap" for counting tokens , add */in…
ngxson Jun 6, 2026
588f0dc
completion : fix format specifier in LOG_INF (#24213)
angt Jun 6, 2026
6b80c74
completion : remove useless statics (#24226)
angt Jun 6, 2026
31e8249
mtmd: support "frame merge" for qwen-vl-based models (#21858)
ngxson Jun 6, 2026
98d5e8b
common/chat : fix LFM2/LFM2.5 reasoning round-trip and <think> leak (…
tdakhran Jun 6, 2026
3f7c79d
docker : bump cuda13 to 13.3.0 (#24228)
CISC Jun 7, 2026
f71af35
convert : fix Gemma4 with no audio encoder (#24242)
CISC Jun 7, 2026
465b1f0
arg: Skip mmproj download when user supplied mmproj (#24239)
konradmb Jun 7, 2026
8a091c4
spec : fix vocab compatibility check (#24256)
CISC Jun 7, 2026
04eb4c4
llama : add Gemma4 MTP (#23398)
am17an Jun 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
29 changes: 28 additions & 1 deletion .devops/nix/package.nix
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
glibc,
config,
stdenv,
stdenvNoCC,
runCommand,
cmake,
ninja,
Expand All @@ -19,6 +20,8 @@
openssl,
shaderc,
spirv-headers,
nodejs,
importNpmLock,
useBlas ?
builtins.all (x: !x) [
useCuda
Expand Down Expand Up @@ -130,7 +133,31 @@ effectiveStdenv.mkDerivation (finalAttrs: {
src = lib.cleanSource ../../.;
};

postPatch = ''
# Builds the webui locally, taking care not to require updating any sha256 hash.
webui = stdenvNoCC.mkDerivation {
pname = "webui";
version = llamaVersion;
src = lib.cleanSource ../../tools/ui;

nativeBuildInputs = [
nodejs
importNpmLock.linkNodeModulesHook
];

# no sha256 required when using buildNodeModules
npmDeps = importNpmLock.buildNodeModules {
npmRoot = ../../tools/ui;
inherit nodejs;
};

installPhase = ''
LLAMA_UI_OUT_DIR=$out npm run build --offline
'';
};

postPatch = lib.optionalString useWebUi ''
cp -r ${finalAttrs.webui} tools/ui/dist
chmod -R u+w tools/ui/dist
'';

# With PR#6015 https://github.com/ggml-org/llama.cpp/pull/6015,
Expand Down
22 changes: 22 additions & 0 deletions .github/actions/ccache-clear/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: "ccache-clear"
description: "Delete all GitHub Actions caches matching a key prefix"
inputs:
key:
description: "Cache key prefix to match and delete"
required: true

runs:
using: "composite"
steps:
- name: Clear caches
shell: bash
run: |
CACHES=$(gh cache list --key "ccache-${{ inputs.key }}" --json id,key --jq '.[] | "\(.id) \(.key)"' 2>/dev/null)
if [ -z "$CACHES" ]; then
echo "No caches found with key prefix: ${{ inputs.key }}"
exit 0
fi
while read -r id key; do
echo "Deleting cache: $id ($key)"
gh cache delete "$id"
done <<< "$CACHES"
34 changes: 0 additions & 34 deletions .github/workflows/build-apple.yml
Original file line number Diff line number Diff line change
Expand Up @@ -109,40 +109,6 @@ jobs:
cd build
ctest -L main --verbose --timeout 900

macos-latest-ios:
runs-on: macos-latest

steps:
- name: Clone
id: checkout
uses: actions/checkout@v6

# TODO: this likely does not do anything - if yes, remove it
- name: ccache
uses: ggml-org/ccache-action@v1.2.21
with:
key: apple-ios
evict-old-files: 1d
save: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}

- name: Build
id: cmake_build
run: |
sysctl -a
cmake -B build -G Xcode \
-DGGML_METAL_USE_BF16=ON \
-DGGML_METAL_EMBED_LIBRARY=ON \
-DLLAMA_BUILD_APP=OFF \
-DLLAMA_BUILD_COMMON=OFF \
-DLLAMA_BUILD_EXAMPLES=OFF \
-DLLAMA_BUILD_TOOLS=OFF \
-DLLAMA_BUILD_TESTS=OFF \
-DLLAMA_BUILD_SERVER=OFF \
-DCMAKE_SYSTEM_NAME=iOS \
-DCMAKE_OSX_DEPLOYMENT_TARGET=14.0 \
-DCMAKE_XCODE_ATTRIBUTE_DEVELOPMENT_TEAM=ggml
cmake --build build --config Release -j $(sysctl -n hw.logicalcpu) -- CODE_SIGNING_ALLOWED=NO

macos-latest-ios-xcode:
runs-on: macos-latest

Expand Down
18 changes: 1 addition & 17 deletions .github/workflows/build-cpu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,6 @@ on:
'**/*.hpp',
'**/*.c',
'**/*.cpp',
'**/*.cu',
'**/*.cuh',
'**/*.swift',
'**/*.m',
'**/*.metal',
'**/*.comp',
'**/*.glsl',
'**/*.wgsl'
]

pull_request:
Expand All @@ -34,15 +26,7 @@ on:
'**/*.h',
'**/*.hpp',
'**/*.c',
'**/*.cpp',
'**/*.cu',
'**/*.cuh',
'**/*.swift',
'**/*.m',
'**/*.metal',
'**/*.comp',
'**/*.glsl',
'**/*.wgsl'
'**/*.cpp'
]

concurrency:
Expand Down
20 changes: 18 additions & 2 deletions .github/workflows/build-cuda-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ concurrency:
queue: max

env:
GH_TOKEN: ${{ github.token }}
GGML_NLOOP: 3
GGML_N_THREADS: 1
LLAMA_ARG_LOG_COLORS: 1
Expand All @@ -23,6 +24,9 @@ jobs:
cuda:
runs-on: windows-2022

permissions:
actions: write

strategy:
matrix:
cuda: ['12.4', '13.3']
Expand All @@ -36,7 +40,6 @@ jobs:
uses: ggml-org/ccache-action@v1.2.21
with:
key: release-windows-2022-x64-cuda-${{ matrix.cuda }}
append-timestamp: false # note: use this only with non-concurrent jobs!

- name: Install Cuda Toolkit
uses: ./.github/actions/windows-setup-cuda
Expand Down Expand Up @@ -67,9 +70,17 @@ jobs:
cmake --build build --config Release -j %NINJA_JOBS% -t ggml
cmake --build build --config Release

- name: ccache-clear
uses: ./.github/actions/ccache-clear
with:
key: release-windows-2022-x64-cuda-${{ matrix.cuda }}

hip:
runs-on: windows-2022

permissions:
actions: write

env:
# Make sure this is in sync with build-cache.yml
HIPSDK_INSTALLER_VERSION: "26.Q1"
Expand Down Expand Up @@ -125,7 +136,6 @@ jobs:
# to populate the ccache for the release with manual runs of this workflow
#key: release-windows-2022-x64-hip-${{ env.HIPSDK_INSTALLER_VERSION }}-${{ matrix.name }}
key: cuda-windows-2022-x64-hip-${{ env.HIPSDK_INSTALLER_VERSION }}-${{ matrix.name }}
append-timestamp: false # note: use this only with non-concurrent jobs!

- name: Build
id: cmake_build
Expand All @@ -144,3 +154,9 @@ jobs:
-DGPU_TARGETS="gfx1100" `
-DGGML_RPC=ON
cmake --build build -j ${env:NUMBER_OF_PROCESSORS}

- name: ccache-clear
uses: ./.github/actions/ccache-clear
with:
#key: release-windows-2022-x64-hip-${{ env.HIPSDK_INSTALLER_VERSION }}-${{ matrix.name }}
key: cuda-windows-2022-x64-hip-${{ env.HIPSDK_INSTALLER_VERSION }}-${{ matrix.name }}
8 changes: 3 additions & 5 deletions .github/workflows/build-msys.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@ jobs:
fail-fast: false
matrix:
include:
- { sys: UCRT64, env: ucrt-x86_64, build: Release }
- { sys: CLANG64, env: clang-x86_64, build: Release }
- { sys: UCRT64, env: ucrt-x86_64, compiler: gcc, build: Release }
- { sys: CLANG64, env: clang-x86_64, compiler: clang, build: Release }

steps:
- name: Clone
Expand All @@ -48,9 +48,7 @@ jobs:
update: true
msystem: ${{matrix.sys}}
install: >-
base-devel
git
mingw-w64-${{matrix.env}}-toolchain
mingw-w64-${{matrix.env}}-${{matrix.compiler}}
mingw-w64-${{matrix.env}}-cmake
mingw-w64-${{matrix.env}}-openblas

Expand Down
48 changes: 12 additions & 36 deletions .github/workflows/build-openvino.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,24 +35,12 @@ env:

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

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

strategy:
matrix:
include:
- variant: cpu
runner: '"ubuntu-24.04"'
openvino_device: "CPU"
- variant: gpu
runner: '["self-hosted","Linux","Intel","OpenVINO"]'
openvino_device: "GPU"

runs-on: ${{ fromJSON(matrix.runner) }}

env:
# Sync versions in build-openvino.yml, build-self-hosted.yml, release.yml, build-cache.yml, .devops/openvino.Dockerfile
OPENVINO_VERSION_MAJOR: "2026.0"
Expand All @@ -63,31 +51,14 @@ jobs:
id: checkout
uses: actions/checkout@v6

- name: ccache
if: runner.environment == 'github-hosted'
uses: ggml-org/ccache-action@v1.2.21
with:
key: openvino-ubuntu-24.04-${{ matrix.variant }}-no-preset-v1
evict-old-files: 1d
save: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}

- name: Dependencies
id: depends
run: |
sudo apt-get update
sudo apt-get install -y build-essential libssl-dev libtbb12 cmake ninja-build python3-pip
sudo apt-get install -y ocl-icd-opencl-dev opencl-headers opencl-clhpp-headers intel-opencl-icd

- name: Use OpenVINO Toolkit Cache
if: runner.environment == 'github-hosted'
uses: actions/cache@v5
id: cache-openvino
with:
path: ./openvino_toolkit
key: cache-gha-openvino-toolkit-v${{ env.OPENVINO_VERSION_FULL }}-${{ runner.os }}

- name: Setup OpenVINO Toolkit
if: steps.cache-openvino.outputs.cache-hit != 'true'
uses: ./.github/actions/linux-setup-openvino
with:
path: ./openvino_toolkit
Expand All @@ -109,12 +80,17 @@ jobs:
-DGGML_OPENVINO=ON
time cmake --build build/ReleaseOV --config Release -j $(nproc)

- name: Test
id: cmake_test
- name: Test (CPU)
id: cmake_test_cpu
# TODO: fix and re-enable the `test-llama-archs` test below
run: |
cd ${{ github.workspace }}
ctest --test-dir build/ReleaseOV -L main -E "test-llama-archs" --verbose --timeout 2000

- name: Test (GPU)
id: cmake_test_gpu
# TODO: fix and re-enable the `test-llama-archs` test below
run: |
cd ${{ github.workspace }}
if [ "${{ matrix.openvino_device }}" = "GPU" ]; then
export GGML_OPENVINO_DEVICE=GPU
fi
export GGML_OPENVINO_DEVICE=GPU
ctest --test-dir build/ReleaseOV -L main -E "test-llama-archs" --verbose --timeout 2000
4 changes: 2 additions & 2 deletions .github/workflows/build-rpc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ env:
LLAMA_ARG_LOG_TIMESTAMPS: 1

jobs:
ubuntu-latest-rpc:
runs-on: ubuntu-latest
ubuntu-24-rpc:
runs-on: ${{ 'ubuntu-24.04-arm' || 'ubuntu-24.04' }}

continue-on-error: true

Expand Down
27 changes: 7 additions & 20 deletions .github/workflows/build-self-hosted.yml
Original file line number Diff line number Diff line change
Expand Up @@ -210,7 +210,7 @@ jobs:
GG_BUILD_WEBGPU=1 GG_BUILD_WEBGPU_DAWN_PREFIX="$GITHUB_WORKSPACE/dawn" \
bash ./ci/run.sh ~/results/llama.cpp ~/mnt/llama.cpp

gpu-vulkan:
gpu-vulkan-apple:
runs-on: [self-hosted, macOS, ARM64]

steps:
Expand Down Expand Up @@ -261,7 +261,7 @@ jobs:
# 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

cpu-openvino-low-perf:
gpu-openvino-low-perf:
runs-on: [self-hosted, Linux, Intel, OpenVINO]

concurrency:
Expand Down Expand Up @@ -297,8 +297,8 @@ jobs:
source ./openvino_toolkit/setupvars.sh
GG_BUILD_OPENVINO=1 GGML_OPENVINO_DEVICE=GPU GG_BUILD_LOW_PERF=1 bash ./ci/run.sh ~/results/llama.cpp ~/mnt/llama.cpp

cpu-any-low-perf:
runs-on: [self-hosted, CPU]
cpu-x64-high-perf:
runs-on: [self-hosted, Linux, X64]

steps:
- name: Clone
Expand All @@ -308,22 +308,9 @@ jobs:
- name: Test
id: ggml-ci
run: |
LLAMA_ARG_THREADS=$(nproc) GG_BUILD_LOW_PERF=1 bash ./ci/run.sh ~/results/llama.cpp ~/mnt/llama.cpp
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

cpu-any-high-perf:
runs-on: [self-hosted, CPU]

steps:
- name: Clone
id: checkout
uses: actions/checkout@v6

- name: Test
id: ggml-ci
run: |
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

cpu-arm64-graviton4:
cpu-arm64-high-perf-graviton4:
runs-on: ah-ubuntu_22_04-c8g_8x

steps:
Expand Down Expand Up @@ -360,7 +347,7 @@ jobs:
- name: Test
id: ggml-ci
run: |
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
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

cpu-arm64-graviton4-kleidiai:
runs-on: ah-ubuntu_22_04-c8g_8x
Expand Down
Loading
Loading