CrashOverrideX's picture
Add files using upload-large-folder tool
e6c51f8 verified

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 WebGPU ZenDNN 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 ❌ ❌ βœ… βœ… ❌ ❌ ❌ ❌ ❌ ❌ ❌
CUMSUM ❌ ❌ βœ… βœ… βœ… ❌ ❌ βœ… βœ… ❌ ❌
DIAG ❌ ❌ βœ… βœ… ❌ ❌ ❌ ❌ ❌ ❌ ❌
DIAG_MASK_INF ❌ βœ… βœ… βœ… ❌ 🟑 βœ… βœ… ❌ ❌ ❌
DIV ❌ βœ… βœ… βœ… 🟑 βœ… βœ… βœ… βœ… ❌ ❌
DUP ❌ βœ… βœ… 🟑 🟑 🟑 βœ… βœ… ❌ ❌ ❌
ELU ❌ βœ… βœ… 🟑 🟑 ❌ βœ… ❌ βœ… ❌ ❌
EXP ❌ βœ… βœ… 🟑 🟑 ❌ βœ… 🟑 βœ… ❌ ❌
EXPM1 ❌ ❌ βœ… 🟑 🟑 ❌ ❌ ❌ βœ… ❌ ❌
FILL ❌ ❌ βœ… βœ… βœ… ❌ ❌ βœ… βœ… ❌ ❌
FLASH_ATTN_EXT ❌ 🟑 βœ… 🟑 🟑 🟑 ❌ 🟑 🟑 ❌ ❌
FLOOR ❌ ❌ βœ… 🟑 ❌ ❌ 🟑 🟑 βœ… ❌ ❌
GATED_LINEAR_ATTN ❌ βœ… βœ… βœ… ❌ ❌ βœ… ❌ ❌ ❌ ❌
GEGLU ❌ βœ… βœ… βœ… 🟑 βœ… βœ… 🟑 βœ… ❌ ❌
GEGLU_ERF ❌ βœ… βœ… βœ… 🟑 βœ… βœ… 🟑 βœ… ❌ ❌
GEGLU_QUICK ❌ βœ… βœ… βœ… 🟑 βœ… βœ… 🟑 βœ… ❌ ❌
GELU ❌ βœ… βœ… 🟑 🟑 🟑 βœ… 🟑 βœ… ❌ ❌
GELU_ERF ❌ βœ… βœ… 🟑 🟑 🟑 βœ… 🟑 βœ… ❌ ❌
GELU_QUICK ❌ βœ… βœ… 🟑 🟑 🟑 βœ… 🟑 βœ… ❌ ❌
GET_ROWS ❌ 🟑 βœ… 🟑 βœ… 🟑 🟑 🟑 🟑 ❌ ❌
GET_ROWS_BACK ❌ ❌ 🟑 🟑 ❌ ❌ ❌ ❌ ❌ ❌ ❌
GROUP_NORM ❌ βœ… βœ… βœ… βœ… βœ… βœ… βœ… ❌ ❌ ❌
HARDSIGMOID ❌ βœ… βœ… 🟑 🟑 ❌ βœ… 🟑 βœ… ❌ ❌
HARDSWISH ❌ βœ… βœ… 🟑 🟑 ❌ βœ… 🟑 βœ… ❌ ❌
IM2COL ❌ βœ… βœ… βœ… βœ… βœ… βœ… βœ… ❌ ❌ ❌
IM2COL_3D ❌ ❌ βœ… βœ… ❌ ❌ ❌ βœ… ❌ ❌ ❌
L2_NORM ❌ βœ… βœ… βœ… βœ… ❌ βœ… βœ… ❌ ❌ ❌
LEAKY_RELU ❌ βœ… βœ… βœ… 🟑 ❌ βœ… 🟑 ❌ ❌ ❌
LOG ❌ βœ… βœ… βœ… 🟑 ❌ βœ… βœ… βœ… ❌ ❌
MEAN ❌ βœ… βœ… βœ… βœ… βœ… βœ… βœ… ❌ ❌ ❌
MUL ❌ βœ… βœ… βœ… 🟑 βœ… βœ… βœ… βœ… ❌ ❌
MUL_MAT 🟑 🟑 🟑 🟑 βœ… 🟑 🟑 🟑 🟑 🟑 🟑
MUL_MAT_ID ❌ 🟑 βœ… βœ… βœ… 🟑 🟑 βœ… ❌ ❌ ❌
NEG ❌ βœ… βœ… 🟑 🟑 ❌ βœ… 🟑 βœ… ❌ ❌
NORM ❌ βœ… βœ… βœ… βœ… βœ… βœ… 🟑 ❌ ❌ ❌
OPT_STEP_ADAMW ❌ ❌ βœ… βœ… βœ… ❌ ❌ βœ… ❌ ❌ ❌
OPT_STEP_SGD ❌ ❌ βœ… βœ… βœ… ❌ ❌ βœ… ❌ ❌ ❌
OUT_PROD 🟑 🟑 🟑 🟑 ❌ ❌ 🟑 ❌ ❌ ❌ 🟑
PAD ❌ 🟑 βœ… 🟑 🟑 🟑 🟑 βœ… βœ… ❌ ❌
PAD_REFLECT_1D ❌ βœ… βœ… βœ… βœ… ❌ βœ… ❌ ❌ ❌ ❌
POOL_1D ❌ ❌ ❌ ❌ ❌ ❌ ❌ ❌ ❌ ❌ ❌
POOL_2D ❌ 🟑 βœ… βœ… βœ… ❌ βœ… βœ… ❌ ❌ ❌
REGLU ❌ βœ… βœ… βœ… 🟑 βœ… βœ… 🟑 βœ… ❌ ❌
RELU ❌ βœ… βœ… 🟑 🟑 🟑 βœ… 🟑 βœ… ❌ ❌
REPEAT ❌ βœ… βœ… 🟑 βœ… 🟑 βœ… 🟑 ❌ ❌ ❌
REPEAT_BACK ❌ ❌ βœ… βœ… ❌ ❌ βœ… βœ… ❌ ❌ ❌
RMS_NORM ❌ βœ… βœ… βœ… βœ… βœ… βœ… βœ… βœ… ❌ ❌
RMS_NORM_BACK ❌ ❌ βœ… βœ… ❌ ❌ βœ… βœ… ❌ ❌ ❌
ROLL ❌ ❌ βœ… βœ… ❌ ❌ βœ… βœ… ❌ ❌ ❌
ROPE ❌ βœ… βœ… βœ… βœ… βœ… βœ… βœ… βœ… ❌ ❌
ROPE_BACK ❌ ❌ βœ… βœ… ❌ ❌ ❌ βœ… ❌ ❌ ❌
ROUND ❌ ❌ βœ… 🟑 ❌ ❌ 🟑 🟑 βœ… ❌ ❌
RWKV_WKV6 ❌ ❌ βœ… βœ… βœ… ❌ βœ… βœ… ❌ ❌ ❌
RWKV_WKV7 ❌ ❌ βœ… βœ… βœ… ❌ βœ… βœ… ❌ ❌ ❌
SCALE ❌ 🟑 βœ… βœ… βœ… βœ… βœ… βœ… βœ… ❌ ❌
SET ❌ ❌ βœ… βœ… ❌ ❌ 🟑 ❌ ❌ ❌ ❌
SET_ROWS ❌ 🟑 🟑 🟑 🟑 🟑 🟑 🟑 🟑 ❌ ❌
SGN ❌ βœ… βœ… 🟑 🟑 ❌ βœ… ❌ βœ… ❌ ❌
SIGMOID ❌ βœ… βœ… 🟑 🟑 🟑 βœ… 🟑 βœ… ❌ ❌
SILU ❌ βœ… βœ… 🟑 🟑 🟑 βœ… 🟑 βœ… ❌ ❌
SILU_BACK ❌ ❌ βœ… βœ… ❌ ❌ ❌ βœ… ❌ ❌ ❌
SIN ❌ βœ… βœ… βœ… 🟑 ❌ βœ… 🟑 βœ… ❌ ❌
SOFTPLUS ❌ ❌ βœ… 🟑 🟑 ❌ βœ… 🟑 βœ… ❌ ❌
SOFT_MAX ❌ 🟑 βœ… βœ… βœ… βœ… βœ… βœ… βœ… ❌ ❌
SOFT_MAX_BACK ❌ ❌ 🟑 🟑 ❌ ❌ 🟑 βœ… ❌ ❌ ❌
SOLVE_TRI ❌ ❌ βœ… 🟑 ❌ ❌ ❌ 🟑 ❌ ❌ ❌
SQR ❌ βœ… βœ… βœ… 🟑 βœ… βœ… 🟑 βœ… ❌ ❌
SQRT ❌ βœ… βœ… βœ… 🟑 βœ… βœ… 🟑 βœ… ❌ ❌
SSM_CONV ❌ βœ… βœ… βœ… βœ… βœ… βœ… βœ… ❌ ❌ ❌
SSM_SCAN ❌ ❌ βœ… βœ… βœ… ❌ ❌ 🟑 ❌ ❌ ❌
STEP ❌ βœ… βœ… 🟑 🟑 ❌ βœ… 🟑 βœ… ❌ ❌
SUB ❌ βœ… βœ… βœ… 🟑 βœ… βœ… βœ… βœ… ❌ ❌
SUM ❌ 🟑 βœ… 🟑 🟑 ❌ 🟑 🟑 🟑 ❌ ❌
SUM_ROWS ❌ βœ… βœ… 🟑 βœ… 🟑 🟑 βœ… βœ… ❌ ❌
SWIGLU ❌ βœ… βœ… βœ… 🟑 βœ… βœ… 🟑 βœ… ❌ ❌
SWIGLU_OAI ❌ ❌ βœ… βœ… βœ… βœ… βœ… 🟑 βœ… ❌ ❌
TANH ❌ βœ… βœ… 🟑 🟑 βœ… βœ… 🟑 βœ… ❌ ❌
TIMESTEP_EMBEDDING ❌ βœ… βœ… βœ… βœ… βœ… βœ… βœ… ❌ ❌ ❌
TOP_K ❌ ❌ βœ… ❌ βœ… ❌ 🟑 🟑 βœ… ❌ ❌
TRI ❌ ❌ βœ… βœ… βœ… ❌ βœ… βœ… ❌ ❌ ❌
TRUNC ❌ ❌ βœ… 🟑 ❌ ❌ 🟑 🟑 βœ… ❌ ❌
UPSCALE ❌ 🟑 βœ… βœ… 🟑 🟑 🟑 🟑 ❌ ❌ ❌
XIELU ❌ ❌ βœ… ❌ ❌ ❌ ❌ ❌ βœ… ❌ ❌