Browser Compatibility

DirectML Backend / Windows

WebNNCPUGPUNPU
Windowsβœ… LiteRT/XNNPACK
πŸš€β„ΉοΈ WCR/MLAS (deprecated)
βœ… DirectMLβœ… DirectML

The WebNN DirectML backend mainly supported on Windows.

WebNN SpecOperationsChromium Version
argMaxβœ… REDUCE_FUNCTION_ARGMAXM122
argMinβœ… REDUCE_FUNCTION_ARGMINM122
batchNormalizationβœ… BATCH_NORMALIZATIONM122
castβœ… CASTM122
clampβœ… ELEMENT_WISE_CLIPM119
concatβœ… JOINM120
conv2dβœ… CONVOLUTIONM119
convTranspose2dβœ… CONVOLUTIONM121
cumulativeSumβœ… CUMULATIVE_SUMMATIONM131
dequantizeLinearβœ… ELEMENT_WISE_DEQUANTIZE_LINEARM132
element-wise binary / addβœ… ELEMENT_WISE_ADDM119
element-wise binary / divβœ… ELEMENT_WISE_DIVIDEM119
element-wise binary / maxβœ… ELEMENT_WISE_MAXM119
element-wise binary / minβœ… ELEMENT_WISE_MINM119
element-wise binary / mulβœ… ELEMENT_WISE_MULTIPLYM119
element-wise binary / notEqualβœ… Emulated with ELEMENT_WISE_LOGICAL_EQUALS and ELEMENT_WISE_LOGICAL_NOTM134
element-wise binary / powβœ… ELEMENT_WISE_POWM119
element-wise binary / subβœ… ELEMENT_WISE_SUBTRACTM119
element-wise logical / equalβœ… ELEMENT_WISE_LOGICAL_EQUALSM122
element-wise logical / greaterβœ… ELEMENT_WISE_LOGICAL_GREATER_THANM122
element-wise logical / greaterOrEqualβœ… ELEMENT_WISE_LOGICAL_GREATER_THAN_OR_EQUALM122
element-wise logical / lesserβœ… ELEMENT_WISE_LOGICAL_LESS_THANM122
element-wise logical / lesserOrEqualβœ… ELEMENT_WISE_LOGICAL_LESS_THAN_OR_EQUALM122
element-wise logical / logicalAndβœ… ELEMENT_WISE_LOGICAL_ANDM131
element-wise logical / logicalOrβœ… ELEMENT_WISE_LOGICAL_ORM131
element-wise logical / logicalXorβœ… ELEMENT_WISE_LOGICAL_XORM131
element-wise logical / notβœ… ELEMENT_WISE_LOGICAL_NOTM121
element-wise unary / absβœ… ELEMENT_WISE_ABSM121
element-wise unary / ceilβœ… ELEMENT_WISE_CEILM121
element-wise unary / identityβœ… ELEMENT_WISE_IDENTITYM121
element-wise unary / cosβœ… ELEMENT_WISE_COSM121
element-wise unary / erfβœ… ELEMENT_WISE_ERFM121
element-wise unary / expβœ… ELEMENT_WISE_EXPM121
element-wise unary / floorβœ… ELEMENT_WISE_FLOORM121
element-wise unary / logβœ… ELEMENT_WISE_LOGM121
element-wise unary / negβœ… ELEMENT_WISE_NEGATEM121
element-wise unary / reciprocalβœ… ELEMENT_WISE_RECIPM121
element-wise unary / sinβœ… ELEMENT_WISE_SINM121
element-wise unary / sqrtβœ… ELEMENT_WISE_SQRTM121
element-wise unary / tanβœ… ELEMENT_WISE_TANM121
eluβœ… ACTIVATION_ELUM121
expandβœ… ELEMENT_WISE_IDENTITYM121
gatherβœ… GATHERM122
gatherElementsβœ… GATHER_ELEMENTSM130
gatherNDβœ… GATHER_NDM131
geluβœ… ACTIVATION_GELUM126
gemmβœ… GEMMM119
gruβœ… GRUM125
gruCellβœ… GRUM125
hardSigmoidβœ… ACTIVATION_HARD_SIGMOIDM123
hardSwishβœ… Map to other opM123
instanceNormalizationβœ… MEAN_VARIANCE_NORMALIZATION1M122
layerNormalizationβœ… MEAN_VARIANCE_NORMALIZATION1M122
leakyReluβœ… ACTIVATION_LEAKY_RELUM121
linearβœ… ACTIVATION_LINEARM122
lstmβœ… LSTMM125
lstmCellβœ… LSTMM125
matmulβœ… GEMMM121
padβœ… PADDINGM120
pooling / averagePool2dβœ… AVERAGE_POOLINGM119
pooling / l2Pool2dβœ… LP_POOLINGM123
pooling / maxPool2dβœ… MAX_POOLING2M119
preluβœ… ACTIVATION_PARAMETERIZED_RELUM120
quantizeLinearβœ… ELEMENT_WISE_QUANTIZE_LINEARM132
reduction / reduceL1βœ… REDUCE_FUNCTION_L1M121
reduction / reduceL2βœ… REDUCE_FUNCTION_L2M121
reduction / reduceLogSumβœ… REDUCE_FUNCTION_LOG_SUMM121
reduction / reduceLogSumExpβœ… REDUCE_FUNCTION_LOG_SUM_EXPM121
reduction / reduceMaxβœ… REDUCE_FUNCTION_MAXM121
reduction / reduceMeanβœ… REDUCE_FUNCTION_AVERAGEM121
reduction / reduceMinβœ… REDUCE_FUNCTION_MINM121
reduction / reduceProductβœ… REDUCE_FUNCTION_MULTIPLYM121
reduction / reduceSumβœ… REDUCE_FUNCTION_SUMM121
reduction / reduceSumSquareβœ… REDUCE_FUNCTION_SUM_SQUAREM121
reluβœ… ACTIVATION_RELUM119
resample2dβœ… RESAMPLEM121
reshapeβœ… Supported by tensor stridesM119
reverseβœ… SLICE1M133
scatterElementsβœ… SCATTER_ELEMENTSM132
scatterNDβœ… SCATTER_NDM131
sigmoidβœ… ACTIVATION_SIGMOIDM121
signβœ… ELEMENT_WISE_SIGNM130
sliceβœ… SLICEM120
softmaxβœ… ACTIVATION_SOFTMAXM119
softplusβœ… ACTIVATION_SOFTPLUSM122
softsignβœ… ACTIVATION_SOFTSIGNM123
splitβœ… SPLITM120
tanhβœ… ACTIVATION_TANHM121
tileβœ… TILEM130
transposeβœ… Supported by tensor stridesM120
triangularβœ… Supported by combined operationsM126
whereβœ… ELEMENT_WISE_IFM122

See Also

ONNX Layers supported using OpenVINO