Skip to content

Latest commit

 

History

History
111 lines (108 loc) · 4.94 KB

webgpu-operators.md

File metadata and controls

111 lines (108 loc) · 4.94 KB

Operators Support Table

The following table shows ONNX operators and the supported opset domain/versions in WebGPU EP by ONNX Runtime Web. For example, 4-6, 8+ means ONNX Runtime Web currently support opset version 4 to 6, 8 and above.

This file is automatically generated from the def files via this script. Do not modify directly.

Operator Opset Comments
Abs ai.onnx(6-12,13+)
Acos ai.onnx(7+)
Acosh ai.onnx(9+)
Add ai.onnx(7-12,13,14+)
ArgMax ai.onnx(1-10,11-12,13+)
ArgMin ai.onnx(1-10,11-12,13+)
Asin ai.onnx(7+)
Asinh ai.onnx(9+)
Atan ai.onnx(7+)
Atanh ai.onnx(9+)
Attention com.microsoft(1+) need implementing mask and past/present
AveragePool ai.onnx(7-9,10,11+); com.ms.internal.nhwc(7-9,10,11+) need perf optimization; need implementing activation
BatchNormalization ai.onnx(7-8,9-13,14,15+); com.ms.internal.nhwc(7-8,9-13,14,15+)
BiasAdd com.microsoft(1+)
BiasSplitGelu com.microsoft(1+)
Cast ai.onnx(6-8,9-12,13-18,19+)
Ceil ai.onnx(6-12,13+)
Clip ai.onnx(6-10,11,12,13+)
Concat ai.onnx(1-3,4-10,11-12,13+)
Conv ai.onnx(1-10,11+); com.ms.internal.nhwc(1-10,11+) need perf optimization; conv3d is not supported; need implementing activation
ConvTranspose ai.onnx(1-10,11+); com.ms.internal.nhwc(1-10,11+) need perf optimization; ConvTranspose3d is not supported; need implementing activation
Cos ai.onnx(7+)
Cosh ai.onnx(9+)
CumSum ai.onnx(11-13,14+)
DepthToSpace ai.onnx(11-12,13+); com.ms.internal.nhwc(11-12,13+)
Div ai.onnx(7-12,13,14+)
Einsum ai.onnx(12+)
Elu ai.onnx(6+)
Equal ai.onnx(7-10,11-12,13-18,19+)
Erf ai.onnx(9-12,13+)
Exp ai.onnx(6-12,13+)
Expand ai.onnx(8-12,13+)
FastGelu com.microsoft(1+)
Flatten ai.onnx(1-8,9-10,11-12,13+)
Floor ai.onnx(6-12,13+)
FusedConv com.microsoft(1+)
Gather ai.onnx(1-10,11-12,13+)
GatherElements ai.onnx(11-12,13+)
Gelu com.microsoft(1+)
Gemm ai.onnx(7-8,9-10,11-12,13+)
GlobalAveragePool ai.onnx(1+); com.ms.internal.nhwc(1+)
GlobalMaxPool ai.onnx(1+); com.ms.internal.nhwc(1+)
Greater ai.onnx(7-8,9-12,13+)
GreaterOrEqual ai.onnx(12-15,16+)
HardSigmoid ai.onnx(6+)
If ai.onnx(1-10,11-12,13-18,19+)
InstanceNormalization ai.onnx(6+); com.ms.internal.nhwc(6+)
LayerNormalization ai.onnx(17+)
LeakyRelu ai.onnx(6-15,16+)
Less ai.onnx(7-8,9-12,13+)
LessOrEqual ai.onnx(12-15,16+)
Log ai.onnx(6-12,13+)
MatMul ai.onnx(1-12,13+)
MatMulNBits com.microsoft(1+)
MaxPool ai.onnx(1-7,8-9,10,11,12+); com.ms.internal.nhwc(1-7,8-9,10,11,12+) need perf optimization; need implementing activation
MemcpyFromHost ai.onnx(1+)
MemcpyToHost ai.onnx(1+)
Mul ai.onnx(7-12,13,14+)
MultiHeadAttention com.microsoft(1+) need implementing mask and past/present
Neg ai.onnx(6-12,13+)
Not ai.onnx(1+)
Pad ai.onnx(2-10,11-12,13-17,18,19+)
Pow ai.onnx(7-11,12,13-14,15+)
Range ai.onnx(11+)
Reciprocal ai.onnx(6-12,13+)
ReduceL1 ai.onnx(1-10,11-12,13-17,18+)
ReduceL2 ai.onnx(1-10,11-12,13-17,18+)
ReduceLogSum ai.onnx(1-10,11-12,13-17,18+)
ReduceLogSumExp ai.onnx(1-10,11-12,13-17,18+)
ReduceMax ai.onnx(1-10,11,12,13-17,18+)
ReduceMean ai.onnx(1-10,11-12,13-17,18+)
ReduceMin ai.onnx(1-10,11,12,13-17,18+)
ReduceProd ai.onnx(1-10,11-12,13-17,18+)
ReduceSum ai.onnx(1-10,11-12,13+)
ReduceSumSquare ai.onnx(1-10,11-12,13-17,18+)
Relu ai.onnx(6-12,13,14+)
Reshape ai.onnx(5-12,13,14+) no GPU kernel
Resize ai.onnx(10,11-12,13-17,18,19+); com.ms.internal.nhwc(10,11-12,13-17,18,19+) CoordinateTransformMode align_corners is not supported with downsampling
RotaryEmbedding com.microsoft(1+)
Shape ai.onnx(1-12,13-14,15+) no GPU kernel; an ORT warning is generated - need to fix
Sigmoid ai.onnx(6-12,13+)
SimplifiedLayerNormalization ai.onnx(1+)
Sin ai.onnx(7+)
Sinh ai.onnx(9+)
SkipLayerNormalization com.microsoft(1+)
SkipSimplifiedLayerNormalization com.microsoft(1+)
Slice ai.onnx(1-9,10,11-12,13+)
Softmax ai.onnx(1-10,11-12,13+)
Split ai.onnx(1,2-10,11-12,13-17,18+)
Sqrt ai.onnx(6-12,13+)
Squeeze ai.onnx(1-10,11-12,13+)
Sub ai.onnx(7-12,13,14+)
Tan ai.onnx(7+)
Tanh ai.onnx(6-12,13+)
ThresholdedRelu ai.onnx(10+)
Tile ai.onnx(6-12,13+)
Transpose ai.onnx(1-12,13+) need perf optimization
Unsqueeze ai.onnx(1-10,11-12,13+)
Where ai.onnx(9-15,16+)