Files
llama.cpp/docs/ops.md
T
Giuseppe Scrivano 3d4e86bbeb vulkan: Add State Space Model (SSM) Operations Support (#16463)
* vulkan: implement SSM scan operation

Add State Space Model scan operation to the Vulkan backend.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>

* vulkan: implement SSM conv operation

Add State Space Model conv operation to the Vulkan backend.

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>

---------

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2025-10-17 14:23:47 +02:00

9.6 KiB

GGML Operations

List of GGML operations and backend support status.

How to add a backend to this table:

  1. Run test-backend-ops support --output csv with your backend name and redirect output to a csv file in docs/ops/ (e.g., docs/ops/CUDA.csv)
  2. Regenerate /docs/ops.md via ./scripts/create_ops_docs.py

Legend:

  • ✅ Fully supported by this backend
  • 🟡 Partially supported by this backend
  • ⌠Not supported by this backend
Operation BLAS CANN CPU CUDA Metal OpenCL SYCL Vulkan zDNN
ABS ⌠✅ ✅ 🟡 🟡 ⌠🟡 ⌠âŒ
ACC ⌠✅ ✅ ✅ ✅ ⌠✅ ✅ âŒ
ADD ⌠✅ ✅ ✅ 🟡 🟡 ✅ ✅ âŒ
ADD1 ⌠✅ ✅ ✅ ⌠⌠✅ ⌠âŒ
ADD_ID ⌠⌠⌠⌠⌠⌠⌠⌠âŒ
ARANGE ⌠✅ ✅ ✅ ✅ ⌠⌠⌠âŒ
ARGMAX ⌠✅ ✅ ✅ ✅ ⌠✅ ✅ âŒ
ARGSORT ⌠✅ ✅ ✅ ✅ ✅ ✅ ✅ âŒ
CEIL ⌠⌠✅ ⌠⌠⌠⌠⌠âŒ
CLAMP ⌠✅ ✅ ✅ 🟡 🟡 ✅ 🟡 âŒ
CONCAT ⌠✅ ✅ 🟡 ✅ 🟡 🟡 ✅ âŒ
CONT ⌠🟡 ✅ ✅ ✅ 🟡 🟡 🟡 âŒ
CONV_2D ⌠⌠✅ ⌠⌠✅ ⌠✅ âŒ
CONV_2D_DW ⌠⌠✅ ✅ ⌠⌠⌠✅ âŒ
CONV_3D ⌠⌠⌠⌠⌠⌠⌠⌠âŒ
CONV_TRANSPOSE_1D ⌠✅ ✅ ✅ ✅ ⌠✅ ✅ âŒ
CONV_TRANSPOSE_2D ⌠⌠✅ ✅ ⌠⌠⌠⌠âŒ
COS ⌠✅ ✅ ✅ 🟡 ⌠✅ 🟡 âŒ
COUNT_EQUAL ⌠✅ ✅ ✅ ⌠⌠✅ ✅ âŒ
CPY ⌠🟡 🟡 🟡 🟡 🟡 🟡 🟡 âŒ
CROSS_ENTROPY_LOSS ⌠⌠✅ ✅ ⌠⌠⌠⌠âŒ
CROSS_ENTROPY_LOSS_BACK ⌠⌠✅ ✅ ⌠⌠⌠⌠âŒ
DIAG_MASK_INF ⌠✅ ✅ ✅ 🟡 🟡 ✅ ✅ âŒ
DIV ⌠✅ ✅ ✅ 🟡 🟡 ✅ ✅ âŒ
DUP ⌠✅ ✅ 🟡 🟡 🟡 ✅ 🟡 âŒ
ELU ⌠✅ ✅ 🟡 🟡 ⌠🟡 ⌠âŒ
EXP ⌠✅ ✅ 🟡 🟡 ⌠🟡 ⌠âŒ
FLASH_ATTN_EXT ⌠🟡 ✅ 🟡 🟡 ⌠⌠🟡 âŒ
FLOOR ⌠⌠✅ ⌠⌠⌠⌠⌠âŒ
GATED_LINEAR_ATTN ⌠⌠✅ ✅ ⌠⌠✅ ⌠âŒ
GEGLU ⌠✅ ✅ ✅ 🟡 ✅ ✅ 🟡 âŒ
GEGLU_ERF ⌠✅ ✅ ✅ 🟡 ✅ ✅ 🟡 âŒ
GEGLU_QUICK ⌠✅ ✅ ✅ 🟡 ✅ ✅ 🟡 âŒ
GELU ⌠✅ ✅ 🟡 🟡 🟡 🟡 🟡 âŒ
GELU_ERF ⌠✅ ✅ 🟡 🟡 🟡 🟡 🟡 âŒ
GELU_QUICK ⌠✅ ✅ 🟡 🟡 🟡 🟡 🟡 âŒ
GET_ROWS ⌠🟡 ✅ 🟡 ✅ 🟡 🟡 🟡 âŒ
GET_ROWS_BACK ⌠⌠🟡 🟡 ⌠⌠⌠⌠âŒ
GROUP_NORM ⌠✅ ✅ ✅ ✅ ✅ ✅ ✅ âŒ
GROUP_NORM_MUL_ADD ⌠⌠⌠⌠⌠⌠✅ ⌠âŒ
HARDSIGMOID ⌠✅ ✅ 🟡 🟡 ⌠🟡 ⌠âŒ
HARDSWISH ⌠✅ ✅ 🟡 🟡 ⌠🟡 ⌠âŒ
IM2COL ⌠✅ ✅ ✅ 🟡 ✅ ✅ ✅ âŒ
IM2COL_3D ⌠⌠⌠⌠⌠⌠⌠⌠âŒ
L2_NORM ⌠⌠✅ ✅ ✅ ⌠✅ ✅ âŒ
LEAKY_RELU ⌠✅ ✅ ✅ ✅ ⌠✅ ✅ âŒ
LOG ⌠✅ ✅ ✅ ⌠⌠✅ ⌠âŒ
MEAN ⌠✅ ✅ ✅ ✅ ⌠⌠⌠âŒ
MUL ⌠✅ ✅ ✅ 🟡 🟡 ✅ ✅ âŒ
MUL_MAT 🟡 🟡 🟡 🟡 🟡 🟡 🟡 🟡 ��Ÿ¡
MUL_MAT_ID ⌠🟡 ✅ ✅ ✅ 🟡 🟡 ✅ âŒ
NEG ⌠✅ ✅ 🟡 🟡 ⌠🟡 ⌠âŒ
NORM ⌠✅ ✅ ✅ 🟡 ✅ ✅ 🟡 âŒ
NORM_MUL_ADD ⌠⌠⌠⌠⌠⌠✅ ⌠âŒ
OPT_STEP_ADAMW ⌠⌠✅ ✅ ⌠⌠⌠✅ âŒ
OPT_STEP_SGD ⌠⌠⌠⌠⌠⌠⌠⌠âŒ
OUT_PROD 🟡 ⌠🟡 🟡 ⌠⌠🟡 ⌠âŒ
PAD ⌠✅ ✅ ✅ ✅ ✅ 🟡 ✅ âŒ
PAD_REFLECT_1D ⌠✅ ✅ ⌠✅ ⌠⌠⌠âŒ
POOL_2D ⌠🟡 ✅ ✅ ✅ ⌠✅ ✅ âŒ
REGLU ⌠✅ ✅ ✅ 🟡 ✅ ✅ 🟡 âŒ
RELU ⌠✅ ✅ 🟡 🟡 🟡 🟡 🟡 âŒ
REPEAT ⌠✅ ✅ 🟡 ✅ 🟡 ✅ 🟡 âŒ
REPEAT_BACK ⌠⌠✅ ✅ ⌠⌠⌠✅ âŒ
RMS_NORM ⌠✅ ✅ ✅ 🟡 ✅ ✅ ✅ âŒ
RMS_NORM_BACK ⌠⌠✅ ✅ ⌠⌠⌠✅ âŒ
RMS_NORM_MUL_ADD ⌠✅ ✅ ✅ ✅ ✅ ✅ ✅ âŒ
ROLL ⌠⌠✅ ⌠⌠⌠⌠✅ âŒ
ROPE ⌠🟡 ✅ ✅ ✅ ✅ ✅ ✅ âŒ
ROPE_BACK ⌠⌠✅ ✅ ⌠⌠⌠✅ âŒ
ROUND ⌠⌠✅ ⌠⌠⌠⌠⌠âŒ
RWKV_WKV6 ⌠⌠✅ ✅ ✅ ⌠✅ ✅ âŒ
RWKV_WKV7 ⌠⌠✅ ✅ ✅ ⌠✅ ✅ âŒ
SCALE ⌠🟡 ✅ ✅ ✅ ✅ ✅ ✅ âŒ
SET ⌠⌠✅ ⌠✅ ⌠⌠⌠âŒ
SET_ROWS ⌠⌠🟡 🟡 🟡 🟡 🟡 🟡 âŒ
SGN ⌠✅ ✅ 🟡 🟡 ⌠🟡 ⌠âŒ
SIGMOID ⌠✅ ✅ 🟡 🟡 🟡 🟡 🟡 âŒ
SILU ⌠✅ ✅ 🟡 🟡 🟡 🟡 🟡 âŒ
SILU_BACK ⌠⌠✅ ✅ ⌠⌠⌠✅ âŒ
SIN ⌠✅ ✅ ✅ 🟡 ⌠✅ 🟡 âŒ
SOFTCAP ⌠⌠⌠⌠⌠⌠✅ ⌠âŒ
SOFT_MAX ⌠🟡 ✅ ✅ ✅ ✅ ✅ ✅ âŒ
SOFT_MAX_BACK ⌠⌠🟡 🟡 ⌠⌠🟡 ✅ âŒ
SQR ⌠✅ ✅ ✅ 🟡 ⌠✅ 🟡 âŒ
SQRT ⌠✅ ✅ ✅ 🟡 ⌠✅ ⌠âŒ
SSM_CONV ⌠⌠✅ ✅ ✅ ⌠⌠✅ âŒ
SSM_SCAN ⌠⌠✅ ✅ ✅ ⌠⌠✅ âŒ
STEP ⌠✅ ✅ 🟡 🟡 ⌠🟡 ⌠âŒ
SUB ⌠✅ ✅ ✅ 🟡 🟡 ✅ ✅ âŒ
SUM ⌠✅ ✅ ✅ ⌠⌠✅ ✅ âŒ
SUM_ROWS ⌠✅ ✅ ✅ ✅ ✅ 🟡 ✅ âŒ
SWIGLU ⌠✅ ✅ ✅ 🟡 ✅ ✅ 🟡 âŒ
SWIGLU_OAI ⌠⌠⌠⌠⌠⌠⌠⌠âŒ
TANH ⌠✅ ✅ 🟡 🟡 ✅ 🟡 🟡 âŒ
TIMESTEP_EMBEDDING ⌠✅ ✅ ✅ ✅ ✅ ✅ ✅ âŒ
TOPK_MOE ⌠⌠⌠⌠⌠⌠✅ ⌠âŒ
TRUNC ⌠⌠✅ ⌠⌠⌠⌠⌠âŒ
UPSCALE ⌠🟡 ✅ ✅ 🟡 ✅ 🟡 ✅ âŒ
XIELU ⌠⌠⌠⌠⌠⌠⌠⌠âŒ