kernel_context.h#
-
namespace onnx_light
Alias that makes onnx-light headers compatible with code that references
ONNX_LIGHT_NAMESPACE(the macro used in the standard onnx package).Set to
ONNX_LIGHT_NAMESPACEso both names resolve to the same namespace.Symbol-visibility attribute for the public onnx-light C++ API.
Defined as empty because onnx-light does not require explicit
__declspec(dllexport)or__attribute__((visibility("default")))annotations — visibility is controlled at the shared-library level. The macro is provided so that vendored ONNX headers that decorate their declarations withONNX_APIcompile without modification.Namespace alias so that ONNX C++ code (and consumers such as onnxruntime) that refers to the literal
onnxnamespace — rather than theONNX_NAMESPACEmacro — resolves to the onnx-light namespace. The standard onnx package lives innamespace onnx; onnx-light usesonnx_light(via ONNX_LIGHT_NAMESPACE), so this alias keeps onnx-light a true drop-in. It is only introduced when the onnx-light namespace differs fromonnx.-
namespace onnx_kernels
-
namespace kernel
Functions
-
class KernelBase#
- #include <kernel_context.h>
Base class for every backend test kernel.
Each concrete kernel class derives from
KernelBaseso it inherits ownership of the construction-timeKernelContextreference. Derived kernels access the context through the protectedctx_member and typically inheritKernelBase’s constructor viausing KernelBase::KernelBase;, which preserves theexplicitqualifier on the single-argument constructor.Centralizing the context member here keeps every kernel class consistent, makes it trivial to extend the construction-time interface (e.g. by adding new fields to
KernelContext), and avoids a repeated boilerplateconst KernelContext &ctx_;member in each kernel.Subclassed by onnx_light::onnx_kernels::kernel::Abs, onnx_light::onnx_kernels::kernel::Acos, onnx_light::onnx_kernels::kernel::Acosh, onnx_light::onnx_kernels::kernel::Adagrad, onnx_light::onnx_kernels::kernel::Adam, onnx_light::onnx_kernels::kernel::Add, onnx_light::onnx_kernels::kernel::AffineGrid, onnx_light::onnx_kernels::kernel::And, onnx_light::onnx_kernels::kernel::ArgReduce, onnx_light::onnx_kernels::kernel::ArrayFeatureExtractor, onnx_light::onnx_kernels::kernel::Asin, onnx_light::onnx_kernels::kernel::Asinh, onnx_light::onnx_kernels::kernel::Atan, onnx_light::onnx_kernels::kernel::Atanh, onnx_light::onnx_kernels::kernel::Attention, onnx_light::onnx_kernels::kernel::AveragePool, onnx_light::onnx_kernels::kernel::BatchNormalization, onnx_light::onnx_kernels::kernel::Bernoulli, onnx_light::onnx_kernels::kernel::Binarizer, onnx_light::onnx_kernels::kernel::BitCast, onnx_light::onnx_kernels::kernel::BitShift, onnx_light::onnx_kernels::kernel::BitwiseAnd, onnx_light::onnx_kernels::kernel::BitwiseNot, onnx_light::onnx_kernels::kernel::BitwiseOr, onnx_light::onnx_kernels::kernel::BitwiseXor, onnx_light::onnx_kernels::kernel::BlackmanWindow, onnx_light::onnx_kernels::kernel::Cast, onnx_light::onnx_kernels::kernel::CastLike, onnx_light::onnx_kernels::kernel::CastMap, onnx_light::onnx_kernels::kernel::CategoryMapper, onnx_light::onnx_kernels::kernel::CausalConvWithState, onnx_light::onnx_kernels::kernel::Ceil, onnx_light::onnx_kernels::kernel::Celu, onnx_light::onnx_kernels::kernel::CenterCropPad, onnx_light::onnx_kernels::kernel::Clip, onnx_light::onnx_kernels::kernel::Col2Im, onnx_light::onnx_kernels::kernel::Compress, onnx_light::onnx_kernels::kernel::Concat, onnx_light::onnx_kernels::kernel::ConcatFromSequence, onnx_light::onnx_kernels::kernel::Constant, onnx_light::onnx_kernels::kernel::ConstantOfShape, onnx_light::onnx_kernels::kernel::Conv, onnx_light::onnx_kernels::kernel::ConvInteger, onnx_light::onnx_kernels::kernel::ConvTranspose, onnx_light::onnx_kernels::kernel::Cos, onnx_light::onnx_kernels::kernel::Cosh, onnx_light::onnx_kernels::kernel::CumProd, onnx_light::onnx_kernels::kernel::CumSum, onnx_light::onnx_kernels::kernel::DFT, onnx_light::onnx_kernels::kernel::DeformConv, onnx_light::onnx_kernels::kernel::DelayedInitializer, onnx_light::onnx_kernels::kernel::DepthToSpace, onnx_light::onnx_kernels::kernel::DequantizeLinear, onnx_light::onnx_kernels::kernel::Det, onnx_light::onnx_kernels::kernel::DictVectorizer, onnx_light::onnx_kernels::kernel::Div, onnx_light::onnx_kernels::kernel::Dropout, onnx_light::onnx_kernels::kernel::DynamicQuantizeLinear, onnx_light::onnx_kernels::kernel::Einsum, onnx_light::onnx_kernels::kernel::Elu, onnx_light::onnx_kernels::kernel::Equal, onnx_light::onnx_kernels::kernel::Erf, onnx_light::onnx_kernels::kernel::Exp, onnx_light::onnx_kernels::kernel::Expand, onnx_light::onnx_kernels::kernel::EyeLike, onnx_light::onnx_kernels::kernel::FeatureVectorizer, onnx_light::onnx_kernels::kernel::Flatten, onnx_light::onnx_kernels::kernel::FlexAttention, onnx_light::onnx_kernels::kernel::Floor, onnx_light::onnx_kernels::kernel::GRU, onnx_light::onnx_kernels::kernel::Gather, onnx_light::onnx_kernels::kernel::GatherElements, onnx_light::onnx_kernels::kernel::GatherND, onnx_light::onnx_kernels::kernel::Gelu, onnx_light::onnx_kernels::kernel::Gemm, onnx_light::onnx_kernels::kernel::GlobalAveragePool, onnx_light::onnx_kernels::kernel::GlobalLpPool, onnx_light::onnx_kernels::kernel::GlobalMaxPool, onnx_light::onnx_kernels::kernel::Greater, onnx_light::onnx_kernels::kernel::GreaterOrEqual, onnx_light::onnx_kernels::kernel::GridSample, onnx_light::onnx_kernels::kernel::GroupNormalization, onnx_light::onnx_kernels::kernel::HammingWindow, onnx_light::onnx_kernels::kernel::HannWindow, onnx_light::onnx_kernels::kernel::HardSigmoid, onnx_light::onnx_kernels::kernel::HardSwish, onnx_light::onnx_kernels::kernel::Hardmax, onnx_light::onnx_kernels::kernel::Identity, onnx_light::onnx_kernels::kernel::If, onnx_light::onnx_kernels::kernel::ImageDecoder, onnx_light::onnx_kernels::kernel::Imputer, onnx_light::onnx_kernels::kernel::InstanceNormalization, onnx_light::onnx_kernels::kernel::IsInf, onnx_light::onnx_kernels::kernel::IsNaN, onnx_light::onnx_kernels::kernel::LRN, onnx_light::onnx_kernels::kernel::LSTM, onnx_light::onnx_kernels::kernel::LabelEncoder, onnx_light::onnx_kernels::kernel::LayerNormalization, onnx_light::onnx_kernels::kernel::LeakyRelu, onnx_light::onnx_kernels::kernel::Less, onnx_light::onnx_kernels::kernel::LessOrEqual, onnx_light::onnx_kernels::kernel::LinearAttention, onnx_light::onnx_kernels::kernel::LinearClassifier, onnx_light::onnx_kernels::kernel::LinearRegressor, onnx_light::onnx_kernels::kernel::Log, onnx_light::onnx_kernels::kernel::LogSoftmax, onnx_light::onnx_kernels::kernel::Loop, onnx_light::onnx_kernels::kernel::LpNormalization, onnx_light::onnx_kernels::kernel::LpPool, onnx_light::onnx_kernels::kernel::MatMul, onnx_light::onnx_kernels::kernel::MatMulInteger, onnx_light::onnx_kernels::kernel::Max, onnx_light::onnx_kernels::kernel::MaxPool, onnx_light::onnx_kernels::kernel::MaxRoiPool, onnx_light::onnx_kernels::kernel::MaxUnpool, onnx_light::onnx_kernels::kernel::Mean, onnx_light::onnx_kernels::kernel::MeanVarianceNormalization, onnx_light::onnx_kernels::kernel::MelWeightMatrix, onnx_light::onnx_kernels::kernel::Min, onnx_light::onnx_kernels::kernel::Mish, onnx_light::onnx_kernels::kernel::Mod, onnx_light::onnx_kernels::kernel::Momentum, onnx_light::onnx_kernels::kernel::Mul, onnx_light::onnx_kernels::kernel::Multinomial, onnx_light::onnx_kernels::kernel::Neg, onnx_light::onnx_kernels::kernel::NegativeLogLikelihoodLoss, onnx_light::onnx_kernels::kernel::NonMaxSuppression, onnx_light::onnx_kernels::kernel::NonZero, onnx_light::onnx_kernels::kernel::Normalizer, onnx_light::onnx_kernels::kernel::Not, onnx_light::onnx_kernels::kernel::OneHot, onnx_light::onnx_kernels::kernel::OneHotEncoder, onnx_light::onnx_kernels::kernel::Optional, onnx_light::onnx_kernels::kernel::OptionalGetElement, onnx_light::onnx_kernels::kernel::OptionalHasElement, onnx_light::onnx_kernels::kernel::Or, onnx_light::onnx_kernels::kernel::PRelu, onnx_light::onnx_kernels::kernel::Pad, onnx_light::onnx_kernels::kernel::Pow, onnx_light::onnx_kernels::kernel::QLinearConv, onnx_light::onnx_kernels::kernel::QLinearMatMul, onnx_light::onnx_kernels::kernel::QuantizeLinear, onnx_light::onnx_kernels::kernel::RMSNormalization, onnx_light::onnx_kernels::kernel::RNN, onnx_light::onnx_kernels::kernel::RandomNormal, onnx_light::onnx_kernels::kernel::RandomNormalLike, onnx_light::onnx_kernels::kernel::RandomUniform, onnx_light::onnx_kernels::kernel::RandomUniformLike, onnx_light::onnx_kernels::kernel::Range, onnx_light::onnx_kernels::kernel::Reciprocal, onnx_light::onnx_kernels::kernel::ReduceL1L2, onnx_light::onnx_kernels::kernel::ReduceLogSumOp, onnx_light::onnx_kernels::kernel::ReduceMean, onnx_light::onnx_kernels::kernel::ReduceMinMax, onnx_light::onnx_kernels::kernel::ReduceProd, onnx_light::onnx_kernels::kernel::ReduceSum, onnx_light::onnx_kernels::kernel::RegexFullMatch, onnx_light::onnx_kernels::kernel::Relu, onnx_light::onnx_kernels::kernel::Reshape, onnx_light::onnx_kernels::kernel::Resize, onnx_light::onnx_kernels::kernel::ReverseSequence, onnx_light::onnx_kernels::kernel::RoiAlign, onnx_light::onnx_kernels::kernel::RotaryEmbedding, onnx_light::onnx_kernels::kernel::Round, onnx_light::onnx_kernels::kernel::STFT, onnx_light::onnx_kernels::kernel::SVMClassifier, onnx_light::onnx_kernels::kernel::SVMRegressor, onnx_light::onnx_kernels::kernel::Scaler, onnx_light::onnx_kernels::kernel::Scan, onnx_light::onnx_kernels::kernel::Scatter, onnx_light::onnx_kernels::kernel::ScatterElements, onnx_light::onnx_kernels::kernel::ScatterND, onnx_light::onnx_kernels::kernel::Selu, onnx_light::onnx_kernels::kernel::SequenceAt, onnx_light::onnx_kernels::kernel::SequenceConstruct, onnx_light::onnx_kernels::kernel::SequenceEmpty, onnx_light::onnx_kernels::kernel::SequenceErase, onnx_light::onnx_kernels::kernel::SequenceInsert, onnx_light::onnx_kernels::kernel::SequenceLength, onnx_light::onnx_kernels::kernel::SequenceMap, onnx_light::onnx_kernels::kernel::Shape, onnx_light::onnx_kernels::kernel::Shrink, onnx_light::onnx_kernels::kernel::Sigmoid, onnx_light::onnx_kernels::kernel::Sign, onnx_light::onnx_kernels::kernel::Sin, onnx_light::onnx_kernels::kernel::Sinh, onnx_light::onnx_kernels::kernel::Size, onnx_light::onnx_kernels::kernel::Slice, onnx_light::onnx_kernels::kernel::Softmax, onnx_light::onnx_kernels::kernel::SoftmaxCrossEntropyLoss, onnx_light::onnx_kernels::kernel::Softplus, onnx_light::onnx_kernels::kernel::Softsign, onnx_light::onnx_kernels::kernel::SpaceToDepth, onnx_light::onnx_kernels::kernel::Split, onnx_light::onnx_kernels::kernel::SplitToSequence, onnx_light::onnx_kernels::kernel::Sqrt, onnx_light::onnx_kernels::kernel::Squeeze, onnx_light::onnx_kernels::kernel::StringConcat, onnx_light::onnx_kernels::kernel::StringNormalizer, onnx_light::onnx_kernels::kernel::StringSplit, onnx_light::onnx_kernels::kernel::Sub, onnx_light::onnx_kernels::kernel::Sum, onnx_light::onnx_kernels::kernel::Swish, onnx_light::onnx_kernels::kernel::Tan, onnx_light::onnx_kernels::kernel::Tanh, onnx_light::onnx_kernels::kernel::TensorScatter, onnx_light::onnx_kernels::kernel::TfIdfVectorizer, onnx_light::onnx_kernels::kernel::ThresholdedRelu, onnx_light::onnx_kernels::kernel::Tile, onnx_light::onnx_kernels::kernel::TopK, onnx_light::onnx_kernels::kernel::Transpose, onnx_light::onnx_kernels::kernel::TreeEnsemble, onnx_light::onnx_kernels::kernel::TreeEnsembleClassifier, onnx_light::onnx_kernels::kernel::TreeEnsembleRegressor, onnx_light::onnx_kernels::kernel::Trilu, onnx_light::onnx_kernels::kernel::Unique, onnx_light::onnx_kernels::kernel::Unsqueeze, onnx_light::onnx_kernels::kernel::Upsample, onnx_light::onnx_kernels::kernel::Where, onnx_light::onnx_kernels::kernel::Xor, onnx_light::onnx_kernels::kernel::ZipMap
Public Functions
-
inline explicit KernelBase(const KernelContext &ctx)#
Protected Attributes
-
const KernelContext &ctx_#
-
inline explicit KernelBase(const KernelContext &ctx)#
-
struct KernelContext#
- #include <kernel_context.h>
Construction-time context passed to backend test kernel classes.
Kernels are implemented as classes whose constructor takes a single
KernelContextargument. The context bundles the opset against which the kernel must behave so the same kernel class can specialize its computation (or perform opset-specific validation) without changing its call sites.Only the
opsetfield is exposed today; new construction-time inputs (for example a device descriptor or an allocator) can be added later as additional fields without breaking existing kernel classes.
-
struct OpsetId#
- #include <kernel_context.h>
Lightweight opset identifier used by the backend test library.
Mirrors the (domain, version) pair carried by
OperatorSetIdProtobut keeps the public API of this library independent from the proto type so test cases can be declared without touching the proto wire format.
-
class KernelBase#
-
namespace kernel
-
namespace onnx_kernels