pub const SUPPORTED_OPS: &[rlx_ir::OpKind] = {
use rlx_ir::OpKind::*;
&[
Input,
Param,
Constant,
Activation,
Cast,
Binary,
MatMul,
LayerNorm,
RmsNorm,
Reduce,
Softmax,
Reshape,
Transpose,
Narrow,
Concat,
Gather,
Rope,
Attention,
FusedAttentionBlock,
AdaLayerNorm,
GatedResidual,
Compare,
Where,
Expand,
Cumsum,
ScatterAdd,
ScatterNd,
ScatterElements,
GatherNd,
GatherElements,
BatchNormInference,
GroupNorm,
LayerNorm2d,
LoraMatMul,
Conv,
ConvTranspose2d,
Pool,
TopK,
AxialRope2d,
ResizeNearest2x,
Interpolate3d,
StopGradient,
GroupedMatMul,
DequantMatMul,
DequantMoEWeights,
DequantGroupedMatMul,
Quantize,
Dequantize,
SelectiveScan,
GatedDeltaNet,
ArgMax,
ArgMin,
Reverse,
Fft,
LogMel,
Sample,
RngNormal,
RngUniform,
Lstm,
Scan,
ScanBackward,
ScanBackwardXs,
Gru,
Rnn,
Mamba2,
WelchPeaks,
Custom,
FakeQuantize,
FakeQuantizeLSQ,
FakeQuantizeLSQBackwardX,
FakeQuantizeLSQBackwardScale,
Fma,
ElementwiseRegion,
TransformRegion,
BatchElementwiseRegion,
DotGeneral,
DenseSolve,
BatchedDenseSolve,
Cholesky,
TriangularSolve,
Det,
LogDet,
Sort,
Svd,
Qr,
ArgSort,
Im2Col,
Conv3d,
ConvTranspose3d,
ReluBackward,
ActivationBackward,
FakeQuantizeBackward,
ComplexNormSq,
ComplexNormSqBackward,
Conjugate,
MaxPool2dBackward,
Conv2dBackwardInput,
Conv2dBackwardWeight,
MaxPool3dBackward,
Conv3dBackwardInput,
Conv3dBackwardWeight,
SoftmaxCrossEntropy,
SoftmaxCrossEntropyWithLogits,
SoftmaxCrossEntropyBackward,
AttentionBackward,
LayerNormBackwardInput,
LayerNormBackwardGamma,
RmsNormBackwardInput,
RmsNormBackwardGamma,
RmsNormBackwardBeta,
RopeBackward,
GroupNormBackwardInput,
GroupNormBackwardGamma,
GroupNormBackwardBeta,
BatchNormInferenceBackwardInput,
BatchNormInferenceBackwardGamma,
BatchNormInferenceBackwardBeta,
CumsumBackward,
GatherBackward,
PartitionedConv,
QMatMul,
QConv2d,
ScaledMatMul,
ScaledQuantize,
ScaledQuantScale,
ScaledDequantize,
FusedSwiGLU,
FusedMatMulBiasAct,
FusedConvBiasAct,
FusedResidualLN,
FusedResidualRmsNorm,
FusedTransformerLayer,
If,
While,
GaussianSplatRender,
GaussianSplatRenderBackward,
GaussianSplatPrepare,
GaussianSplatRasterize,
CustomFn,
FftButterflyStage,
LogMelBackward,
BiMap,
ReEig,
LogEig,
SpdBatchNorm,
SpdKarcherMean,
ReEigBackward,
LogEigBackward,
SpdBatchNormBackwardX,
SpdBatchNormBackwardG,
SpdKarcherMeanWeighted,
SpdLogMap,
SpdExpMap,
SpdParallelTransport,
SpdMatrixFnBatch,
SpdLogMapBackward,
SpdExpMapBackward,
SpdParallelTransportBackward,
SpdMatrixFnBatchBackward,
Eigh,
EighBackward,
EighBatch,
EighBatchBackward,
AdaLayerNormBackward,
GatedResidualBackward,
]
};
#[allow(dead_code)] pub const BACKWARD_OPS: &[rlx_ir::OpKind] = {
use rlx_ir::OpKind::*;
&[
ReluBackward,
ActivationBackward,
LayerNormBackwardInput,
LayerNormBackwardGamma,
GroupNormBackwardInput,
GroupNormBackwardGamma,
GroupNormBackwardBeta,
BatchNormInferenceBackwardInput,
BatchNormInferenceBackwardGamma,
BatchNormInferenceBackwardBeta,
RopeBackward,
AttentionBackward,
SoftmaxCrossEntropyBackward,
CumsumBackward,
GatherBackward,
FakeQuantizeBackward,
]
};
#[allow(dead_code)] pub const NATIVE_BACKWARD_OPS: &[rlx_ir::OpKind] = {
use rlx_ir::OpKind::*;
&[
RmsNormBackwardInput,
RmsNormBackwardGamma,
RmsNormBackwardBeta,
LayerNormBackwardInput,
LayerNormBackwardGamma,
GroupNormBackwardInput,
GroupNormBackwardGamma,
GroupNormBackwardBeta,
MaxPool2dBackward,
Conv2dBackwardInput,
Conv2dBackwardWeight,
AttentionBackward,
SoftmaxCrossEntropyWithLogits,
SoftmaxCrossEntropyBackward,
AdaLayerNormBackward,
GatedResidualBackward,
]
};
#[cfg(feature = "training")]
pub const SUPPORTED_OPS_TRAINING: &[rlx_ir::OpKind] = SUPPORTED_OPS;