]> git.djapps.eu Git - pkg/ggml/sources/ggml/commit
hexagon refactor all Ops to use local context struct (llama/19819)
authorMax Krasnyansky <redacted>
Tue, 24 Feb 2026 00:32:14 +0000 (16:32 -0800)
committerGeorgi Gerganov <redacted>
Wed, 25 Feb 2026 10:32:13 +0000 (12:32 +0200)
commit7490b5f9fff7c131823f784a9aed147f42c64c3c
tree145a62c697409025c828a115c45c8b59282d96b5
parent8c1b17dad9371945987c773e7d7129c0d0951733
hexagon refactor all Ops to use local context struct (llama/19819)

* hexagon: refactor set/get/sum-rows ops to use local context

* hexagon: refactor ROPE and Softmax Ops to use local context

Improves performance a bit by precomputing things and saving in the context.

* hexagon: refactor activation ops to use local context struct

* hexagon: refactor unary ops to use local context struct and DMA/VTCM

* hexagon: use aligned hvx_scale function

* hexagon: remove unused fields from op_context

* hexagon: rewrite ROPE to use DMA and VTCM scratchpad

* hex-rope: keep N rows in scratchpad (instead of just two)

* hex-rope: introduce rowidx cache

* hex-rope: remove unused fields

* hex-rope: rewrite dma prefetch logic to allow for multi-row fetch/compute

also removes the need for fastdiv.

* hex-rope: minor formatting

* hex-rope: use indices and unroll the loops

* hex-rope: more updates to cleanup rope-block handling

* hexagon: cleanup supported type/dims checks

* hexagon: all reduce funcs replicated across lanes

There is no need to explicitly replicate the first value.

* snapdragon: update adb and windows scripts to use ubatch-size 256

Updated Ops support handles larger ubatches.
src/ggml-hexagon/ggml-hexagon.cpp
src/ggml-hexagon/htp/act-ops.c
src/ggml-hexagon/htp/get-rows-ops.c
src/ggml-hexagon/htp/hex-dma.h
src/ggml-hexagon/htp/htp-ops.h
src/ggml-hexagon/htp/matmul-ops.c
src/ggml-hexagon/htp/rope-ops.c
src/ggml-hexagon/htp/set-rows-ops.c
src/ggml-hexagon/htp/softmax-ops.c
src/ggml-hexagon/htp/sum-rows-ops.c
src/ggml-hexagon/htp/unary-ops.c