#########################################################
# Copyright (C) 2024 SiMa Technologies, Inc.
#
# This material is SiMa proprietary and confidential.
#
# This material may not be copied or distributed without
# the express prior written permission of SiMa.
#
# All rights reserved.
#########################################################
# Code owner: Wenhui Jia
#########################################################
"""
SiMa pre-built OpenVX/OpenCL kernels for EV
Each kernel has an equivalent EV transform implemented in the ev-transforms repo,
and the mapping from EV transform to SiMa prebuilt kernel is documented here.
Steps to add a new prebuilt kernel:
1) implement a corresponding EV transform in ev-transform repo and verifies
function equivalence to the prebuilt kernel;
2) add a corresponding transform class in afe/apis/transform.py;
3) add operator converter mapping to _OPERATOR_CONVERTERS in afe/backends/mpk/operator.py;
4) update this file.
"""
from typing import Type, Mapping
from afe.ir import operations as afe_op
[docs]
SIMA_EV_KERNELS: Mapping[Type[afe_op.AwesomeOperation], str] = {
afe_op.ArgMaxOp: "kernel_name_tbd",
afe_op.LayoutTransformOp: "kernel_name_tbd",
afe_op.TessellationTransformOp: "kernel_name_tbd",
afe_op.DetessellationTransformOp: "kernel_name_tbd",
afe_op.PackTransformOp: "kernel_name_tbd",
afe_op.UnpackTransformOp: "kernel_name_tbd",
afe_op.NormalizationTransformOp: "kernel_name_tbd",
afe_op.QuantizationTransformOp: "kernel_name_tbd",
afe_op.DequantizationTransformOp: "kernel_name_tbd",
afe_op.ResizeTransformOp: "kernel_name_tbd",
afe_op.ChromaUpsampleTransformOp: "kernel_name_tbd",
afe_op.YuvRgbConversionTransformOp: "kernel_name_tbd",
afe_op.BgrRgbConversionTransformOp: "kernel_name_tbd",
afe_op.StridedSliceOp: "kernel_name_tbd",
afe_op.SigmoidTransformOp: "kernel_name_tbd",
afe_op.NmsMaxpoolTransformOp: "kernel_name_tbd",
afe_op.SoftmaxOp: "kernel_name_tbd",
afe_op.ReshapeOp: "kernel_name_tbd",
afe_op.CastOp: "kernel_name_tbd",
}