llama.cpp/ggml/src/ggml-hexagon
Krishna Sridhar cf23ee2447
hexagon: add neg, exp, sigmoid, softplus ops, cont, repeat ops (#20701)
Add element-wise unary ops needed by Qwen 3.5's DeltaNet linear
attention layers. These ops follow the existing unary-ops pattern
with VTCM DMA double-buffering.

- neg: negate via scale by -1.0
- exp: uses existing hvx_exp_f32 HVX intrinsics
- sigmoid: uses existing hvx_sigmoid_f32_aa HVX intrinsics
- softplus: log(1 + exp(x)) scalar fallback
- CONT reuses the existing CPY infrastructure since making a tensor
  contiguous is equivalent to a same-type copy.
- REPEAT implements tiled memory copy with multi-threaded execution via
  the worker pool, supporting f32 and f16 types. The kernel parallelizes
  across output rows and uses memcpy for each tile.

Co-authored-by: Max Krasnyansky <maxk@qti.qualcomm.com>
2026-03-17 15:34:36 -07:00
..
htp hexagon: add neg, exp, sigmoid, softplus ops, cont, repeat ops (#20701) 2026-03-17 15:34:36 -07:00
CMakeLists.txt ggml-hexagon: flash-attention and reduce-sum optimizations (#19141) 2026-01-30 21:14:20 -08:00
ggml-hexagon.cpp hexagon: add neg, exp, sigmoid, softplus ops, cont, repeat ops (#20701) 2026-03-17 15:34:36 -07:00
htp-drv.cpp chore : correct typos [no ci] (#20041) 2026-03-05 08:50:21 +01:00
htp-drv.h hexagon: enable offloading to Hexagon on Windows on Snapdragon (#19150) 2026-01-29 12:33:21 -08:00
libdl.h hexagon: enable offloading to Hexagon on Windows on Snapdragon (#19150) 2026-01-29 12:33:21 -08:00
libggml-htp.inf hexagon: enable offloading to Hexagon on Windows on Snapdragon (#19150) 2026-01-29 12:33:21 -08:00
op-desc.h ggml-hexagon: create generalized functions for cpu side op (#17500) 2025-12-22 23:13:24 -08:00