Source code for afe.backends.ev.sima_ev_kernels

#########################################################
# 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", }