Aidge backend CPU#
When imported automatically update availables implementations for aidge core objects.
Operator |
Support |
Impl specs
(
— = any ; ✱ = additional requirements) |
|---|---|---|
Abs |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int32 — → int32 — |
Add |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int8 — → int8 — 4.
int8 — → int32 — 5.
int8 — → int64 — 6.
int32 — → int32 — 7.
int64 — → int64 — 8.
uint8 — → uint8 — |
And |
✔️ |
1.
boolean — → boolean — |
ArgMax |
✔️ |
1.
float64 — → int64 — 2.
float32 — → int64 — 3.
int32 — → int64 — 4.
int64 — → int64 — |
Atan |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — |
AvgPooling1D |
✅ |
|
AvgPooling2D |
✔️ |
1.
float64 nchw → float64 nchw 2.
float32 nchw → float32 nchw 3.
int8 nchw → int8 nchw 4.
int32 nchw → int32 nchw |
AvgPooling3D |
✅ |
|
BatchNorm2D |
✔️ |
1.
float32 nchw → float32 nchw |
BitErrorRate |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int8 — → int8 — 4.
int32 — → int32 — |
BitShift |
✔️ |
1.
int32 — → int32 — 2.
int64 — → int64 — 3.
uint32 — → uint32 — 4.
uint64 — → uint64 — |
CastLike |
✅ |
|
Cast |
✅ |
|
Ceil |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — |
Clip |
✔️ |
1.
float64 — | — — | — — → float64 — 2.
float32 — → float32 — 3.
int8 — | — — | — — → int8 — 4.
int16 — | — — | — — → int16 — 5.
int32 — | — — | — — → int32 — 6.
int64 — | — — | — — → int64 — |
ComplexToInnerPair |
✅ |
|
Concat |
✅ |
|
ConstantOfShape |
✔️ |
1.
int64 — → float64 — 2.
int64 — → float32 — 3.
int64 — → float16 — 4.
int64 — → int16 — 5.
int64 — → int32 — 6.
int64 — → int64 — |
Conv1D |
✔️ |
1.
— nchw → float64 nchw 2.
— nchw → float32 nchw 3.
— nchw → float16 nchw 4.
— nchw → int32 nchw |
Conv2D |
✔️ |
1.
— nchw → float64 nchw 2.
— nchw → float32 nchw 3.
— nchw → float16 nchw 4.
— nchw → int32 nchw |
Conv3D |
✔️ |
1.
— nchw → float64 nchw 2.
— nchw → float32 nchw 3.
— nchw → float16 nchw 4.
— nchw → int32 nchw |
ConvDepthWise1D |
✔️ |
1.
— nchw → float64 nchw 2.
— nchw → float32 nchw 3.
— nchw → int32 nchw |
ConvDepthWise2D |
✔️ |
1.
— nchw → float64 nchw 2.
— nchw → float32 nchw 3.
— nchw → int32 nchw |
ConvTranspose1D |
✔️ |
1.
— nchw → float64 nchw 2.
— nchw → float32 nchw 3.
— nchw → float16 nchw 4.
— nchw → int32 nchw |
ConvTranspose2D |
✔️ |
1.
— nchw → float64 nchw 2.
— nchw → float32 nchw 3.
— nchw → float16 nchw 4.
— nchw → int32 nchw |
ConvTranspose3D |
✔️ |
1.
— nchw → float64 nchw 2.
— nchw → float32 nchw 3.
— nchw → float16 nchw 4.
— nchw → int32 nchw |
Cosh |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — |
Cos |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — |
CryptoHash |
✅ |
|
DepthToSpace |
✅ |
|
DFT |
✔️ |
1.
float64 — | — — → complex64 — 2.
float32 — | — — → complex32 — 3.
complex64 — | — — → complex64 — 4.
complex32 — | — — → complex32 — |
Div |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int32 — → int32 — 4.
int64 — → int64 — 5.
uint8 — → uint8 — |
Dropout |
✔️ |
1.
float64 — | — — | boolean — → float64 — | boolean — ✱ 12.
float64 — | — — | boolean — → float64 — | boolean — ✱ 13.
float32 — | — — | boolean — → float32 — | boolean — ✱ 14.
float32 — | — — | boolean — → float32 — | boolean — ✱ 1 |
Equal |
✔️ |
1.
float64 — | float64 — → boolean — 2.
float32 — | float32 — → boolean — 3.
boolean — | boolean — → boolean — 4.
int32 — | int32 — → boolean — 5.
int64 — | int64 — → boolean — |
Erf |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int32 — → int32 — |
Expand |
✔️ |
1.
float64 — | int64 — → float64 — 2.
float32 — | int64 — → float32 — 3.
float16 — | int64 — → float16 — 4.
int16 — | int64 — → int16 — 5.
int32 — | int64 — → int32 — 6.
int64 — | int64 — → int64 — |
Exp |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
float16 — → float16 — |
FC |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int8 — | int8 — | int32 — → int32 — 4.
int32 — → int32 — |
FixedNBitFlip |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int32 — → int32 — |
Flatten |
✅ |
|
Floor |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — |
Fold2D |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int32 — → int32 — |
Gather |
✅ |
|
Gemm |
☑️ |
|
GlobalAveragePooling |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int8 — → int8 — 4.
int32 — → int32 — |
GridSample |
✅ |
|
GRU |
☑️ |
|
HannWindow |
☑️ |
|
Hardmax |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int32 — → int32 — |
HardSigmoid |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — |
HardSwish |
☑️ |
|
Heaviside |
✔️ |
1.
float32 — → float32 — |
Identity |
✅ |
|
InnerPairToComplex |
✅ |
|
InstanceNorm |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — |
LayerNorm |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — |
LeakyReLU |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int32 — → int32 — |
Ln |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — |
LRN |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — |
LSTM |
☑️ |
|
MatMul |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int8 — → int32 — 4.
int32 — → int32 — |
Max |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int8 — → int8 — 4.
int16 — → int16 — 5.
int32 — → int32 — 6.
int64 — → int64 — 7.
uint8 — → uint8 — 8.
uint16 — → uint16 — |
MaxPooling1D |
✅ |
|
MaxPooling2D |
✔️ |
1.
float64 — → float64 — | int64 — 2.
float32 — → float32 — | int64 — 3.
int8 — → int8 — | int64 — 4.
int32 — → int32 — | int64 — |
MaxPooling3D |
✅ |
|
Memorize |
✅ |
|
Min |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int8 — → int8 — 4.
int16 — → int16 — 5.
int32 — → int32 — 6.
int64 — → int64 — 7.
uint8 — → uint8 — 8.
uint16 — → uint16 — |
Mod |
✔️ |
1.
float64 — | float64 — → float64 — 2.
float32 — | float32 — → float32 — 3.
float16 — | float16 — → float16 — 4.
int8 — | int8 — → int8 — 5.
int16 — | int16 — → int16 — 6.
int32 — | int32 — → int32 — 7.
int64 — | int64 — → int64 — 8.
uint8 — | uint8 — → uint8 — 9.
uint16 — | uint16 — → uint16 — 10.
uint32 — | uint32 — → uint32 — 11.
uint64 — | uint64 — → uint64 — |
Mul |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
float32 — | float64 — → float32 — 4.
int8 — | int8 — → int32 — 5.
int32 — → int32 — 6.
int32 — | int8 — → int32 — 7.
int64 — → int64 — 8.
uint8 — → uint8 — |
NBitFlip |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int32 — → int32 — |
Neg |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
float16 — → float16 — 4.
int32 — → int32 — 5.
int64 — → int64 — |
OneHot |
✔️ |
1.
float64 — | — — → float64 — 2.
float32 — | — — → float32 — 3.
int32 — | — — → int32 — 4.
int64 — | — — → int64 — |
PaddedAvgPooling2D |
☑️ |
|
PaddedConv1D |
☑️ |
|
PaddedConv2D |
☑️ |
|
PaddedConv3D |
☑️ |
|
PaddedConvDepthWise1D |
☑️ |
|
PaddedConvDepthWise2D |
☑️ |
|
PaddedConvTranspose1D |
☑️ |
|
PaddedConvTranspose2D |
☑️ |
|
PaddedConvTranspose3D |
☑️ |
|
PaddedMaxPooling2D |
☑️ |
|
Pad |
✔️ |
1.
float64 —1 | — — | — — | — — → float64 —1 2.
float32 —1 | — — | — — | — — → float32 —1 3.
float16 —1 | — — | — — | — — → float16 —1 4.
int8 —1 | — — | — — | — — → int8 —1 5.
int32 —1 | — — | — — | — — → int32 —1 |
Pop |
✅ |
|
Pow |
✔️ |
1.
— — → float64 — 2.
— — → float32 — 3.
— — → int8 — 4.
— — → int32 — 5.
— — → int64 — 6.
— — → uint8 — |
Producer |
✅ |
|
RandomNormalLike |
✔️ |
1.
— — → float64 — 2.
— — → float32 — |
Range |
✅ |
|
Reciprocal |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — |
ReduceMax |
✔️ |
1.
float64 — | — — → float64 — 2.
float32 — | — — → float32 — 3.
boolean — | — — → boolean — 4.
int32 — | — — → int32 — |
ReduceMean |
✔️ |
1.
float64 — | — — → float64 — 2.
float32 — | — — → float32 — 3.
int32 — | — — → int32 — |
ReduceMin |
✔️ |
1.
float64 — | — — → float64 — 2.
float32 — | — — → float32 — 3.
boolean — | — — → boolean — 4.
int32 — | — — → int32 — |
ReduceSum |
✔️ |
1.
float64 — | — — → float64 — 2.
float32 — | — — → float32 — 3.
int32 — | — — → int32 — |
ReLU |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int8 — → int8 — 4.
int32 — → int32 — |
Reshape |
✅ |
|
Resize |
✔️ |
1.
float64 — | — — | — — | — — → float64 — 2.
float32 — | — — | — — | — — → float32 — 3.
float16 — | — — | — — | — — → float16 — 4.
int8 — | — — | — — | — — → int8 — 5.
int16 — | — — | — — | — — → int16 — 6.
int32 — | — — | — — | — — → int32 — 7.
int64 — | — — | — — | — — → uint64 — |
Round |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — |
Scatter |
✔️ |
1.
float64 — | — — → float64 — 2.
float32 — | — — → float32 — 3.
int8 — | — — → int8 — 4.
int32 — | — — → int32 — |
Select |
✅ |
|
Shape |
✅ |
|
Sigmoid |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int32 — → int32 — |
Sinh |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — |
Sin |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — |
Slice |
✔️ |
1.
float64 — | — — → float64 — 2.
float32 — | — — → float32 — 3.
int32 — | — — → int32 — 4.
int64 — | — — → int64 — |
SLSTM |
☑️ |
|
Softmax |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int32 — → int32 — |
Split |
✅ |
|
Sqrt |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int32 — → int32 — |
Squeeze |
✅ |
|
Stack |
✅ |
|
STFT |
✔️ |
1.
float64 — | — — → complex64 — 2.
float32 — | — — → complex32 — 3.
complex64 — | — — → complex64 — 4.
complex32 — | — — → complex32 — |
Sub |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — 3.
int8 — → int8 — 4.
int32 — → int32 — 5.
int64 — → int64 — 6.
uint8 — → uint8 — |
Sum |
✔️ |
1.
— — → float64 — 2.
— — → float32 — 3.
— — → int32 — 4.
— — → int64 — |
Tanh |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — |
Tan |
✔️ |
1.
float64 — → float64 — 2.
float32 — → float32 — |
Tile |
✅ |
|
TopK |
✔️ |
1.
float64 — | — — → float64 — | int64 — 2.
float32 — | — — → float32 — | int64 — 3.
int8 — | — — → int8 — | int64 — 4.
int32 — | — — → int32 — | int64 — |
Transpose |
✅ |
|
Unfold2D |
✅ |
|
Unsqueeze |
✅ |
|
WeightInterleaving |
✔️ |
1.
binary — → octo_binary — 2.
int2 — → quad_int2 — 3.
uint2 — → quad_uint2 — 4.
int3 — → dual_int3 — 5.
uint3 — → dual_uint3 — 6.
int4 — → dual_int4 — 7.
uint4 — → dual_uint4 — |
Where |
✔️ |
1.
boolean — | — — | — — → float64 — 2.
boolean — | — — | — — → float32 — 3.
boolean — | — — | — — → int32 — 4.
boolean — | — — | — — → int64 — |