ops.md 10 KB

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 โŒ โŒ โœ… โœ… โŒ โŒ โŒ โŒ โŒ
CUMSUM โŒ โŒ โœ… โŒ โŒ โŒ โŒ โœ… โŒ
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 โŒ โœ… โœ… โœ… โœ… โœ… โœ… โœ… โŒ
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 โŒ โŒ โŒ โŒ โŒ โŒ โŒ โŒ โŒ
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 โŒ โŒ โœ… โŒ โŒ โŒ โŒ โŒ โŒ