llama.cpp
hexagon: new vtcm layouts and improved pipelines for MUL_MAT, MUL_MAT_ID and FLASH_ATTN_EXT
#25425
Merged

hexagon: new vtcm layouts and improved pipelines for MUL_MAT, MUL_MAT_ID and FLASH_ATTN_EXT #25425

max-krasnyansky
max-krasnyansky hex-fa: refactor kernel param compute to use common layout builder
b540ec78
max-krasnyansky hmx: add explicit compiler barriers to make hmx funcs more robust
da33f881
max-krasnyansky hex-vtcm: more generic vtcm layout builder for mm and flash-attn kernels
eaf9f008
max-krasnyansky hex-hmx: unroll inner kernels
8fc4a943
max-krasnyansky hex-hmx: use inline asm instead of intrinsics to avoid compiler issues
69fecbc6
max-krasnyansky hex-hmx: define inline asm macros and simplify code
c71f1278
max-krasnyansky hex-hmx: replace leftover intrinsics
6290eeb2
max-krasnyansky hmx-fa: minor cleanup for hmx asm
71f04e1a
max-krasnyansky hmx-mm: move per-task stucts out of the kernels header
1c181947
max-krasnyansky hmx-mm: simplify core_dot_chunk
6491fef3
max-krasnyansky hmx-mm: simplify inner loops that call hmx instructions
dd1820c9
max-krasnyansky hmx-mm: proper instrumentation for activation prep work for dma pipel…
abea2a9f
max-krasnyansky hmx-mm: update a-prep loop for better prefetch
44fa4d19
max-krasnyansky hex-vtcm: improved vtcm layout alloc for mm to support overlapping areas
e4dd7a8e
max-krasnyansky hmx-mm: reduce the number of act fetch tows to 4 for now, going large…
b74d6716
max-krasnyansky hex-hmx: always use hmx-queue in all modes
fc3088c5
github-actions github-actions added ggml
github-actions github-actions added Hexagon
max-krasnyansky hmx-mm: update comments and minor formatting
29700a84
max-krasnyansky hmx-mm: further improve synchro fallback path to prefetch the weights…
5e62db6c
max-krasnyansky hex-fa: further pipeline improvements (earlier prefetch)
71a55d8a
max-krasnyansky hmx-mm: cleanup dma pipelines to use dst cached in the queue
c8ee54f5
max-krasnyansky hmx-fa: minor cleanup and opts for fa dma pipelines
a35aad11
max-krasnyansky hmx-fa: optimize q-prep stage with dma and unrolling
b0011164
max-krasnyansky hmx-fa: use o_tile size from layout instead of computing it
fb7d78cd
max-krasnyansky hmx-mm: cleanup types and size handling
89698e10
max-krasnyansky hmx-mm: replace divs with fastdiv in qprep loops
84466632
max-krasnyansky hmx-fa: minor update/formatting to q_tile handling
5af9aa00
max-krasnyansky hmx-fa: cleanup the layout to avoid overpadding
32c360e6
max-krasnyansky hmx-fa: simplified and improved cost mode for hmx fa solver that uses…
e4ac61bd
max-krasnyansky hmx-queue: add support queue wakeup and make suspend async to avoid h…
c2955491
max-krasnyansky hex-hmx: move queue wakeup / suspend to the op-batch level
71c65293
max-krasnyansky hex-threads: add hybrid polling to workpool
074fedee
max-krasnyansky max-krasnyansky force pushed from 2abc5b0b to 074fedee 15 days ago
max-krasnyansky hex-mm: fix trailing spaces
e7ba42c3
max-krasnyansky max-krasnyansky marked this pull request as ready for review 15 days ago
max-krasnyansky max-krasnyansky requested a review 15 days ago
lhez
lhez approved these changes on 2026-07-08
max-krasnyansky
yomaytk
yomaytk approved these changes on 2026-07-08
max-krasnyansky max-krasnyansky merged 81ff7abe into master 14 days ago

Login to write a write a comment.

Login via GitHub

Reviewers
Assignees
No one assigned
Labels
Milestone