Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
103 commits
Select commit Hold shift + click to select a range
6217b49
HIP: flip GGML_HIP_GRAPHS to default on (#22254)
IMbackK Apr 23, 2026
86db42e
CUDA: fuse relu + sqr (#22249)
anavp-nvidia Apr 23, 2026
b76429a
ggml-webgpu: add support for im2col (#22259)
Constannnnnt Apr 23, 2026
60b68a6
sycl : fused MoE mul_mat_vec_q for TG (#21920)
abotsis Apr 23, 2026
5eaee65
convert : Handle ModelOpt produced mixed precision model during conve…
ynankani Apr 23, 2026
4ead6fd
[SYCL] Update oneapi 2025.3.3, Seperate SYCL build, release Ubuntu 24…
NeoZhangJianyu Apr 23, 2026
96c1db2
ggml-base: use MATH_LIBRARY variable instead of hardcoded 'm' (#22239)
ggerganov Apr 23, 2026
930e021
gitignore: add AGENTS.local.md (#22246)
ggerganov Apr 23, 2026
8635e22
metal : fix event synchronization (#22260)
ggerganov Apr 23, 2026
550d684
server: Enable transcriptions API for LFM2-Audio (#22000)
tdakhran Apr 23, 2026
0dd7f91
cli : cleanup auto-completion code (#21745)
matthiasstraka Apr 23, 2026
9012c50
model-conversion : fix mmproj output file name [no ci] (#22274)
danbev Apr 23, 2026
0949beb
fix build number for sycl release (#22283)
CISC Apr 23, 2026
c807c6e
server: (anthropic API) fix prefix caching (#21793)
kvc0 Apr 23, 2026
12568ca
vendor : update LibreSSL to 4.3.1 (#22285)
angt Apr 23, 2026
c78fb90
server: fix heap-buffer-overflow from negative n_discard (CVE-2026-21…
SongTonyLi Apr 23, 2026
185cbff
server : convert_anthropic_to_oai: also copy chat_template_kwargs (#2…
Soreepeong Apr 23, 2026
187a456
Enable testing on Snapdragon devices (#21051)
shreyajn Apr 23, 2026
5d2b52d
hexagon: add support for basic and extended Op profiling (#22269)
max-krasnyansky Apr 23, 2026
fa0b8a7
cli: Remove redundant local sampling variables (#20429) (#22264)
ezturner Apr 23, 2026
e5f070a
fix(shader): handle the buffer aliasing for rms fuse (#22266)
Constannnnnt Apr 23, 2026
8bc492e
hexagon: add SOLVE_TRI op (#21974)
mengshengwu Apr 24, 2026
793d0a7
server: rename debug tags to match --cache-idle-slots naming (#22292)
yychyo Apr 24, 2026
ffdd983
server : fix swa-full logic (#22288)
ggerganov Apr 24, 2026
017f090
jinja : remove unused header (#22310)
ggerganov Apr 24, 2026
e583f3b
ggml : minor coding style (#22308)
ggerganov Apr 24, 2026
dc80c52
common : fix jinja warnings with clang 21 (#22313)
angt Apr 24, 2026
15fa3c4
metal : print GPU description (#22318)
ggerganov Apr 24, 2026
f65bc34
hexagon: use DIRID 13 in libggml-htp.inf for modern InfVerif (#22306)
mengshengwu Apr 24, 2026
13d36cf
ggml-webgpu: enable FLASH_ATTN_EXT on browser without subgroup matrix…
ArberSephirotheca Apr 24, 2026
a702f39
CI Snapdragon: Switch ubuntu-latest to ubuntu-slim runner (#22303)
shreyajn Apr 24, 2026
361fe72
Hexagon: Bump HMX Frequency to Max Corner (#22334)
trivikram-reddy1 Apr 24, 2026
0adede8
parser: fix structured output bug (#22302)
pwilkin Apr 24, 2026
dd2914d
ggml-webgpu: support for SSM_SCAN and disable set_rows error checking…
reeselevine Apr 25, 2026
eddd7a1
[SYCL] Optimize Q4_0 mul_mat for Arc770, add scripts (#22291)
arthw Apr 25, 2026
8ea8fee
gitignore : add .pi + personal SYSTEM.md (#22316)
ggerganov Apr 25, 2026
9d34231
llama-quant : default ftype param `Q5_1` --> `Q8_0` (#20828)
ddh0 Apr 25, 2026
d164904
metal : optimize Metal Tensor API usage for GGML_OP_MUL_MAT (#20962)
Developer-Ecosystem-Engineering Apr 25, 2026
9725a31
CUDA: reduce MMQ stream-k overhead (#22298)
JohannesGaessler Apr 25, 2026
98dc141
spec : fix vocab compat checks (#22358)
ggerganov Apr 25, 2026
dcad77c
chat: fix handling of space in reasoning markers (#22353)
pwilkin Apr 25, 2026
b760272
hexagon: guard HMX clock request for v75+ platforms (#22377)
trivikram-reddy1 Apr 26, 2026
f454bd7
opencl: add iq4_nl support (#22272)
lhez Apr 26, 2026
2dd8416
ggml-cpu: optimize avx2 q6_k (#22345)
netrunnereve Apr 26, 2026
0c6ee1c
ggml-cpu : re-enable fast gelu_quick_f16 (#22339)
CISC Apr 26, 2026
b1a5bd4
CUDA: better coalesce data-access for contiguous concat (#22330)
ORippler Apr 26, 2026
7ec36aa
Github: set meta backend code owner (#22388)
JohannesGaessler Apr 26, 2026
78433f6
Fix recurrent state serialization for partial reads and writes (#22362)
gaugarg-nv Apr 26, 2026
06a811d
add performance-portable tuning for register-tile and subgroup matmul…
SharmaRithik Apr 26, 2026
f535774
pr2wt : symlink .pi (#22386)
ggerganov Apr 26, 2026
5594d13
common: fix missing exports in llama-common (#22340)
max-krasnyansky Apr 27, 2026
f84270e
ggml : use 64 bytes aligned tile buffers (#21058)
angt Apr 27, 2026
d13540b
convert : remove input_scale for dequantized fp8 modelopt (#22356)
CISC Apr 27, 2026
0f1bb60
model : remove duplicate wo_s scale after build_attn (Qwen3, LLaMA) (…
ynankani Apr 27, 2026
e940b3d
download : prefer q8_0 when q4_k not available (#22428)
ggerganov Apr 27, 2026
42401c7
Fix type casting for unaccounted memory calculation (#22424)
rankaiyx Apr 27, 2026
ceaf47c
fix: rpc-server cache may not work in Windows environments (#22394)
unraido Apr 27, 2026
4414c04
Additional test for common/gemma4 : handle parsing edge cases (#22420)
hextriclosan Apr 27, 2026
665abc6
add fast mat-vec kernels for i-quants (#22344)
SharmaRithik Apr 27, 2026
983ca89
server: (router) Forward form-data to model server (Fixes #22044) (#2…
tha80 Apr 27, 2026
434b2a1
ggml-webgpu: add Q1_0 support (#22374)
SharmaRithik Apr 27, 2026
516e8d7
server: use pos_next instead of n_tokens for m-rope (#22439)
am17an Apr 28, 2026
14e733e
spec : refactor params (#22397)
ggerganov Apr 28, 2026
c3e08f4
CANN: add new ops, optimize existing ops (#21204)
hipudding Apr 28, 2026
d530d6e
ggml : revert to -lm linking instead of find_library (#22355)
angt Apr 28, 2026
50494a2
ggml : skip already registered backends and devices (#22296)
angt Apr 28, 2026
698d19b
ggml: improve SPIR-V headers detection with __has_include (#21918)
EmilAskerov Apr 28, 2026
1982117
vulkan: add barrier after writetimestamp (#21865)
jeffbolznv Apr 28, 2026
f42e29f
webui: Server tools (#21237)
allozaur Apr 28, 2026
98bb579
ggml-webgpu: fix buffer aliasing for ssm_scan and refactor aliasing l…
reeselevine Apr 28, 2026
f9f3365
vulkan: Coalesce Q4_K/Q5_K scale loads (#21751)
TheBlueMatt Apr 28, 2026
52e5f0a
common : re-arm reasoning budget after DONE on new <think> (#22323)
BruceJillis Apr 28, 2026
5d56eff
convert : add support for Nemotron Nano 3 Omni (#22481)
danbev Apr 28, 2026
7b8443a
ggml-cuda: add flash-attn support for DKQ=320/DV=256 with ncols2=32 (…
lnigam Apr 28, 2026
fc2b005
ggml-cuda: Repost of 21896: Blackwell native NVFP4 support (#22196)
michaelw9999 Apr 28, 2026
739393b
TP: fix delayed AllReduce + zero-sized slices (#22489)
JohannesGaessler Apr 29, 2026
bdc9c74
ggml : add sve tuned code for gemm_q8_0_4x8_q8_0() kernel (#21916)
hrushitfujitsu Apr 29, 2026
7b95ea5
common: Intentionally leak logger instance to fix hanging on Windows …
rillomas Apr 29, 2026
d6a5094
ggml-webgpu: Fix bug in FlashAttention support check (#22492)
reeselevine Apr 29, 2026
b5c4227
ggml-cpu: cmake: append xsmtvdotii march for SpacemiT IME (#22317)
qiurui144 Apr 29, 2026
3142f1d
ggml-cuda: refactor fusion code (#22468)
am17an Apr 29, 2026
1cbc846
ggml-cpu : disable tiled matmul on AIX to fix page boundary segfault …
shalinib-ibm Apr 29, 2026
59237bf
webui: fix slow mic stop and WAV encode (#22480)
ServeurpersoCom Apr 29, 2026
4b221b7
ggml : bump version to 0.10.1 (ggml/1469)
ggerganov Apr 29, 2026
b1d5f5b
sync : ggml
ggerganov Apr 29, 2026
683c5ac
spec : disacard last drafted token with low prob (#22506)
ggerganov Apr 29, 2026
098705a
CUDA: fuse SSM_CONV + ADD(bias) + SILU (#22478)
anavp-nvidia Apr 29, 2026
41a63be
hexagon: make vmem and buffer-size configurable (#22487)
max-krasnyansky Apr 29, 2026
d775992
common : do not pass prompt tokens to reasoning budget sampler (#22488)
aldehir Apr 29, 2026
b42c7fa
spec : fix vocab compat checks in spec example (#22426)
petersid2022 Apr 30, 2026
80afa33
spec : fix draft model checkpoints (#22521)
ggerganov Apr 30, 2026
4515559
add fast matmul iquants (#22504)
SharmaRithik Apr 30, 2026
27aef3d
scripts : add wc2wt.sh - create worktree from current HEAD (#22513)
ggerganov Apr 30, 2026
e82aaf2
CUDA: fix tile FA kernel on Pascal (#22541)
JohannesGaessler Apr 30, 2026
5f0ab72
vendor : update cpp-httplib to 0.43.2 (#22548)
angt Apr 30, 2026
6118c04
ci : bump ty to 0.0.33 (#22535)
CISC Apr 30, 2026
c20c445
spec: fix argument typo (#22552)
barnjamin Apr 30, 2026
660b1b4
vulkan: add get/set tensor 2d functions (#22514)
0cc4m Apr 30, 2026
beb42ff
common : check for null getpwuid in hf-cache (#22550)
angt Apr 30, 2026
5cbfb18
Update llama-mmap to use ftello/fseeko (#22497)
reeselevine Apr 30, 2026
a95a11e
ggml-webgpu: Improve performance of mat-vec and mat-mat for MUL_MAT_I…
yomaytk Apr 30, 2026
96cf31b
Pin GGML_HIP_GRAPHS=OFF pending VMM/tiered-cache validation
kmbandy Apr 30, 2026
3af86c9
Merge upstream/master into feature-upstream-sync-20260430
kmbandy Apr 30, 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
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .devops/intel.Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
ARG ONEAPI_VERSION=2025.3.2-0-devel-ubuntu24.04
ARG ONEAPI_VERSION=2025.3.3-0-devel-ubuntu24.04

## Build Image

Expand Down
2 changes: 1 addition & 1 deletion .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<!-- You can provide more details and link related discussions here. Delete this section if not applicable -->

# Requirements
## Requirements

<!-- IMPORTANT: Please do NOT delete this section, otherwise your PR may be rejected -->

Expand Down
116 changes: 116 additions & 0 deletions .github/workflows/build-and-test-snapdragon.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
name: CI (snapdragon)

on:
workflow_dispatch:
push:
branches:
- master
paths:
- '.github/workflows/build-and-test-snapdragon.yml'
- 'ggml/include/ggml-hexagon.h'
- 'ggml/src/ggml-hexagon/**'
- 'docs/backend/snapdragon/**'
- 'scripts/snapdragon/**'
- 'CMakePresets.json'

pull_request:
types: [opened, synchronize, reopened]
paths:
- '.github/workflows/build-and-test-snapdragon.yml'
- 'ggml/include/ggml-hexagon.h'
- 'ggml/src/ggml-hexagon/**'
- 'docs/backend/snapdragon/**'
- 'scripts/snapdragon/**'
- 'CMakePresets.json'

concurrency:
group: ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }}
cancel-in-progress: true

jobs:
android-ndk-snapdragon:
runs-on: ubuntu-latest
container:
image: 'ghcr.io/snapdragon-toolchain/arm64-android:v0.3'
defaults:
run:
shell: bash

steps:
- name: Clone
uses: actions/checkout@v6
with:
fetch-depth: 0
lfs: false

- name: Build Llama.CPP for Snapdragon Android
id: build_llama_cpp_snapdragon_android
run: |
cp docs/backend/snapdragon/CMakeUserPresets.json .
cmake --preset arm64-android-snapdragon-release -B build
cmake --build build
cmake --install build --prefix pkg-snapdragon/llama.cpp

- name: Upload Llama.CPP Snapdragon Android Build Artifact
if: ${{ always() && steps.build_llama_cpp_snapdragon_android.outcome == 'success' }}
uses: actions/upload-artifact@v6
with:
name: llama-cpp-android-arm64-snapdragon
path: pkg-snapdragon/llama.cpp

test-snapdragon-qdc:
name: Test on QDC Android Device (${{ matrix.device }})
needs: [android-ndk-snapdragon]
runs-on: ubuntu-slim
strategy:
fail-fast: false
matrix:
device: [SM8750, SM8650, SM8850]

steps:
- name: Checkout
uses: actions/checkout@v6

- name: Download build artifact
uses: actions/download-artifact@v7
with:
name: llama-cpp-android-arm64-snapdragon
path: pkg-snapdragon/llama.cpp

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.x'
cache: pip

- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get install -y curl unzip

- name: Install QDC SDK wheel
run: |
curl -fSL -o qdc_sdk.zip https://softwarecenter.qualcomm.com/api/download/software/tools/Qualcomm_Device_Cloud_SDK/All/0.2.3/qualcomm_device_cloud_sdk-0.2.3.zip
unzip qdc_sdk.zip -d qdc_sdk
pip install qdc_sdk/qualcomm_device_cloud_sdk-0.2.3-py3-none-any.whl

- name: Check QDC API key
id: check_secret
env:
QDC_API_KEY: ${{ secrets.QDC_API_KEY }}
run: echo "has-qdc-key=${{ env.QDC_API_KEY != '' }}" >> "$GITHUB_OUTPUT"

- name: Run QDC tests (${{ matrix.device }})
if: steps.check_secret.outputs.has-qdc-key == 'true'
run: |
python scripts/snapdragon/qdc/run_qdc_jobs.py \
--test all \
--pkg-dir pkg-snapdragon/llama.cpp \
--model-url "https://huggingface.co/bartowski/Llama-3.2-1B-Instruct-GGUF/resolve/main/Llama-3.2-1B-Instruct-Q4_0.gguf" \
--device ${{ matrix.device }}
env:
QDC_API_KEY: ${{ secrets.QDC_API_KEY }}

- name: Cleanup
if: always()
run: rm -rf pkg-snapdragon qdc_sdk qdc_sdk.zip
49 changes: 18 additions & 31 deletions .github/workflows/build-android.yml
Original file line number Diff line number Diff line change
@@ -1,26 +1,24 @@
name: CI (android)

on:
workflow_dispatch: # allows manual triggering
workflow_dispatch:
push:
branches:
- master
paths: [
'.github/workflows/build-android.yml',
'**/CMakeLists.txt',
'**/.cmake',
'**/*.h',
'**/*.hpp',
'**/*.c',
'**/*.cpp'
]
paths:
- '.github/workflows/build-android.yml'
- '**/CMakeLists.txt'
- '**/.cmake'
- '**/*.h'
- '**/*.hpp'
- '**/*.c'
- '**/*.cpp'

pull_request:
types: [opened, synchronize, reopened]
paths: [
'.github/workflows/build-android.yml',
'examples/llama.android/**'
]
paths:
- '.github/workflows/build-android.yml'
- 'examples/llama.android/**'

concurrency:
group: ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }}
Expand Down Expand Up @@ -67,35 +65,24 @@ jobs:
defaults:
run:
shell: bash
strategy:
matrix:
include:
- build: 'arm64-cpu'
defines: '-D ANDROID_ABI=arm64-v8a -D ANDROID_PLATFORM=android-31 -D CMAKE_TOOLCHAIN_FILE=${ANDROID_NDK_ROOT}/build/cmake/android.toolchain.cmake -D GGML_NATIVE=OFF -DGGML_CPU_ARM_ARCH=armv8.5-a+fp16+i8mm -G Ninja -D LLAMA_OPENSSL=OFF -D GGML_OPENMP=OFF'
- build: 'arm64-snapdragon'
defines: '--preset arm64-android-snapdragon-release'

steps:
- name: Clone
id: checkout
uses: actions/checkout@v6
with:
fetch-depth: 0
lfs: false

- name: Build Llama.CPP for Hexagon Android
id: build_llama_cpp_hexagon_android
- name: Build
id: ndk_build
run: |
if [[ "${{ matrix.build }}" == "arm64-snapdragon" ]]; then
cp docs/backend/snapdragon/CMakeUserPresets.json .
fi
cmake ${{ matrix.defines }} -B build
cmake -D ANDROID_ABI=arm64-v8a -D ANDROID_PLATFORM=android-31 -D CMAKE_TOOLCHAIN_FILE=${ANDROID_NDK_ROOT}/build/cmake/android.toolchain.cmake -D GGML_NATIVE=OFF -DGGML_CPU_ARM_ARCH=armv8.5-a+fp16+i8mm -G Ninja -D LLAMA_OPENSSL=OFF -D GGML_OPENMP=OFF -B build
cmake --build build
cmake --install build --prefix pkg-adb/llama.cpp

- name: Upload Llama.CPP Hexagon Android Build Artifact
if: ${{ always() && steps.build_llama_cpp_hexagon_android.outcome == 'success' }}
- name: Upload Android Build Artifact
if: ${{ always() && steps.ndk_build.outcome == 'success' }}
uses: actions/upload-artifact@v6
with:
name: llama-cpp-android-${{ matrix.build }}
name: llama-cpp-android-arm64-cpu
path: pkg-adb/llama.cpp
142 changes: 142 additions & 0 deletions .github/workflows/build-sycl.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
name: CI (sycl)

on:
workflow_dispatch: # allows manual triggering
push:
branches:
- master
paths: [
'.github/workflows/build-sycl.yml',
'**/CMakeLists.txt',
'**/.cmake',
'**/*.h',
'**/*.hpp',
'**/*.c',
'**/*.cpp'
]

pull_request:
types: [opened, synchronize, reopened]
paths: [
'.github/workflows/build-sycl.yml',
'ggml/src/ggml-sycl/**'
]

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:

ubuntu-24-sycl:
strategy:
matrix:
build: [fp32, fp16]
include:
- build: fp32
fp16: OFF
- build: fp16
fp16: ON

runs-on: ubuntu-24.04

env:
ONEAPI_ROOT: /opt/intel/oneapi/
ONEAPI_INSTALLER_VERSION: "2025.3.3"

continue-on-error: true

steps:
- uses: actions/checkout@v6

- name: Use oneAPI Installation Cache
uses: actions/cache@v5
id: cache-sycl
with:
path: ${{ env.ONEAPI_ROOT }}
key: oneAPI-${{ env.ONEAPI_INSTALLER_VERSION }}-${{ runner.os }}

- name: Download & Install oneAPI
shell: bash
if: steps.cache-sycl.outputs.cache-hit != 'true'
run: |
cd /tmp
wget https://registrationcenter-download.intel.com/akdlm/IRC_NAS/56f7923a-adb8-43f3-8b02-2b60fcac8cab/intel-deep-learning-essentials-2025.3.3.16_offline.sh -O intel-deep-learning-essentials_offline.sh
sudo bash intel-deep-learning-essentials_offline.sh -s -a --silent --eula accept

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

- name: ccache
uses: ggml-org/ccache-action@v1.2.21
with:
key: ubuntu-24-sycl-${{ matrix.build }}
evict-old-files: 1d
save: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}

- name: Build
id: cmake_build
run: |
source /opt/intel/oneapi/setvars.sh
cmake -B build \
-G "Ninja" \
-DCMAKE_BUILD_TYPE=Release \
-DGGML_SYCL=ON \
-DCMAKE_C_COMPILER=icx \
-DCMAKE_CXX_COMPILER=icpx \
-DLLAMA_OPENSSL=OFF \
-DGGML_NATIVE=OFF \
-DGGML_SYCL_F16=${{ matrix.fp16 }}
time cmake --build build --config Release -j $(nproc)

windows-latest-sycl:
runs-on: windows-2022

defaults:
run:
shell: bash

env:
WINDOWS_BASEKIT_URL: https://registrationcenter-download.intel.com/akdlm/IRC_NAS/b60765d1-2b85-4e85-86b6-cb0e9563a699/intel-deep-learning-essentials-2025.3.3.18_offline.exe
WINDOWS_DPCPP_MKL: intel.oneapi.win.cpp-dpcpp-common:intel.oneapi.win.mkl.devel:intel.oneapi.win.dnnl:intel.oneapi.win.tbb.devel
ONEAPI_ROOT: "C:/Program Files (x86)/Intel/oneAPI"
ONEAPI_INSTALLER_VERSION: "2025.3.3"
steps:
- name: Clone
id: checkout
uses: actions/checkout@v6

- name: Use oneAPI Installation Cache
uses: actions/cache@v5
id: cache-sycl
with:
path: ${{ env.ONEAPI_ROOT }}
key: oneAPI-${{ env.ONEAPI_INSTALLER_VERSION }}-${{ runner.os }}

- name: Download & Install oneAPI
shell: bash
if: steps.cache-sycl.outputs.cache-hit != 'true'
run: |
scripts/install-oneapi.bat $WINDOWS_BASEKIT_URL $WINDOWS_DPCPP_MKL

- name: ccache
uses: ggml-org/ccache-action@v1.2.21
with:
key: windows-latest-sycl
variant: ccache
evict-old-files: 1d
save: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}

# TODO: add ssl support ; we will also need to modify win-build-sycl.bat to accept user-specified args

- name: Build
id: cmake_build
run: examples/sycl/win-build-sycl.bat
Loading
Loading