ONE - On-device Neural Engine
|
Namespaces | |
namespace | compute |
namespace | pass |
namespace | sinf |
namespace | test |
namespace | tinf |
Data Structures | |
class | BuiltinOperatorMappingRule |
class | BuiltinOptionsExtractor |
class | BuiltinOptionsMappingRule |
struct | CanonicalizePass |
Class to canoncalize CircleNodes. More... | |
class | CircleAbs |
ABS in Circle. More... | |
class | CircleAbsGraphBuilder |
class | CircleAdd |
ADD in Circle. More... | |
class | CircleAddGraphBuilder |
class | CircleAddN |
ADD_N in Circle. More... | |
class | CircleAddNGraphBuilder |
class | CircleArgMax |
ARG_MAX in Circle. More... | |
class | CircleArgMaxGraphBuilder |
class | CircleArgMin |
ARG_Min in Circle. More... | |
class | CircleArgMinGraphBuilder |
class | CircleAveragePool2D |
AVERAGE_POOL_2D in Circle. More... | |
class | CircleAveragePool2DGraphBuilder |
class | CircleBatchMatMul |
BATCH_MATMUL in Circle. More... | |
class | CircleBatchMatMulGraphBuilder |
class | CircleBatchToSpaceND |
BATCH_TO_SPACE_ND in Circle. More... | |
class | CircleBatchToSpaceNDGraphBuilder |
class | CircleBCQFullyConnected |
BCQ_FULLY_CONNECTED in Circle. More... | |
class | CircleBCQFullyConnectedGraphBuilder |
class | CircleBCQGather |
BCQ_GATHER in Circle. More... | |
class | CircleBCQGatherGraphBuilder |
class | CircleBidirectionalSequenceLSTM |
BIDIRECTIONAL_SEQUENCE_LSTM in Circle. More... | |
class | CircleBidirectionalSequenceLSTMGraphBuilder |
class | CircleBidirectionalSequenceLSTMOut |
Virtual CIRCLEBIDIRECTIONAL_SEQUENCE_LSTM_OUT in Circle. More... | |
class | CircleBroadcastTo |
BroadcastTo in Circle. More... | |
class | CircleBroadcastToGraphBuilder |
class | CircleCast |
CAST in Circle. More... | |
class | CircleCastGraphBuilder |
class | CircleCeil |
CEIL in Circle. More... | |
class | CircleCeilGraphBuilder |
class | CircleConcatenation |
CONCATENATION in Circle. More... | |
class | CircleConcatenationGraphBuilder |
class | CircleConst |
Class to build tensor data. More... | |
class | CircleConstNodeBuilder |
Builder creates CircleConst node from Tensor with buffer. More... | |
class | CircleConv2D |
CONV_2D in Circle. More... | |
class | CircleConv2DGraphBuilder |
class | CircleCos |
COS in Circle. More... | |
class | CircleCosGraphBuilder |
class | CircleCumSum |
class | CircleCumSumGraphBuilder |
class | CircleCustom |
CUSTOM in Circle. More... | |
class | CircleCustomGraphBuilder |
class | CircleCustomOut |
Virtual CIRCLECUSTOMOUT in Circle. More... | |
class | CircleDensify |
DENSIFY in Circle. More... | |
class | CircleDensifyGraphBuilder |
class | CircleDepthToSpace |
DEPTH_TO_SPACE in Circle. More... | |
class | CircleDepthToSpaceGraphBuilder |
class | CircleDepthwiseConv2D |
DEPTHWISE_CONV_2D in Circle. More... | |
class | CircleDepthwiseConv2DGraphBuilder |
class | CircleDequantize |
DEQUANTIZE in Circle. More... | |
class | CircleDequantizeGraphBuilder |
class | CircleDialect |
A singleton for Circle Dialect. More... | |
class | CircleDiv |
DIV in Circle. More... | |
class | CircleDivGraphBuilder |
class | CircleElu |
ELU in Circle. More... | |
class | CircleEluGraphBuilder |
class | CircleEqual |
EQUAL in Circle. More... | |
class | CircleEqualGraphBuilder |
class | CircleExp |
EXP in Circle. More... | |
class | CircleExpandDims |
EXPAND_DIMS in Circle. More... | |
class | CircleExpandDimsGraphBuilder |
class | CircleExpGraphBuilder |
class | CircleExporter |
class | CircleExporterImpl |
class | CircleExportMetadata |
class | CircleFakeQuant |
FAKE_QUANT in Circle. More... | |
class | CircleFakeQuantGraphBuilder |
struct | CircleFileExpContract |
class | CircleFill |
FILL in Circle. More... | |
class | CircleFillGraphBuilder |
class | CircleFloor |
FLOOR in Circle. More... | |
class | CircleFloorDiv |
FLOOR_DIV in Circle. More... | |
class | CircleFloorDivGraphBuilder |
class | CircleFloorGraphBuilder |
class | CircleFloorMod |
FLOOR_MOD in Circle. More... | |
class | CircleFloorModGraphBuilder |
class | CircleFullyConnected |
FULLY_CONNECTED in Circle. More... | |
class | CircleFullyConnectedGraphBuilder |
class | CircleGather |
GATHER in Circle. More... | |
class | CircleGatherGraphBuilder |
class | CircleGatherNd |
GATHER_ND in Circle. More... | |
class | CircleGatherNdGraphBuilder |
class | CircleGelu |
GELU in Circle. More... | |
class | CircleGeluGraphBuilder |
class | CircleGreater |
Greater in Circle. More... | |
class | CircleGreaterEqual |
GREATER EQUAL in Circle. More... | |
class | CircleGreaterEqualGraphBuilder |
class | CircleGreaterGraphBuilder |
class | CircleGRU |
GRU in Circle. More... | |
class | CircleGRUGraphBuilder |
class | CircleHardSwish |
HardSwish in Circle. More... | |
class | CircleHardSwishGraphBuilder |
class | CircleIf |
IF in Circle. More... | |
class | CircleIfGraphBuilder |
class | CircleIfOut |
Virtual CIRCLEIFOUT in Circle. More... | |
class | CircleImportMetadata |
class | CircleInput |
CircleNode used for Input of the Graph. More... | |
class | CircleInstanceNorm |
INSTANCE_NORM in Circle. More... | |
class | CircleInstanceNormGraphBuilder |
class | CircleL2Normalize |
L2_NORMALIZATION in Circle. More... | |
class | CircleL2NormalizeGraphBuilder |
class | CircleL2Pool2D |
L2_POOL_2D in Circle. More... | |
class | CircleL2Pool2DGraphBuilder |
class | CircleLeakyRelu |
LEAKY_RELU in Circle. More... | |
class | CircleLeakyReluGraphBuilder |
class | CircleLess |
LESS in Circle. More... | |
class | CircleLessEqual |
LESS_EQUAL in Circle. More... | |
class | CircleLessEqualGraphBuilder |
class | CircleLessGraphBuilder |
class | CircleLocalResponseNormalization |
LOCAL_RESPONSE_NORMALIZATION in Circle. More... | |
class | CircleLocalResponseNormalizationGraphBuilder |
class | CircleLog |
LOG in Circle. More... | |
class | CircleLogGraphBuilder |
class | CircleLogicalAnd |
LOGICAL_AND in Circle. More... | |
class | CircleLogicalAndGraphBuilder |
class | CircleLogicalNot |
LOGICAL_NOT in Circle. More... | |
class | CircleLogicalNotGraphBuilder |
class | CircleLogicalOr |
LOGICAL_OR in Circle. More... | |
class | CircleLogicalOrGraphBuilder |
class | CircleLogistic |
LOGISTIC in Circle. More... | |
class | CircleLogisticGraphBuilder |
class | CircleLogSoftmax |
LOG_SOFTMAX in Circle. More... | |
class | CircleLogSoftmaxGraphBuilder |
class | CircleMatrixDiag |
MATRIX_DIAG in Circle. More... | |
class | CircleMatrixDiagGraphBuilder |
class | CircleMatrixSetDiag |
MATRIX_SET_DIAG in Circle. More... | |
class | CircleMatrixSetDiagGraphBuilder |
class | CircleMaximum |
MAXIMUM in Circle. More... | |
class | CircleMaximumGraphBuilder |
class | CircleMaxPool2D |
MAX_POOL_2D in Circle. More... | |
class | CircleMaxPool2DGraphBuilder |
class | CircleMean |
MEAN in Circle. More... | |
class | CircleMeanGraphBuilder |
class | CircleMinimum |
MINIMUM in Circle. More... | |
class | CircleMinimumGraphBuilder |
class | CircleMirrorPad |
MIRROR_PAD in Circle. More... | |
class | CircleMirrorPadGraphBuilder |
class | CircleMul |
MUL in Circle. More... | |
class | CircleMulGraphBuilder |
class | CircleNeg |
NEG in Circle. More... | |
class | CircleNegGraphBuilder |
struct | CircleNode |
class | CircleNodeExecutionPlan |
struct | CircleNodeImpl |
class | CircleNodeMixin |
class | CircleNodeMixin< CircleNodeTrait::Bias > |
Mixin class for nodes that has a bias input. More... | |
class | CircleNodeMixin< CircleNodeTrait::FusedActFunc > |
struct | CircleNodeMutableVisitor |
struct | CircleNodeMutableVisitorBase |
class | CircleNodeOrigin |
class | CircleNodeSummaryBuilder |
struct | CircleNodeVisitor |
struct | CircleNodeVisitorBase |
class | CircleNodeWithFEATURESSummaryBuilder |
class | CircleNodeWithINPUTSummaryBuilder |
class | CircleNodeWithReducerSummaryBuilder |
class | CircleNodeWithXSummaryBuilder |
class | CircleNodeWithXYSummaryBuilder |
class | CircleNonMaxSuppressionV4 |
NON_MAX_SUPPRESSION_V4 in Circle. More... | |
class | CircleNonMaxSuppressionV4GraphBuilder |
class | CircleNonMaxSuppressionV4Out |
Virtual NONMAXSUPPRESSIONV4OUT in Circle. More... | |
class | CircleNonMaxSuppressionV5 |
NON_MAX_SUPPRESSION_V5 in Circle. More... | |
class | CircleNonMaxSuppressionV5GraphBuilder |
class | CircleNonMaxSuppressionV5Out |
Virtual NONMAXSUPPRESSIONV5OUT in Circle. More... | |
class | CircleNotEqual |
NOT EQUAL in Circle. More... | |
class | CircleNotEqualGraphBuilder |
class | CircleOneHot |
ONEHOT in Circle. More... | |
class | CircleOneHotGraphBuilder |
class | CircleOptimizer |
class | CircleOutput |
CircleNode for Output of the Graph. More... | |
class | CircleOutputDummy |
Temporary DummyNode used with dangle CircleNode. More... | |
class | CircleOutputExclude |
CircleOutputExclude is used to specifying not exported nodes. More... | |
class | CirclePack |
PACK in Circle. More... | |
class | CirclePackGraphBuilder |
class | CirclePad |
PAD in Circle. More... | |
class | CirclePadGraphBuilder |
class | CirclePadV2 |
PADV2 in Circle. More... | |
class | CirclePadV2GraphBuilder |
class | CirclePow |
POW in Circle. More... | |
class | CirclePowGraphBuilder |
class | CirclePRelu |
PRelu in Circle. More... | |
class | CirclePReluGraphBuilder |
class | CircleQuantize |
QUANTIZE in Circle. More... | |
class | CircleQuantizeGraphBuilder |
class | CircleQuantizer |
struct | CircleQuantParam |
class | CircleRange |
RANGE in Circle. More... | |
class | CircleRangeGraphBuilder |
class | CircleRank |
RANK in Circle. More... | |
class | CircleRankGraphBuilder |
class | CircleReader |
Loads Circle file and provides helpers to access attributes. More... | |
class | CircleReduceAny |
REDUCE_ANY in Circle. More... | |
class | CircleReduceAnyGraphBuilder |
class | CircleReduceMax |
REDUCE_MAX in Circle. More... | |
class | CircleReduceMaxGraphBuilder |
class | CircleReduceMin |
REDUCE_MIN in Circle. More... | |
class | CircleReduceMinGraphBuilder |
class | CircleReduceProd |
REDUCE_PROD in Circle. More... | |
class | CircleReduceProdGraphBuilder |
class | CircleRelu |
RELU in Circle. More... | |
class | CircleRelu0To1 |
RELU_0_TO_1 in Circle. More... | |
class | CircleRelu0To1GraphBuilder |
class | CircleRelu6 |
RELU6 in Circle. More... | |
class | CircleRelu6GraphBuilder |
class | CircleReluGraphBuilder |
class | CircleReluN1To1 |
RELU_N1_TO_1 in Circle. More... | |
class | CircleReluN1To1GraphBuilder |
class | CircleReshape |
RESHAPE in Circle. More... | |
class | CircleReshapeGraphBuilder |
class | CircleResizeBilinear |
RESIZE_BILINEAR in Circle. More... | |
class | CircleResizeBilinearGraphBuilder |
class | CircleResizeNearestNeighbor |
RESIZE_NEAREST_NEIGHBOR in Circle. More... | |
class | CircleResizeNearestNeighborGraphBuilder |
class | CircleReverseSequence |
REVERSE_SEQUENCE in Circle. More... | |
class | CircleReverseSequenceGraphBuilder |
class | CircleReverseV2 |
ReverseV2 in Circle. More... | |
class | CircleReverseV2GraphBuilder |
class | CircleRmsNorm |
RMS_NORM in Circle. More... | |
class | CircleRmsNormGraphBuilder |
class | CircleRoPE |
ROPE in Circle. More... | |
class | CircleRoPEGraphBuilder |
class | CircleRound |
ROUND in Circle. More... | |
class | CircleRoundGraphBuilder |
class | CircleRsqrt |
RSQRT in Circle. More... | |
class | CircleRsqrtGraphBuilder |
class | CircleScatterNd |
SCATTER_ND in Circle. More... | |
class | CircleScatterNdGraphBuilder |
class | CircleSegmentSum |
SEGMENT_SUM in Circle. More... | |
class | CircleSegmentSumGraphBuilder |
class | CircleSelect |
SELECT in Circle. More... | |
class | CircleSelectGraphBuilder |
class | CircleSelectV2 |
SELECT_V2 in Circle. More... | |
class | CircleSelectV2GraphBuilder |
class | CircleShape |
SHAPE in Circle. More... | |
class | CircleShapeGraphBuilder |
class | CircleShapeInferencePass |
Pass to infer shape of circle nodes. More... | |
struct | CircleShapeInferenceRule |
class | CircleSin |
SIN in Circle. More... | |
class | CircleSinGraphBuilder |
class | CircleSlice |
SLICE in Circle. More... | |
class | CircleSliceGraphBuilder |
class | CircleSoftmax |
SOFTMAX in Circle. More... | |
class | CircleSoftmaxGraphBuilder |
class | CircleSpaceToBatchND |
SPACE_TO_BATCH_ND in Circle. More... | |
class | CircleSpaceToBatchNDGraphBuilder |
class | CircleSpaceToDepth |
SPACE_TO_DEPTH in Circle. More... | |
class | CircleSpaceToDepthGraphBuilder |
class | CircleSparseToDense |
SPARSE_TO_DENSE in Circle. More... | |
class | CircleSparseToDenseGraphBuilder |
class | CircleSplit |
SPLIT in Circle. More... | |
class | CircleSplitGraphBuilder |
class | CircleSplitOut |
Virtual CIRCLESPLITOUT in Circle. More... | |
class | CircleSplitV |
SPLIT_V in Circle. More... | |
class | CircleSplitVGraphBuilder |
class | CircleSplitVOut |
Virtual CIRCLESPLITVOUT in Circle. More... | |
class | CircleSqrt |
SQRT in Circle. More... | |
class | CircleSqrtGraphBuilder |
class | CircleSquare |
SQUARE in Circle. More... | |
class | CircleSquaredDifference |
SQUARED_DIFFERENCE in Circle. More... | |
class | CircleSquaredDifferenceGraphBuilder |
class | CircleSquareGraphBuilder |
class | CircleSqueeze |
SQUEEZE in Circle. More... | |
class | CircleSqueezeGraphBuilder |
class | CircleStridedSlice |
STRIDED_SLICE in Circle. More... | |
class | CircleStridedSliceGraphBuilder |
class | CircleSub |
SUB in Circle. More... | |
class | CircleSubGraphBuilder |
class | CircleSum |
SUM in Circle. More... | |
class | CircleSumGraphBuilder |
class | CircleSVDF |
SVDF in Circle. More... | |
class | CircleSVDFBuilder |
class | CircleTanh |
TANH in Circle. More... | |
class | CircleTanhGraphBuilder |
class | CircleTile |
TILE in Circle. More... | |
class | CircleTileGraphBuilder |
class | CircleTopKV2 |
TOPK_V2 in Circle. More... | |
class | CircleTopKV2GraphBuilder |
class | CircleTopKV2Out |
Virtual CIRCLETOPKV2OUT in Circle. More... | |
class | CircleTranspose |
TRANSPOSE in Circle. More... | |
class | CircleTransposeConv |
TRANSPOSE_CONV in Circle. More... | |
class | CircleTransposeConvGraphBuilder |
class | CircleTransposeGraphBuilder |
class | CircleTypeInferencePass |
Pass to infer type of circle nodes. More... | |
struct | CircleTypeInferenceRule |
Type Inference Rule for CircleDialect. More... | |
class | CircleUnidirectionalSequenceLSTM |
UNIDIRECTIONAL_SEQUENCE_LSTM in Circle. More... | |
class | CircleUnidirectionalSequenceLSTMGraphBuilder |
class | CircleUnique |
Unique in Circle. More... | |
class | CircleUniqueGraphBuilder |
class | CircleUniqueOut |
Virtual CIRCLEUNIQUEOUT in Circle. More... | |
class | CircleUnpack |
UNPACK in Circle. More... | |
class | CircleUnpackGraphBuilder |
class | CircleUnpackOut |
Virtual CIRCLEUNPACKOUT in Circle. More... | |
class | CircleVariable |
Virtual CircleVariable in Circle for 'variable' Tensor. More... | |
class | CircleWhere |
WHERE in Circle. More... | |
class | CircleWhereGraphBuilder |
class | CircleWhile |
WHILE in Circle. More... | |
class | CircleWhileGraphBuilder |
class | CircleWhileOut |
Virtual CIRCLEWHILEOUT in Circle. More... | |
class | CircleZerosLike |
ZEROS_LIKE in Circle. More... | |
class | CircleZerosLikeGraphBuilder |
struct | CloneContext |
class | CloneNode |
class | CloneNodeLet |
class | CloneNodeLet< CN::ABC > |
class | CloneNodeLet< CN::DEF > |
class | CloneNodeLet< CN::GHIJ > |
class | CloneNodeLet< CN::KLMN > |
class | CloneNodeLet< CN::OPQR > |
class | CloneNodeLet< CN::STUV > |
class | CloneNodeLet< CN::WXYZ > |
class | CommonSubExpressionEliminationPass |
Pass to perform CSE (Common Sub-expression Elimination) More... | |
class | CommonSubExpressionEliminationTestGraph |
class | ConnectNode |
class | ConstantFoldingAddTestGraph |
class | ConstantFoldingTestGraph |
struct | ConvertNCHWToNHWCPass |
Class to convert NCHW Ops to NHWC. More... | |
struct | ConvertToFakeQuantizedModelPass |
Class to convert a quantized model to a fake-quantized fp32 model. More... | |
class | CopyQuantParamPass |
Pass to copy quantparam (scale, zerop) of a tensor to another tensor. More... | |
struct | DeadNodeQueryServiceImpl |
struct | DecomposeHardSwishPass |
Class to decompose HardSwish to Add, Mul and Relu6. More... | |
struct | DecomposeSoftmaxPass |
Class to decompose Softmax into backend friendly structures. More... | |
class | Dilation |
class | DimMetaData |
class | DynamicBatchToSingleBatchPass |
Pass to convert dynamic batch to single batch. More... | |
struct | ExpandBroadcastConstPass |
Class to remove broadcasts of Const nodes. More... | |
struct | ExportContext |
class | Filter |
class | FixedArityNode |
Nodes with the fixed number of inputs. More... | |
struct | FoldAddV2Pass |
Class to fold AddV2 to a constant tensor. More... | |
struct | FoldCastPass |
Class to fold Cast to a constant tensor. More... | |
struct | FoldDensifyPass |
Class to Fold Densify if input is Sparse Constant. More... | |
struct | FoldDepthwiseConv2DPass |
Class to fold DepthwiseConv2D with constant input and filter into a constant tensor. More... | |
struct | FoldDequantizePass |
Class to fold Dequantize, which can be folded by constant inputs. More... | |
struct | FoldFullyConnectedPass |
Class to fold FullyConnected with constant input and filter into a constant tensor. More... | |
struct | FoldGatherPass |
Class to fold Gather to a constant tensor. More... | |
struct | FoldMulPass |
Class to fold Mul to a constant tensor. More... | |
struct | FoldReshapePass |
Class to fold Reshape to a constant tensor. More... | |
struct | FoldShapePass |
Class to fold Shape to a constant tensor. More... | |
struct | FoldSparseToDensePass |
Class to fold SparseToDense to a constant tensor. More... | |
struct | FoldSqueezePass |
Class to fold Squeeze to a constant tensor. More... | |
class | ForceQuantParamPass |
Pass to write quantparam (scale, zerop) to the specified tensors. More... | |
struct | ForwardReshapeToUnaryOpPass |
Class to Forward send Reshape after UnaryOp. More... | |
struct | ForwardTransposeOpPass |
Class to Forward Transpose Ops for further optimization. More... | |
struct | FuseActivationFunctionPass |
Class to fuse activation functions into preceding operators. More... | |
struct | FuseAddToFullyConnectedBiasPass |
Class to fuse Add to following FC bias. More... | |
struct | FuseAddWithConvPass |
Class to fuse CircleAdd into CircleConv2D. More... | |
struct | FuseAddWithFullyConnectedPass |
Class to fuse Add into FullyConnected. More... | |
struct | FuseAddWithTConvPass |
Class to fuse Add into CircleTransposeConv. More... | |
struct | FuseBatchNormWithConvPass |
Class to fuse Batch Normalization into CircleConv. More... | |
struct | FuseBatchNormWithDwConvPass |
Class to fuse Batch Normalization into CircleDepthWiseConv2D. More... | |
struct | FuseBatchNormWithTConvPass |
Class to fuse Batch Normalization into CircleTransposeConv. More... | |
struct | FuseBCQPass |
Class to fuse certain pattern of subgraph into CircleBCQFullyConnected or CircleBCQGather. More... | |
struct | FuseGeluPass |
Class to fuse certain pattern of subgraph into CircleGelu. More... | |
struct | FuseHorizontalFullyConnectedPass |
struct | FuseInstanceNormPass |
Class to fuse certain pattern of subgraph into CircleInstanceNorm with auxiliary nodes. More... | |
struct | FuseMeanWithMeanPass |
Class to fuse two Mean operations follow one by one into one Mean with merge reduction indices. More... | |
struct | FuseMulToFullyConnectedWeightsPass |
Class to fuse Mul into following FullyConnected. More... | |
struct | FuseMulWithConvPass |
Class to fuse Mul operation with a preceding Conv. More... | |
struct | FuseMulWithDivPass |
Class to fuse Mul operation with a Div operation. More... | |
struct | FuseMulWithFullyConnectedPass |
Class to fuse Mul into CircleFullyConnected. More... | |
struct | FusePreActivationBatchNormPass |
Class to fuse batch normalization of pre-activation. More... | |
struct | FusePReluPass |
Class to fuse certain pattern of subgraph into CirclePRelu with auxiliary nodes. More... | |
struct | FuseRmsNormPass |
Class to fuse certain pattern of subgraph into CircleRmsNorm. More... | |
struct | FuseRoPEPass |
Class to fuse certain pattern of subgraph into CircleRoPE with auxiliary nodes. More... | |
struct | FuseRsqrtPass |
Class to fuse certain pattern of subgraph into CircleRsqrt. More... | |
struct | FuseSliceWithTConvPass |
Class to fuse Slice operation with a preceding TConv. More... | |
struct | FuseTransposeWithMeanPass |
Class to fuse Mean operation with a preceding Transpose. More... | |
class | GraphBuilder |
Base of general single output graph builder(e.g., Conv2DGraphBuilder) More... | |
struct | GraphBuilderBase |
Interface of convert circle::OperatorT to CircleNode. More... | |
class | GraphBuilderContext |
Class to store context to build loco graph IR from TensorFlow. More... | |
class | GraphBuilderMultiOutput |
Base of general multiple outputs graph builder(e.g., CircleIfGraphBuilder) More... | |
class | GraphBuilderRegistry |
Class to return graph builder for Circle nodes. More... | |
struct | GraphBuilderSource |
class | Importer |
class | ImporterEx |
class | IndexNodeFinder |
class | IndexTensorOutputs |
Set of Tensor Index of outputs of operators including graph input nodes. More... | |
struct | InsertQuantizeOpOnDTypeMismatch |
struct | LayerInfo |
class | Logger |
Logger Implementation. More... | |
class | LoggerConfig |
Logger Configuration. More... | |
struct | LoggingContext |
Global logging context. More... | |
struct | MakeBatchNormGammaPositivePass |
Class to make negative gamma of batchnorm to a small positive value (1e-10) This pass can change the execution result of the model. So, use it only when the impact is known to be acceptable. More... | |
class | Module |
Collection of 'loco::Graph's. More... | |
class | ModuleProgressReporter |
class | NodeBuilderBase |
Creates nodes from given Tensor and context. More... | |
class | NodeFiller |
class | NodeSummaryBuilder |
class | NodeSummaryBuilderFactory |
struct | OpCode |
class | OperationExporterRule |
struct | PartedModule |
PartedModule holds partitioned module and group name. More... | |
struct | PartedModules |
struct | PartitionTable |
PartitionTable holds partition information. More... | |
class | Pass |
struct | PGroup |
Partition Group with Partition Nodes of same group and I/Os nodes. More... | |
struct | PGroups |
class | PhaseRunner |
class | PhaseRunner< logo::PhaseStrategy::Restart > |
class | PhaseRunner< logo::PhaseStrategy::Saturate > |
struct | PNode |
Partition Node with CircleNode with group name. More... | |
class | ProgressReporter |
struct | PropagateQParamBackwardPass |
Class to propagate quantization parameters of an operator's output to input. More... | |
struct | PropagateQParamForwardPass |
Class to propagate quantization parameters of an operator's input to output. More... | |
struct | QuantizeActivation |
Quantize non-const activation using recorded min/max values. More... | |
struct | QuantizeBias |
QuantizeBias quantizes tensors for bias. More... | |
struct | QuantizeConstInputActivation |
class | QuantizeDequantizeWeightsPass |
Pass to quantize weights. More... | |
class | QuantizeDequantizeWeightsWithGPTQPass |
Pass to quantize weights with GPTQ algorithm. More... | |
struct | QuantizedModelVerifier |
Class to verify quantized model. More... | |
struct | QuantizeOnnxDequantizeLinearPass |
Class to quantize ONNXDequantizeLinear operator. More... | |
class | QuantizeOnnxFakeQuantModelPass |
Pass to create a quantized graph from a graph fake-quantized on onnx. More... | |
struct | QuantizeOnnxQDQPass |
Class to quantize ONNX QuantizeLinear-DequantizeLinear operator. More... | |
class | QuantizePreCheckerPass |
Pass to verify the input model has the form acceptable by quantizer. More... | |
struct | QuantizeSpecialActivation |
Quantize non-const activaion using pre-defined scale/zp for special Ops. More... | |
struct | QuantizeWeights |
QuantizeWeights quantizes tensors for weights. More... | |
struct | QuantizeWeightsOnly |
QuantizeWeightsOnly quantizes tensors for weights. More... | |
class | QuantizeWeightsPass |
Pass to quantize weights. More... | |
class | QuantizeWithMinMaxPass |
Pass to quantize activation, weights, and bias. More... | |
struct | QuantizeWithPredecessorPass |
Class to quantize nodes using their predecessors' qparam. More... | |
struct | RemoveDuplicateConstPass |
Class to remove duplicate Const nodes. More... | |
struct | RemoveFakeQuantPass |
Class to Remove FakeQuant node. More... | |
struct | RemoveGatherGuardPass |
Class to remove Add+FloorMod guard ops of Gather. More... | |
struct | RemoveQDQForMixedPrecisionOpPass |
Class to remove QDQ pattern for mixed-precision Ops. More... | |
struct | RemoveQuantDequantSeqPass |
Class to Remove Quantize-Dequantize sequence. More... | |
struct | RemoveRedundantDequantizePass |
Class to remove redundant dequantize operations. More... | |
struct | RemoveRedundantQuantizePass |
Class to remove redundant quantize operations. More... | |
struct | RemoveRedundantReshapePass |
Class to remove redundant Reshape node into 1 Reshape node. More... | |
struct | RemoveRedundantTransposePass |
fuse or remove subsequent Transpose operators More... | |
struct | RemoveUnnecessaryAddPass |
Class to temove unnecessary(input and output are same) Add node. More... | |
struct | RemoveUnnecessaryCastPass |
Class to remove unnecessary Cast nodes. More... | |
struct | RemoveUnnecessaryReshapeNetPass |
Class to remove unnecessary Reshape nodes. More... | |
struct | RemoveUnnecessaryReshapePass |
Class to Remove Unnecessary(input shape and output shape same) Reshape node. More... | |
struct | RemoveUnnecessarySlicePass |
Class to Remove Unnecessary(input and output are same) Slice node. More... | |
struct | RemoveUnnecessarySplitPass |
Remove unnecessary Split OP. More... | |
struct | RemoveUnnecessaryStridedSlicePass |
Class to Remove Unnecessary(input and output are same) StridedSlice node. More... | |
struct | RemoveUnnecessaryTransposeNetPass |
struct | ReplaceMulAddWithDepthwiseConvPass |
Class to replace channel-wise mul/add with CircleDepthwiseConv2D. More... | |
struct | ReplaceNonConstFCWithBatchMatMulPass |
Class to replace "FC with non-const weight" with Batched MatMul. More... | |
struct | ReplaceSubWithAddPass |
Class to Replace Sub With Add. More... | |
struct | ReplaceWithFCGeluFCPass |
Class to generate FC-Gelu-FC from a certain Op pattern. More... | |
class | RequantizePass |
Pass to re-quantize graph (ex: int8 -> uint8) More... | |
struct | ResolveCustomOpAddPass |
Class to resolve certain custom op of subgraph into add op in circle schema. More... | |
struct | ResolveCustomOpBatchMatMulPass |
Class to resolve certain custom op of subgraph into batchmatmul op in circle schema. More... | |
struct | ResolveCustomOpMatMulPass |
Class to resolve certain custom op of subgraph into matmul op in circle schema. More... | |
struct | ResolveCustomOpMaxPoolWithArgmaxPass |
Class to resolve custom op MaxPoolWithArgmax to subgraph with circle's MaxPool and ArgMax. More... | |
struct | ResolveCustomOpSplitVPass |
Class to resolve certain custom op of subgraph into splitv op in circle schema. More... | |
struct | ResolveFormerCustomOpPass |
Class to convert a custom operator to a built-in operator. More... | |
struct | SerializedGraphData |
struct | SerializedModelData |
struct | ShapeDescription |
struct | ShuffleWeightTo16x1Float32Pass |
Class to convert weight format of FullyConnected to SHUFFLED16x1FLOAT32. More... | |
class | SparseIndexVector |
class | Sparsifier |
struct | SparsifyTensorPass |
Pass to sparsify tensor. More... | |
struct | SparsityParam |
class | Stride |
struct | SubGraphContext |
Record the information of T/F Lite SubGraph and its mapping to loco. More... | |
struct | SubstituteExpandDimsToReshapePass |
Class to substitute ExpandDims to single reshape node. More... | |
struct | SubstitutePackToReshapePass |
Class to Substitute Pack with 1 input to single reshape node. More... | |
struct | SubstitutePadV2ToPadPass |
Class to substitute PadV2 in certain condition to Pad. More... | |
struct | SubstituteSplitVToSplitPass |
Class to substitute certain SplitV to Split. More... | |
struct | SubstituteSqueezeToReshapePass |
Class to Substitute Squeeze to Reshape node for certain conditions. More... | |
struct | SubstituteStridedSliceToReshapePass |
Class to substitute Strided_Slice with certain condition to single reshape node. More... | |
struct | SubstituteTransposeToReshapePass |
Class to Substitute Transpose with certain input shape condition to single reshape node. More... | |
struct | TransformMinMaxToRelu6Pass |
Class to transform Maximum(Minimum(input, 6), 0) to Relu6. More... | |
struct | TransformMinReluToRelu6Pass |
Class to transform Relu(Minimum(input, 6)) to Relu6. More... | |
struct | TransformSqrtDivToRsqrtMulPass |
Class to transform Div(X,Sqrt(y)) to Mul(X,Rsqrt(y)) More... | |
class | TypedNodeBuilder |
Placeholder for builders of tensors with different types. More... | |
struct | TypeMapper |
TypeMapper maps between c++ primitive data type and loco::DataType. More... | |
struct | TypeMapper< float > |
struct | TypeMapper< int16_t > |
struct | TypeMapper< int32_t > |
struct | TypeMapper< int64_t > |
struct | TypeMapper< int8_t > |
struct | TypeMapper< uint16_t > |
struct | TypeMapper< uint32_t > |
struct | TypeMapper< uint64_t > |
struct | TypeMapper< uint8_t > |
struct | UnrollUnidirectionalSequenceLSTMPass |
Class to Unroll UnidirectionalSequenceLSTM. More... | |
struct | UserSettings |
UserSettings provides user settings by key-value. More... | |
class | UserSettingsImpl |
class | VariadicArityNode |
Nodes with the variadic inputs. More... | |
class | VectorWrapper |
Wrapper to use flatbuffers::Vector pointer as std::vector entity. More... | |
class | VerifyQuantizedBiasScale |
Verify the scale of quantized bias node. More... | |
class | VerifyQuantizedNodeChannelWiseGranularity |
class | VerifyQuantizedNodeGranularity |
Verify the granualrity of quantized node. More... | |
class | VerifyQuantizedNodeLayerWiseGranularity |
class | VerifyQuantizedNodeS16Type |
class | VerifyQuantizedNodeType |
Verify the data type of quantized node. More... | |
class | VerifyQuantizedNodeTypeBase |
Verify using quantization type of a node and bias. More... | |
class | VerifyQuantizedNodeU8Type |
struct | VirtualOutputDetector |
struct | XpSepActFromTransposeConvPass |
Experimental Class to separate activation functions from TransposeConv. More... | |
Typedefs | |
using | CircleTensorIndex = int32_t |
using | TensorIndex = int32_t |
using | OriginTable = std::map< uint32_t, std::shared_ptr< CircleNodeOrigin > > |
using | NodeName = std::string |
using | ExecutionPlanTable = std::map< uint32_t, std::vector< uint32_t > > |
using | LuciNodeTrait = CircleNodeTrait |
template<LuciNodeTrait T> | |
using | LuciNodeMixin = CircleNodeMixin< T > |
using | FormattedGraph = locop::FormattedGraphImpl< locop::Formatter::LinearV1 > |
using | MapNode2Clone = std::map< const CircleNode *, CircleNode * > |
using | GroupKey = std::string |
using | HessianMap = std::unordered_map< const luci::CircleNode *, std::vector< float > > |
using | LayerInfoMap = std::unordered_map< std::string, luci::LayerInfo > |
using | Phase = std::vector< std::unique_ptr< Pass > > |
using | CircleNodeID = uint32_t |
Enumerations | |
enum class | NodeBuilderType { BUFFER } |
Tensor types which requires separated node. More... | |
enum class | FusedActFunc { UNDEFINED , NONE , RELU , RELU_N1_TO_1 , RELU6 , TANH , SIGN_BIT } |
enum class | MirrorPadMode { UNDEFINED , REFLECT , SYMMETRIC } |
enum class | Padding { UNDEFINED , SAME , VALID } |
enum class | RoPEMode { UNDEFINED , GPT_NEOX , GPT_J } |
enum class | CircleNodeTrait { FusedActFunc , Bias } |
enumeration of mixin class More... | |
enum class | CircleOpcode { CIRCLE_NODE , CIRCLE_VNODE } |
enum class | ShapeStatus { UNDEFINED , NOSHAPE , VALID } |
ShapeStatus is to remember circle node shape status. More... | |
enum | DimensionType { DENSE , SPARSE_CSR } |
enum | SparseIndexVectorType { NONE , I32 , U16 , U8 } |
enum | QuantizationGranularity { LayerWise = 0 , ChannelWise = 1 } |
enum | ActivationQType { MinMax , PreDefinedLogistic , PreDefinedTanh , PreDefinedSoftmax , IntScale } |
enum class | CN { ABC , DEF , GHIJ , KLMN , OPQR , STUV , WXYZ } |
Functions | |
circle::ActivationFunctionType | to_circle_actfunc (luci::FusedActFunc func) |
circle::TensorType | to_circle_tensortype (loco::DataType type) |
circle::MirrorPadMode | to_circle_mirrorpadmode (luci::MirrorPadMode mode) |
circle::RoPEMode | to_circle_rope (luci::RoPEMode mode) |
circle::FullyConnectedOptionsWeightsFormat | to_circle_weightsformat (luci::CircleFullyConnected::WeightsFormat format) |
circle::DimensionType | to_circle_dimensiontype (luci::DimensionType type) |
flatbuffers::Offset< void > | to_circle_sparse_index_vector (flatbuffers::FlatBufferBuilder &fb, const SparseIndexVector &sparse_idx_vec) |
circle::SparseIndexVector | to_circle_sparse_index_vector_type (luci::SparseIndexVectorType type) |
circle::BuiltinOperator | circle_builtin_operator (const luci::CircleNode *node) |
circle::BuiltinOptions | circle_builtin_options (const luci::CircleNode *node) |
std::string | circle_custom_code (const luci::CircleNode *node) |
flatbuffers::Offset< flatbuffers::Vector< uint8_t > > | circle_custom_options (flatbuffers::FlatBufferBuilder &fb, const luci::CircleNode *node) |
circle::Padding | getOpPadding (const loco::Padding2D *pad, const loco::Stride< 2 > *stride, const ShapeDescription &ifm, const ShapeDescription &ofm) |
circle::Padding | getOpPadding (const luci::Padding pad) |
void | set_tensor_index (loco::Node *node, const CircleTensorIndex &tensor_id) |
void | clear_tensor_index (loco::Node *node) |
CircleTensorIndex | get_tensor_index (loco::Node *node) |
bool | check_size_limit (const flatbuffers::FlatBufferBuilder &fb, const uint64_t data_size) |
std::vector< flatbuffers::Offset< circle::Metadata > > | createCircleMetadataVector (flatbuffers::FlatBufferBuilder &builder, SerializedModelData &md) |
Create Metadata corresponding to model metadata. | |
void | exportNodes (loco::Graph *g, flatbuffers::FlatBufferBuilder &builder, SerializedModelData &md, SerializedGraphData &gd) |
create Operators corresponding to model nodes | |
void | prepareModelData (flatbuffers::FlatBufferBuilder &builder, SerializedModelData &md) |
one time preparation for SerializedModelData | |
void | exportOpDefinedTensors (loco::Graph *g, flatbuffers::FlatBufferBuilder &builder, SerializedModelData &md, SerializedGraphData &gd) |
create Tensors corresponding to results of all nodes in graph | |
void | clearExportInfo (loco::Graph *g) |
clear temporary export information annotated to graph nodes | |
const char * | tensor_name (const circle::Tensor *tensor) |
const circle::QuantizationParameters * | tensor_quantization (const circle::Tensor *tensor) |
loco::DataType | luci_datatype (circle::TensorType type) |
FusedActFunc | luci_actfunc (const circle::ActivationFunctionType type) |
Padding | luci_padding (const circle::Padding padding) |
MirrorPadMode | luci_mirrorpad_mode (const circle::MirrorPadMode mode) |
RoPEMode | luci_rope_mode (const circle::RoPEMode mode) |
luci::CircleFullyConnected::WeightsFormat | luci_weights_format (const circle::FullyConnectedOptionsWeightsFormat weights_format) |
std::unique_ptr< CircleQuantParam > | luci_quantparam (const circle::QuantizationParameters *quantization) |
void | copy_tensor_attributes (const circle::Tensor *tensor, CircleNode *node) |
Copy common tensor attributes such as name, type, etc. to node. | |
std::string | fb_string2std_string (const flatbuffers::String *fb_str) |
template<typename T > | |
VectorWrapper< T > | wrap (const flatbuffers::Vector< T > *vec) |
CircleVariable * | create_circlevariable (GraphBuilderContext *context, int32_t tensor_index) |
DimensionType | luci_dim_type (const circle::DimensionType dim_type) |
SparseIndexVector | luci_sparse_index_vector (const circle::SparseIndexVectorUnion &sparse_index_vector) |
std::unique_ptr< CircleQuantParam > | luci_quantparam (const circle::QuantizationParametersT *quantization) |
std::unique_ptr< SparsityParam > | luci_sparsityparam (const circle::SparsityParametersT *sparsity) |
std::unique_ptr< SparsityParam > | luci_sparsityparam (const circle::SparsityParameters *sparparam) |
REGISTER_WRAPPER (flatbuffers::Offset< circle::SubGraph >) | |
REGISTER_WRAPPER (flatbuffers::Offset< circle::Buffer >) | |
REGISTER_WRAPPER (flatbuffers::Offset< circle::Tensor >) | |
REGISTER_WRAPPER (flatbuffers::Offset< circle::Operator >) | |
REGISTER_WRAPPER (flatbuffers::Offset< circle::OperatorCode >) | |
REGISTER_WRAPPER (flatbuffers::Offset< circle::Metadata >) | |
REGISTER_WRAPPER (int32_t) | |
REGISTER_WRAPPER (uint8_t) | |
bool | validate_batch_space_nd (const GraphBuilderBase::ValidateArgs &args) |
bool | validate_minmax (const GraphBuilderBase::ValidateArgs &args) |
bool | validate_reduce_minmax (const GraphBuilderBase::ValidateArgs &args) |
void | link (loco::GraphOutput *, CircleOutput *) |
Link GraphOutput with CircleOutput node. | |
void | link (loco::GraphInput *, CircleInput *) |
Link GraphInput with CircleInput node. | |
CircleOutput * | output_node (loco::Graph *g, const loco::GraphOutputIndex &index) |
Find a CircleOutput node with a given output index. | |
CircleInput * | input_node (loco::Graph *g, const loco::GraphInputIndex &index) |
Find a Pull node with a given input index. | |
void | copy_quantparam (const luci::CircleNode *src, luci::CircleNode *dst) |
copy CircleQuantParam of src to dst | |
uint32_t | size (loco::DataType data_type) |
Returns the size of the data type. | |
std::unique_ptr< Module > | make_module (void) |
INSTANTIATE (loco::DataType::S64) | |
INSTANTIATE (loco::DataType::S32) | |
INSTANTIATE (loco::DataType::S16) | |
INSTANTIATE (loco::DataType::S8) | |
INSTANTIATE (loco::DataType::S4) | |
INSTANTIATE (loco::DataType::FLOAT32) | |
INSTANTIATE (loco::DataType::U8) | |
INSTANTIATE (loco::DataType::U4) | |
INSTANTIATE (loco::DataType::BOOL) | |
INSTANTIATE (loco::DataType::FLOAT16) | |
template<> | |
uint32_t | CircleConst::size< loco::DataType::STRING > (void) const |
template<> | |
void | CircleConst::size< loco::DataType::STRING > (uint32_t l) |
template<> | |
const std::string & | CircleConst::at< loco::DataType::STRING > (uint32_t n) const |
template<> | |
std::string & | CircleConst::at< loco::DataType::STRING > (uint32_t n) |
template<> | |
const std::string & | CircleConst::scalar< loco::DataType::STRING > (void) const |
template<> | |
std::string & | CircleConst::scalar< loco::DataType::STRING > (void) |
FormattedGraph | fmt (loco::Graph *g) |
void | clone_connect (const luci::CircleNode *node, luci::CloneContext &clonecontext) |
Connect cloned node from input node. | |
PartedModules | apply (Module *module, const PartitionTable &partition) |
Method to do paritioning from module and PartitionTable to produce PartedModules. | |
bool | validate (luci::PartitionTable &partition) |
std::string | opcode_name (const CircleNode *node) |
void | remove_unused_inputoutputs (luci::PGroups *, const luci::Module *) |
This will remove unused inputs/outputs in each pgroup of pgroups. | |
void | dump (std::ostream &os, const PNode *pnode) |
void | dump (std::ostream &os, const PGroup *pgroup) |
void | dump (std::ostream &os, const PGroups *pgroups) |
std::unique_ptr< luci::PGroups > | merge_pgroups (const luci::PGroups *s_pgroups) |
This will merge pgroups with same group values in topological order. | |
std::unique_ptr< luci::PGroups > | produce_pgroups (const luci::Module *source, const luci::PartitionTable &partition) |
This will produce a PGroups from Module and PartitionTable. | |
luci::PartedModules | produce_pmodules (const luci::PGroups *pgroups) |
This will produce list of luci::Module as PartedModules from pgroups. | |
void | dump (std::ostream &os, const PartedModule *pmodule) |
void | dump (std::ostream &os, const PartedModules *pmodules) |
void | dynamic_batch_to_single_batch (luci::Module *) |
template void | SparsifyTensorPass::sparsify_tensor< loco::DataType::S32 > (luci::CircleConst *cop) |
template void | SparsifyTensorPass::sparsify_tensor< loco::DataType::S8 > (luci::CircleConst *cop) |
template void | SparsifyTensorPass::sparsify_tensor< loco::DataType::FLOAT32 > (luci::CircleConst *cop) |
bool | is_batchnorm_add (const luci::CircleAdd *add, luci::CircleMul *&mul, luci::CircleConst *&beta) |
Find Mul-Add pattern and return Mul and beta as BatchNorm. | |
bool | is_batchnorm_add (const luci::CircleAdd *add) |
Find Mul-Add pattern. | |
bool | is_batchnorm_mul (const luci::CircleMul *mul, luci::CircleNode *&pred_node, luci::CircleConst *&gamma) |
Find Const-Mul pattern and return Node and gamma as BatchNorm. | |
bool | fuse_activation_function (luci::CircleNode *node) |
bool | fuse_sub_with_conv (luci::CircleSub *sub) |
bool | fuse_add_with_conv (luci::CircleAdd *add, std::vector< luci::CircleSub * > &sub_list) |
bool | fuse_mul_with_conv (luci::CircleMul *mul) |
bool | swap_mul_add (luci::CircleAdd *add, std::vector< luci::CircleMul * > &mul_list, std::vector< luci::CircleAdd * > &add_list) |
bool | to_compute (const Padding padding, compute::PaddingType &padding_type) |
bool | to_compute (const FusedActFunc act, compute::FusedActFunc &act_func) |
template<typename T > | |
CircleConst * | create_const_node (loco::Graph *g, const loco::DataType dtype, const std::vector< uint32_t > &shape, const T value) |
template<typename T > | |
luci::CircleConst * | create_const_node (loco::Graph *g, const loco::DataType dtype, const std::vector< uint32_t > &shape, const std::vector< T > &values) |
std::vector< loco::Node * > | inference_candidates (loco::Graph *g) |
Enumerate all the nodes whose shape/dtype should be inferenced to export graph. | |
LayerInfoMap | layer_info_map (loco::Graph *g, std::vector< LayerInfo > &layers_info) |
template<class ARG_TYPE_1 , class ARG_TYPE_2 > | |
NodeFiller< ARG_TYPE_1, ARG_TYPE_2 > | fill (ARG_TYPE_1 **arg_1, ARG_TYPE_2 **arg_2) |
bool | is_same_shape (const luci::CircleNode *node, const loco::TensorShape &shape) |
bool | is_same_shape (const luci::CircleNode *node, const std::initializer_list< uint32_t > shape) |
bool | has_dynamic_shape (const loco::Node *node) |
sparsity::TfLiteDimensionType | to_tflite_sparsity (luci::DimensionType dt) |
sparsity::TfLiteIntArray * | to_tflite_sparsity (const luci::SparseIndexVector &data) |
sparsity::TfLiteSparsity | to_tflite_sparsity (const luci::SparsityParam *sp) |
template<typename T > | |
sparsity::TfLiteIntArray * | makeTfLiteArray (const std::vector< T > &data) |
sparsity::TfLiteDimensionMetadata * | makeTfLiteDimensionMetadata (const std::vector< luci::DimMetaData > &data) |
void | freeTfLiteSparsity (sparsity::TfLiteSparsity &tflsp) |
bool | in_array (const std::string &str, const std::vector< std::string > &array) |
std::string | to_string (const std::vector< std::string > &strings) |
std::string | to_lower_case (std::string s) |
loco::DataType | str_to_dtype (const std::string &str) |
std::vector< loco::DataType > | str_vec_to_dtype_vec (std::vector< std::string > &vec) |
QuantizationGranularity | str_to_granularity (const std::string &str) |
void | propagate_concat_quantparam (luci::CircleConcatenation *concat) |
void | propagate_pad_v2_quantparam (luci::CirclePadV2 *pad_v2) |
bool | is_quantized (const CircleNode *node) |
bool | is_fp32 (const CircleNode *node) |
uint8_t | fp32_to_uint8_cast (float f) |
void | asymmetric_wquant_with_minmax_per_layer (CircleConst *node, float min, float max, float &scaling_factor, int64_t &zp, float &nudged_min, float &nudged_max) |
void | symmetric_wquant_with_minmax_per_layer (CircleConst *node, float min, float max, float &scaling_factor, float &nudged_min, float &nudged_max) |
int32_t | max_for_sym_quant (const loco::DataType &type) |
void | compute_sym_scale (float min, float max, float &scaling_factor, float &nudged_min, float &nudged_max, loco::DataType out_type) |
void | compute_asym_scale_zp (float min, float max, float &scaling_factor, int64_t &zp, float &nudged_min, float &nudged_max) |
bool | get_channel_dim_index (CircleConst *node, loco::TensorShape &dimension, int32_t &channel_dim_index) |
uint32_t | cal_offset (loco::TensorShape &dimension, uint32_t *indices) |
ActivationQType | activation_qtype (const CircleNode *node) |
std::unique_ptr< CircleQuantParam > | make_predefined_qparam (ActivationQType qtype, loco::DataType dtype, CircleQuantParam *old_quant_param) |
void | set_int_scale (luci::CircleNode *node) |
void | quant_const (luci::CircleConst *node, loco::DataType quant_type) |
void | warn_accuracy_with_range (luci::CircleNode *n) |
bool | is_onnx_dequantize_linear (const luci::CircleCustom *node) |
bool | is_onnx_quantize_linear (const luci::CircleCustom *node) |
std::unique_ptr< CircleQuantParam > | make_predefined_qparam (CircleNode *node, loco::DataType dtype) |
bool | has_execution_plan (const luci::CircleNode *circle_node) |
void | add_execution_plan (luci::CircleNode *circle_node, const luci::CircleNodeExecutionPlan &execution_plan) |
luci::CircleNodeExecutionPlan | get_execution_plan (const luci::CircleNode *circle_node) |
bool | has_node_id (const luci::CircleNode *circle_node) |
void | set_node_id (luci::CircleNode *circle_node, CircleNodeID id) |
CircleNodeID | get_node_id (const luci::CircleNode *circle_node) |
std::shared_ptr< CircleNodeOrigin > | single_origin (uint32_t id, const std::string &name) |
std::shared_ptr< CircleNodeOrigin > | composite_origin (const std::initializer_list< std::shared_ptr< CircleNodeOrigin > > origins) |
std::shared_ptr< CircleNodeOrigin > | composite_origin (const std::vector< std::shared_ptr< CircleNodeOrigin > > &origins) |
void | change_outputs (loco::Graph *, const std::vector< std::string > &) |
Change output to nodes with string name. | |
void | copy_common_attributes (const luci::CircleNode *src, luci::CircleNode *dst) |
Copy common attributes of CircleNode from src to dst. | |
CircleNode * | clone_node (const CircleNode *node, loco::Graph *graph) |
Return a new cloned CircleNode object with same attributes value of node to graph. | |
luci::CircleConst * | clone (luci::CircleConst *node) |
Return cloned object of CircleConst node. | |
ShapeDescription | to_shape_description (const luci::CircleNode *node) |
ShapeDescription | to_shape_description (const loco::TensorShape &shape) |
ShapeDescription | to_shape_description (const loco::NodeShape &shape) |
template<typename Permutation > | |
bool | isNHWC (Permutation *perm) |
template<> | |
bool | isNHWC (loco::Permutation< loco::Domain::Feature > *perm) |
template<> | |
bool | isNHWC (loco::Permutation< loco::Domain::Filter > *perm) |
bool | validate (loco::Graph *) |
bool | validate_name (loco::Graph *) |
Return true if all nodes in graph have non empty name. | |
bool | validate_unique_name (luci::Module *) |
Return true if all names in the Module are unique. | |
bool | validate (luci::Module *) |
bool | validate_shape (loco::Graph *) |
bool | validate_shape (luci::Module *) |
loco::NodeShape | shape_get (const loco::Node *node) |
bool | shape_known (const loco::Node *node) |
loco::DataType | dtype_get (const loco::Node *node) |
bool | dtype_known (const loco::Node *node) |
@Note Methods in this file provides helper functions to reduce duplicate codes
using luci::CircleNodeID = typedef uint32_t |
Definition at line 25 of file CircleNodeID.h.
using luci::CircleTensorIndex = typedef int32_t |
Definition at line 61 of file CircleExporterUtils.h.
using luci::ExecutionPlanTable = typedef std::map<uint32_t, std::vector<uint32_t> > |
Definition at line 23 of file ExecutionPlanTable.h.
using luci::FormattedGraph = typedef locop::FormattedGraphImpl<locop::Formatter::LinearV1> |
Definition at line 28 of file LogHelper.h.
using luci::GroupKey = typedef std::string |
Definition at line 32 of file PartitionIR.h.
using luci::HessianMap = typedef std::unordered_map<const luci::CircleNode *, std::vector<float> > |
Definition at line 31 of file QuantizeDequantizeWeightsWithGPTQPass.h.
using luci::LayerInfoMap = typedef std::unordered_map<std::string, luci::LayerInfo> |
Definition at line 27 of file LayerInfoMap.h.
using luci::LuciNodeMixin = typedef CircleNodeMixin<T> |
Definition at line 29 of file LuciNodeMixins.h.
using luci::LuciNodeTrait = typedef CircleNodeTrait |
Definition at line 27 of file LuciNodeMixins.h.
using luci::MapNode2Clone = typedef std::map<const CircleNode * , CircleNode * > |
(Original) (Clone)
[A] [A'] | [B] | [B'] | | | | \ / \ / [C] [C']
From view of [C'] we need to find [A'] and [B']. We know [C] from [C'], then we can get from input of [C] as [A], [B] then [A]->[A'] and [B]->[B'] from the map.
Definition at line 42 of file ConnectNode.h.
using luci::NodeName = typedef std::string |
Definition at line 35 of file CircleNodeDecl.h.
using luci::OriginTable = typedef std::map<uint32_t, std::shared_ptr<CircleNodeOrigin> > |
Definition at line 32 of file CircleImportMetadata.h.
using luci::Phase = typedef std::vector<std::unique_ptr<Pass> > |
Definition at line 29 of file ModulePhase.h.
using luci::TensorIndex = typedef int32_t |
Definition at line 32 of file GraphBuilderContext.h.
Enumerator | |
---|---|
MinMax | |
PreDefinedLogistic | |
PreDefinedTanh | |
PreDefinedSoftmax | |
IntScale |
Definition at line 72 of file QuantizationUtils.h.
|
strong |
enumeration of mixin class
Enumerator | |
---|---|
FusedActFunc | |
Bias |
Definition at line 31 of file CircleNodeMixins.h.
|
strong |
Enumerator | |
---|---|
CIRCLE_NODE | |
CIRCLE_VNODE |
Definition at line 23 of file CircleOpcode.h.
|
strong |
enum luci::DimensionType |
Enumerator | |
---|---|
DENSE | |
SPARSE_CSR |
Definition at line 28 of file SparsityParam.h.
|
strong |
Enumerator | |
---|---|
UNDEFINED | |
NONE | |
RELU | |
RELU_N1_TO_1 | |
RELU6 | |
TANH | |
SIGN_BIT |
Definition at line 24 of file AttrFusedActFunc.h.
|
strong |
Enumerator | |
---|---|
UNDEFINED | |
REFLECT | |
SYMMETRIC |
Definition at line 23 of file AttrMirrorPadMode.h.
|
strong |
Tensor types which requires separated node.
Enumerator | |
---|---|
BUFFER |
Definition at line 31 of file NodeBuilder.h.
|
strong |
Enumerator | |
---|---|
UNDEFINED | |
SAME | |
VALID |
Definition at line 23 of file AttrPadding.h.
Enumerator | |
---|---|
LayerWise | |
ChannelWise |
Definition at line 27 of file QuantizationParameters.h.
|
strong |
Enumerator | |
---|---|
UNDEFINED | |
GPT_NEOX | |
GPT_J |
Definition at line 23 of file AttrRoPEMode.h.
|
strong |
ShapeStatus is to remember circle node shape status.
Enumerator | |
---|---|
UNDEFINED | |
NOSHAPE | |
VALID |
Definition at line 28 of file PropertyShapeStatus.h.
ActivationQType luci::activation_qtype | ( | const CircleNode * | node | ) |
Definition at line 300 of file QuantizationUtils.cpp.
References IntScale, MinMax, luci::CircleNode::opcode(), PreDefinedLogistic, PreDefinedSoftmax, PreDefinedTanh, RETURN_INPUT_ACTIVATION_QTYPE, and TANH.
Referenced by luci::QuantizeSpecialActivation::visit(), luci::QuantizeSpecialActivation::visit(), luci::QuantizeSpecialActivation::visit(), and luci::QuantizeSpecialActivation::visit().
void luci::add_execution_plan | ( | luci::CircleNode * | circle_node, |
const luci::CircleNodeExecutionPlan & | execution_plan | ||
) |
Definition at line 62 of file CircleNodeExecutionPlan.cpp.
References loco::AnnotatedItem< Annotation >::annot().
PartedModules luci::apply | ( | Module * | module, |
const PartitionTable & | partition | ||
) |
Method to do paritioning from module and PartitionTable to produce PartedModules.
This will return Partitioned Modules object.
Definition at line 36 of file Partition.cpp.
References INFO, LOGGER, merge_pgroups(), produce_pgroups(), produce_pmodules(), and remove_unused_inputoutputs().
Referenced by entry().
void luci::asymmetric_wquant_with_minmax_per_layer | ( | CircleConst * | node, |
float | min, | ||
float | max, | ||
float & | scaling_factor, | ||
int64_t & | zp, | ||
float & | nudged_min, | ||
float & | nudged_max | ||
) |
Definition at line 46 of file QuantizationUtils.cpp.
References luci::CircleConst::at(), compute_asym_scale_zp(), flatbuffers::data(), luci::CircleConst::size(), and size.
Referenced by quant_const().
uint32_t luci::cal_offset | ( | loco::TensorShape & | dimension, |
uint32_t * | indices | ||
) |
Definition at line 287 of file QuantizationUtils.cpp.
References loco::TensorShape::dim(), and loco::Dimension::value().
void luci::change_outputs | ( | loco::Graph * | graph, |
const std::vector< std::string > & | new_outputs | ||
) |
Change output to nodes with string name.
Definition at line 48 of file ChangeOutputs.cpp.
References output_node(), output_shape, and size.
Referenced by entry().
|
inline |
Definition at line 68 of file CircleExporterUtils.h.
References FLATBUFFERS_SIZE_MAX, and flatbuffers::FlatBufferBuilder::GetSize().
circle::BuiltinOperator luci::circle_builtin_operator | ( | const luci::CircleNode * | node | ) |
Definition at line 189 of file CircleExporterUtils.cpp.
References luci::CircleNode::accept(), and luci::BuiltinOperatorMappingRule::get().
Referenced by luci::OperationExporterRule::visit().
circle::BuiltinOptions luci::circle_builtin_options | ( | const luci::CircleNode * | node | ) |
Definition at line 194 of file CircleExporterUtils.cpp.
References luci::CircleNode::accept(), and luci::BuiltinOptionsMappingRule::get().
Referenced by luci::OperationExporterRule::visit().
std::string luci::circle_custom_code | ( | const luci::CircleNode * | node | ) |
Definition at line 205 of file CircleExporterUtils.cpp.
Referenced by luci::OperationExporterRule::visit().
flatbuffers::Offset< flatbuffers::Vector< uint8_t > > luci::circle_custom_options | ( | flatbuffers::FlatBufferBuilder & | fb, |
const luci::CircleNode * | node | ||
) |
Definition at line 216 of file CircleExporterUtils.cpp.
References flatbuffers::FlatBufferBuilder::CreateVector().
Referenced by luci::OperationExporterRule::visit().
std::string & luci::CircleConst::at< loco::DataType::STRING > | ( | uint32_t | n | ) |
Definition at line 109 of file CircleConst.cpp.
const std::string & luci::CircleConst::at< loco::DataType::STRING > | ( | uint32_t | n | ) | const |
Definition at line 102 of file CircleConst.cpp.
std::string & luci::CircleConst::scalar< loco::DataType::STRING > | ( | void | ) |
Definition at line 123 of file CircleConst.cpp.
const std::string & luci::CircleConst::scalar< loco::DataType::STRING > | ( | void | ) | const |
Definition at line 116 of file CircleConst.cpp.
void luci::CircleConst::size< loco::DataType::STRING > | ( | uint32_t | l | ) |
Definition at line 95 of file CircleConst.cpp.
uint32_t luci::CircleConst::size< loco::DataType::STRING > | ( | void | ) | const |
Definition at line 88 of file CircleConst.cpp.
void luci::clear_tensor_index | ( | loco::Node * | node | ) |
Definition at line 314 of file CircleExporterUtils.cpp.
References loco::AnnotatedItem< Annotation >::annot().
Referenced by clearExportInfo().
void luci::clearExportInfo | ( | loco::Graph * | g | ) |
clear temporary export information annotated to graph nodes
Definition at line 724 of file CircleTensorExporter.cpp.
References clear_tensor_index().
luci::CircleConst * luci::clone | ( | luci::CircleConst * | node | ) |
Return cloned object of CircleConst node.
Definition at line 107 of file CircleConst.cpp.
References copy_common_attributes(), and loco::Node::graph().
Referenced by luci::CloneContext::emplace(), propagate_concat_quantparam(), and propagate_pad_v2_quantparam().
void luci::clone_connect | ( | const luci::CircleNode * | node, |
luci::CloneContext & | clonecontext | ||
) |
Connect cloned node from input node.
Definition at line 24 of file ConnectNode.cpp.
References luci::CircleNode::accept().
luci::CircleNode * luci::clone_node | ( | const CircleNode * | node, |
loco::Graph * | graph | ||
) |
Return a new cloned CircleNode object with same attributes value of node to graph.
Definition at line 70 of file CircleNodeClone.cpp.
References luci::CircleNode::accept(), and copy_common_attributes().
std::shared_ptr< CircleNodeOrigin > luci::composite_origin | ( | const std::initializer_list< std::shared_ptr< CircleNodeOrigin > > | origins | ) |
Definition at line 126 of file CircleNodeOrigin.cpp.
Referenced by luci::CircleImportMetadata::origin_table().
std::shared_ptr< CircleNodeOrigin > luci::composite_origin | ( | const std::vector< std::shared_ptr< CircleNodeOrigin > > & | origins | ) |
Definition at line 138 of file CircleNodeOrigin.cpp.
void luci::compute_asym_scale_zp | ( | float | min, |
float | max, | ||
float & | scaling_factor, | ||
int64_t & | zp, | ||
float & | nudged_min, | ||
float & | nudged_max | ||
) |
Definition at line 150 of file QuantizationUtils.cpp.
References fp32_to_uint8_cast(), LOGGER, and WARN.
Referenced by asymmetric_wquant_with_minmax_per_layer(), and luci::QuantizeActivation::visit().
void luci::compute_sym_scale | ( | float | min, |
float | max, | ||
float & | scaling_factor, | ||
float & | nudged_min, | ||
float & | nudged_max, | ||
loco::DataType | out_type | ||
) |
Definition at line 116 of file QuantizationUtils.cpp.
References max_for_sym_quant().
Referenced by symmetric_wquant_with_minmax_per_layer(), and luci::QuantizeActivation::visit().
void luci::copy_common_attributes | ( | const luci::CircleNode * | src, |
luci::CircleNode * | dst | ||
) |
Copy common attributes of CircleNode from src to dst.
Definition at line 33 of file CircleNodeClone.cpp.
References copy_quantparam(), luci::CircleNode::name(), luci::CircleNode::op_version(), luci::CircleNode::shape_status(), and luci::CircleNode::sparsityparam().
Referenced by clone(), and clone_node().
void luci::copy_quantparam | ( | const luci::CircleNode * | src, |
luci::CircleNode * | dst | ||
) |
copy CircleQuantParam of src to dst
Definition at line 28 of file CircleQuantParam.cpp.
References luci::CircleNode::quantparam().
Referenced by copy_common_attributes(), and luci::CopyQuantParamPass::run().
void luci::copy_tensor_attributes | ( | const circle::Tensor * | tensor, |
CircleNode * | node | ||
) |
Copy common tensor attributes such as name, type, etc. to node.
Definition at line 272 of file CircleReader.cpp.
References luci_datatype(), luci_quantparam(), luci_sparsityparam(), luci::CircleNode::name(), luci::CircleNode::quantparam(), luci::CircleNode::sparsityparam(), tensor_name(), and wrap().
Referenced by luci::GraphBuilder::build(), luci::GraphBuilderMultiOutput::build(), luci::CircleWhileGraphBuilder::build(), luci_interpreter::CircleReferencingConstNodeBuilder::build(), luci::CircleConstNodeBuilder::build(), and create_circlevariable().
CircleVariable * luci::create_circlevariable | ( | GraphBuilderContext * | context, |
int32_t | tensor_index | ||
) |
Definition at line 48 of file CircleVariable.cpp.
References copy_tensor_attributes(), luci::GraphBuilderContext::graph(), INFO, LOGGER, luci::GraphBuilderContext::reader(), luci::CircleReader::tensors(), VALID, and wrap().
luci::CircleConst * luci::create_const_node | ( | loco::Graph * | g, |
const loco::DataType | dtype, | ||
const std::vector< uint32_t > & | shape, | ||
const std::vector< T > & | values | ||
) |
Definition at line 61 of file CreateCircleConst.h.
References luci::CircleConst::at(), size, and VALID.
CircleConst * luci::create_const_node | ( | loco::Graph * | g, |
const loco::DataType | dtype, | ||
const std::vector< uint32_t > & | shape, | ||
const T | value | ||
) |
Definition at line 33 of file CreateCircleConst.h.
References luci::CircleConst::at(), size, and VALID.
std::vector< flatbuffers::Offset< circle::Metadata > > luci::createCircleMetadataVector | ( | flatbuffers::FlatBufferBuilder & | builder, |
luci::SerializedModelData & | md | ||
) |
Create Metadata corresponding to model metadata.
Definition at line 129 of file CircleExportMetadata.cpp.
References luci::SerializedModelData::_metadata, luci::CircleExportMetadata::encoded_execution_plan_table(), luci::CircleExportMetadata::encoded_op_table(), luci::CircleExportMetadata::encoded_source_table(), luci::UserSettings::ExecutionPlanGen, luci::UserSettings::ProfilingDataGen, and luci::UserSettings::settings().
loco::DataType luci::dtype_get | ( | const loco::Node * | node | ) |
Definition at line 22 of file CircleTypeInferenceHelper.cpp.
References dtype_known().
bool luci::dtype_known | ( | const loco::Node * | node | ) |
Definition at line 28 of file CircleTypeInferenceHelper.cpp.
Referenced by dtype_get().
void luci::dump | ( | std::ostream & | os, |
const PartedModule * | pmodule | ||
) |
Definition at line 26 of file PartitionPModulesDump.cpp.
References fmt(), and luci::PartedModule::group.
void luci::dump | ( | std::ostream & | os, |
const PartedModules * | pmodules | ||
) |
Definition at line 32 of file PartitionPModulesDump.cpp.
References dump(), and luci::PartedModules::pmodules.
void luci::dump | ( | std::ostream & | os, |
const PGroup * | pgroup | ||
) |
Definition at line 32 of file PartitionIRDump.cpp.
References dump(), luci::PGroup::group, luci::PGroup::inputs, luci::PGroup::outputs, and luci::PGroup::pnodes.
void luci::dump | ( | std::ostream & | os, |
const PGroups * | pgroups | ||
) |
Definition at line 49 of file PartitionIRDump.cpp.
References dump(), luci::PGroups::node2group, opcode_name(), and luci::PGroups::pgroups.
void luci::dump | ( | std::ostream & | os, |
const PNode * | pnode | ||
) |
Definition at line 26 of file PartitionIRDump.cpp.
References luci::PNode::group, luci::CircleNode::name(), luci::PNode::node, and opcode_name().
Referenced by dump(), dump(), dump(), operator<<(), and operator<<().
void luci::dynamic_batch_to_single_batch | ( | luci::Module * | m | ) |
Definition at line 29 of file DynamicBatchToSingleBatch.cpp.
References m, and logo::Saturate.
Referenced by entry().
void luci::exportNodes | ( | loco::Graph * | g, |
flatbuffers::FlatBufferBuilder & | builder, | ||
SerializedModelData & | md, | ||
SerializedGraphData & | gd | ||
) |
create Operators corresponding to model nodes
nodes | container with nodes |
gd | information about serializer parts of model |
Definition at line 28 of file CircleOperationExporter.cpp.
References luci::SerializedModelData::_metadata, luci::SerializedGraphData::_operators, luci::CircleExportMetadata::add_execution_plan_table(), luci::CircleExportMetadata::add_op_table(), get_execution_plan(), has_execution_plan(), offset(), loco::output_nodes(), and loco::postorder_traversal().
void luci::exportOpDefinedTensors | ( | loco::Graph * | g, |
flatbuffers::FlatBufferBuilder & | builder, | ||
SerializedModelData & | md, | ||
SerializedGraphData & | gd | ||
) |
create Tensors corresponding to results of all nodes in graph
computational | graph |
gd | information about serialized parts of model |
Definition at line 695 of file CircleTensorExporter.cpp.
References loco::output_nodes(), and loco::postorder_traversal().
std::string luci::fb_string2std_string | ( | const flatbuffers::String * | fb_str | ) |
Definition at line 311 of file CircleReader.cpp.
References flatbuffers::String::str().
Referenced by luci::CircleReader::name().
|
inline |
Definition at line 72 of file NodeFiller.h.
FormattedGraph luci::fmt | ( | loco::Graph * | g | ) |
Definition at line 23 of file LogHelper.cpp.
Referenced by dump(), fme_apply::ProgressReporter::notify(), luci::ProgressReporter::notify(), luci::ModuleProgressReporter::notify(), fme_apply::ProgressReporter::notify(), luci::ProgressReporter::notify(), luci::ModuleProgressReporter::notify(), validate(), and validate_shape().
uint8_t luci::fp32_to_uint8_cast | ( | float | f | ) |
Definition at line 39 of file QuantizationUtils.cpp.
Referenced by compute_asym_scale_zp().
void luci::freeTfLiteSparsity | ( | sparsity::TfLiteSparsity & | tflsp | ) |
Definition at line 298 of file SparsityFormatConverter.cpp.
References sparsity::TfLiteDimensionMetadata::array_indices, sparsity::TfLiteDimensionMetadata::array_segments, sparsity::TfLiteSparsity::block_map, sparsity::TfLiteSparsity::dim_metadata, sparsity::TfLiteSparsity::dim_metadata_size, freeTfLiteSparsity(), and sparsity::TfLiteSparsity::traversal_order.
Referenced by freeTfLiteSparsity().
bool luci::fuse_activation_function | ( | luci::CircleNode * | node | ) |
Definition at line 27 of file FuseActivationFunctionPass.cpp.
References loco::Node::drop(), NONE, luci::CircleNode::opcode(), loco::preds(), RELU, RELU6, RELU_N1_TO_1, loco::replace(), loco::succs(), UNDEFINED, and loco::Subst< SubstQualifier::Default >::with().
Referenced by luci::FuseActivationFunctionPass::run().
bool luci::fuse_add_with_conv | ( | luci::CircleAdd * | add, |
std::vector< luci::CircleSub * > & | sub_list | ||
) |
Fuse ADD with the preceding CONV
BEFORE
[Conv] bias |
[Passable Op] (None, Max pool, Pad, etc) | [Add] beta
AFTER
[Conv] bias + beta |
[Passable Op]
A special case where SUB is newly inserted
BEFORE
[Conv] bias \ / [Add] / \ [Add] beta
AFTER
[Conv] bias + beta \ / [Add] / \
beta [Sub]
Definition at line 341 of file FusePreActivationBatchNormPass.cpp.
References luci::CircleNode::opcode(), loco::replace(), loco::succs(), and loco::Subst< SubstQualifier::Default >::with().
Referenced by luci::FusePreActivationBatchNormPass::run().
bool luci::fuse_mul_with_conv | ( | luci::CircleMul * | mul | ) |
Fuse MUL with the next CONV
BEFORE
[Mul] gamma | [Relu] / \
W1 [Conv] [Conv] W2
AFTER
[Relu] / \
gamma X W1 [Conv] [Conv] gamma X W2
Definition at line 433 of file FusePreActivationBatchNormPass.cpp.
References is_batchnorm_mul(), loco::replace(), loco::succs(), and loco::Subst< SubstQualifier::Default >::with().
Referenced by luci::FuseMulWithConvPass::run(), and luci::FusePreActivationBatchNormPass::run().
bool luci::fuse_sub_with_conv | ( | luci::CircleSub * | sub | ) |
Fuse SUB with CONV
BEFORE
beta [Sub] | [Passable Op] [Conv] bias \ / [Add]
AFTER
[Passable Op] [Conv] bias - beta \ / [Add]
Definition at line 272 of file FusePreActivationBatchNormPass.cpp.
References luci::FixedArityNode< N, Base >::drop(), loco::replace(), loco::succs(), loco::Subst< SubstQualifier::Default >::with(), luci::CircleSub::x(), and luci::CircleSub::y().
Referenced by luci::FusePreActivationBatchNormPass::run().
bool luci::get_channel_dim_index | ( | CircleConst * | node, |
loco::TensorShape & | dimension, | ||
int32_t & | channel_dim_index | ||
) |
Definition at line 211 of file QuantizationUtils.cpp.
References loco::TensorShape::dim(), loco::Dimension::set(), and loco::succs().
luci::CircleNodeExecutionPlan luci::get_execution_plan | ( | const luci::CircleNode * | circle_node | ) |
Definition at line 69 of file CircleNodeExecutionPlan.cpp.
References loco::AnnotatedItem< Annotation >::annot(), and has_execution_plan().
Referenced by luci_interpreter::build_kernel_CircleAveragePool2D(), luci_interpreter::build_kernel_CircleBatchMatMul(), luci_interpreter::build_kernel_CircleConv2D(), luci_interpreter::build_kernel_CircleDepthwiseConv2D(), exportNodes(), luci_interpreter::GraphLoader::loadOperators(), and luci_interpreter::GraphLoader::loadTensors().
luci::CircleNodeID luci::get_node_id | ( | const luci::CircleNode * | circle_node | ) |
Definition at line 65 of file CircleNodeID.cpp.
References loco::AnnotatedItem< Annotation >::annot(), and has_node_id().
Referenced by minmax_embedder::Embedder::embed(), and onert::odc::Embedder::embed().
CircleTensorIndex luci::get_tensor_index | ( | loco::Node * | node | ) |
Definition at line 320 of file CircleExporterUtils.cpp.
References loco::AnnotatedItem< Annotation >::annot().
Referenced by luci::OperationExporterRule::visit().
circle::Padding luci::getOpPadding | ( | const loco::Padding2D * | pad, |
const loco::Stride< 2 > * | stride, | ||
const ShapeDescription & | ifm, | ||
const ShapeDescription & | ofm | ||
) |
Definition at line 249 of file CircleExporterUtils.cpp.
References luci::ShapeDescription::_dims, loco::Padding2D::bottom(), INTERNAL_EXN, loco::Padding2D::left(), loco::Padding2D::right(), and loco::Padding2D::top().
Referenced by luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), and luci::BuiltinOptionsExtractor::visit().
circle::Padding luci::getOpPadding | ( | const luci::Padding | pad | ) |
Definition at line 278 of file CircleExporterUtils.cpp.
References INTERNAL_EXN_V, SAME, oops::to_uint32(), and VALID.
bool luci::has_dynamic_shape | ( | const loco::Node * | node | ) |
Definition at line 62 of file Shape.cpp.
Referenced by luci::ConvertNCHWToNHWCPass::run().
bool luci::has_execution_plan | ( | const luci::CircleNode * | circle_node | ) |
Definition at line 57 of file CircleNodeExecutionPlan.cpp.
References loco::AnnotatedItem< Annotation >::annot().
Referenced by luci_interpreter::build_kernel_CircleAveragePool2D(), luci_interpreter::build_kernel_CircleBatchMatMul(), luci_interpreter::build_kernel_CircleConv2D(), luci_interpreter::build_kernel_CircleDepthwiseConv2D(), exportNodes(), get_execution_plan(), luci_interpreter::GraphLoader::loadOperators(), and luci_interpreter::GraphLoader::loadTensors().
bool luci::has_node_id | ( | const luci::CircleNode * | circle_node | ) |
Definition at line 54 of file CircleNodeID.cpp.
References loco::AnnotatedItem< Annotation >::annot().
Referenced by minmax_embedder::Embedder::embed(), onert::odc::Embedder::embed(), and get_node_id().
bool luci::in_array | ( | const std::string & | str, |
const std::vector< std::string > & | array | ||
) |
Definition at line 24 of file Strings.cpp.
References flatbuffers::str.
std::vector< loco::Node * > luci::inference_candidates | ( | loco::Graph * | g | ) |
Enumerate all the nodes whose shape/dtype should be inferenced to export graph.
Definition at line 24 of file InferenceCandidates.cpp.
References loco::all_nodes(), loco::output_nodes(), and loco::postorder_traversal().
Referenced by luci::CircleTypeInferencePass::run(), and luci::CircleShapeInferencePass::run().
CircleInput * luci::input_node | ( | loco::Graph * | g, |
const loco::GraphInputIndex & | index | ||
) |
Find a Pull node with a given input index.
Definition at line 45 of file CircleNodes.cpp.
References size.
Referenced by luci::CircleWhileGraphBuilder::build(), luci::test::ExampleGraph< ExampleGraphType::CircleTranspose >::ExampleGraph(), luci::DynamicBatchToSingleBatchPass::run(), luci::sinf::Algorithm::visit(), and luci_interpreter::Interpreter::writeInputTensor().
luci::INSTANTIATE | ( | loco::DataType::BOOL | ) |
luci::INSTANTIATE | ( | loco::DataType::FLOAT16 | ) |
luci::INSTANTIATE | ( | loco::DataType::FLOAT32 | ) |
luci::INSTANTIATE | ( | loco::DataType::S16 | ) |
luci::INSTANTIATE | ( | loco::DataType::S32 | ) |
luci::INSTANTIATE | ( | loco::DataType::S4 | ) |
luci::INSTANTIATE | ( | loco::DataType::S64 | ) |
luci::INSTANTIATE | ( | loco::DataType::S8 | ) |
luci::INSTANTIATE | ( | loco::DataType::U4 | ) |
luci::INSTANTIATE | ( | loco::DataType::U8 | ) |
bool luci::is_batchnorm_add | ( | const luci::CircleAdd * | add | ) |
Find Mul-Add pattern.
Definition at line 76 of file BatchNormPatternFinder.cpp.
References is_batchnorm_add().
bool luci::is_batchnorm_add | ( | const luci::CircleAdd * | add, |
luci::CircleMul *& | mul, | ||
luci::CircleConst *& | beta | ||
) |
Find Mul-Add pattern and return Mul and beta as BatchNorm.
Definition at line 24 of file BatchNormPatternFinder.cpp.
Referenced by is_batchnorm_add(), and swap_mul_add().
bool luci::is_batchnorm_mul | ( | const luci::CircleMul * | mul, |
luci::CircleNode *& | pred_node, | ||
luci::CircleConst *& | gamma | ||
) |
Find Const-Mul pattern and return Node and gamma as BatchNorm.
Definition at line 85 of file BatchNormPatternFinder.cpp.
Referenced by fuse_mul_with_conv(), and swap_mul_add().
bool luci::is_fp32 | ( | const CircleNode * | node | ) |
Definition at line 37 of file QuantizationUtils.cpp.
Referenced by luci::QuantizeActivation::visit().
bool luci::is_onnx_dequantize_linear | ( | const luci::CircleCustom * | node | ) |
Definition at line 532 of file QuantizationUtils.cpp.
References luci::CircleCustom::custom_code(), luci::CircleCustom::numInputs(), and luci::CircleCustom::numOutputs().
bool luci::is_onnx_quantize_linear | ( | const luci::CircleCustom * | node | ) |
Definition at line 546 of file QuantizationUtils.cpp.
References luci::CircleCustom::custom_code(), luci::CircleCustom::numInputs(), and luci::CircleCustom::numOutputs().
bool luci::is_quantized | ( | const CircleNode * | node | ) |
Definition at line 28 of file QuantizationUtils.cpp.
References luci::CircleNode::quantparam().
Referenced by propagate_pad_v2_quantparam(), and luci::QuantizeOnnxFakeQuantModelPass::run().
bool luci::is_same_shape | ( | const luci::CircleNode * | node, |
const loco::TensorShape & | shape | ||
) |
Definition at line 22 of file Shape.cpp.
References loco::TensorShape::dim(), loco::Dimension::known(), loco::TensorShape::rank(), luci::CircleNode::shape_status(), VALID, and loco::Dimension::value().
Referenced by luci::CircleShapeInferencePass::run().
bool luci::is_same_shape | ( | const luci::CircleNode * | node, |
const std::initializer_list< uint32_t > | shape | ||
) |
Definition at line 45 of file Shape.cpp.
|
inline |
Definition at line 44 of file ShapeDescription.h.
References loco::Count, loco::Depth, loco::Height, and loco::Width.
|
inline |
Definition at line 50 of file ShapeDescription.h.
References loco::Count, loco::Depth, loco::Height, and loco::Width.
|
inline |
LayerInfoMap luci::layer_info_map | ( | loco::Graph * | g, |
std::vector< LayerInfo > & | layers_info | ||
) |
Definition at line 142 of file LayerInfoMap.cpp.
References loco::active_nodes(), info, and loco::output_nodes().
Referenced by luci::QuantizeDequantizeWeightsPass::run(), luci::QuantizeDequantizeWeightsWithGPTQPass::run(), luci::QuantizeWithMinMaxPass::run(), and luci::QuantizedModelVerifier::verify().
void luci::link | ( | loco::GraphInput * | input, |
CircleInput * | node | ||
) |
Link GraphInput with CircleInput node.
Definition at line 43 of file CircleNodes.cpp.
References luci::CircleInput::index().
void luci::link | ( | loco::GraphOutput * | output, |
CircleOutput * | node | ||
) |
Link GraphOutput with CircleOutput node.
Definition at line 26 of file CircleNodes.cpp.
References luci::CircleOutput::index().
Referenced by luci::test::TestGraph::TestGraph().
FusedActFunc luci::luci_actfunc | ( | const circle::ActivationFunctionType | type | ) |
Definition at line 84 of file CircleReader.cpp.
References NONE, RELU, RELU6, RELU_N1_TO_1, SIGN_BIT, TANH, and UNDEFINED.
Referenced by luci_interpreter::configure_kernel_CircleConcatenation(), luci_interpreter::createConv2DParams(), luci_interpreter::createPoolParams(), luci_interpreter::kernels::evalTISOKernel(), and luci_interpreter::kernels::evalTISOQuantizedKernel().
loco::DataType luci::luci_datatype | ( | circle::TensorType | type | ) |
Definition at line 45 of file CircleReader.cpp.
Referenced by luci::GraphBuilderMultiOutput::build(), luci::CircleConstNodeBuilder::build(), copy_tensor_attributes(), and luci_interpreter::Tensor::element_type().
DimensionType luci::luci_dim_type | ( | const circle::DimensionType | dim_type | ) |
Definition at line 162 of file CircleReader.cpp.
References DENSE, and SPARSE_CSR.
Referenced by luci_sparsityparam().
MirrorPadMode luci::luci_mirrorpad_mode | ( | const circle::MirrorPadMode | mode | ) |
Definition at line 120 of file CircleReader.cpp.
Padding luci::luci_padding | ( | const circle::Padding | padding | ) |
Definition at line 107 of file CircleReader.cpp.
References SAME, UNDEFINED, and VALID.
Referenced by luci_interpreter::computeConvPadding(), and luci_interpreter::createPoolParams().
std::unique_ptr< CircleQuantParam > luci::luci_quantparam | ( | const circle::QuantizationParameters * | quantization | ) |
Definition at line 230 of file CircleReader.cpp.
References luci_quantparam().
Referenced by copy_tensor_attributes(), and luci_quantparam().
std::unique_ptr< CircleQuantParam > luci::luci_quantparam | ( | const circle::QuantizationParametersT * | quantization | ) |
Definition at line 206 of file CircleReader.cpp.
RoPEMode luci::luci_rope_mode | ( | const circle::RoPEMode | mode | ) |
Definition at line 133 of file CircleReader.cpp.
SparseIndexVector luci::luci_sparse_index_vector | ( | const circle::SparseIndexVectorUnion & | sparse_index_vector | ) |
Definition at line 176 of file CircleReader.cpp.
References I32, NONE, U16, and U8.
Referenced by luci_sparsityparam().
std::unique_ptr< SparsityParam > luci::luci_sparsityparam | ( | const circle::SparsityParameters * | sparparam | ) |
Definition at line 262 of file CircleReader.cpp.
References luci_sparsityparam().
std::unique_ptr< SparsityParam > luci::luci_sparsityparam | ( | const circle::SparsityParametersT * | sparsity | ) |
Definition at line 240 of file CircleReader.cpp.
References luci_dim_type(), and luci_sparse_index_vector().
Referenced by copy_tensor_attributes(), and luci_sparsityparam().
luci::CircleFullyConnected::WeightsFormat luci::luci_weights_format | ( | const circle::FullyConnectedOptionsWeightsFormat | weights_format | ) |
Definition at line 147 of file CircleReader.cpp.
References luci::CircleFullyConnected::DEFAULT, luci::CircleFullyConnected::SHUFFLED16x1FLOAT32, and luci::CircleFullyConnected::SHUFFLED4x16INT8.
std::unique_ptr< Module > luci::make_module | ( | void | ) |
Definition at line 44 of file Module.cpp.
std::unique_ptr< CircleQuantParam > luci::make_predefined_qparam | ( | ActivationQType | qtype, |
loco::DataType | dtype, | ||
CircleQuantParam * | old_quant_param | ||
) |
Definition at line 357 of file QuantizationUtils.cpp.
References luci::CircleQuantParam::max, luci::CircleQuantParam::min, PreDefinedLogistic, PreDefinedSoftmax, and PreDefinedTanh.
Referenced by luci::QuantizeSpecialActivation::visit(), luci::QuantizeSpecialActivation::visit(), luci::QuantizeSpecialActivation::visit(), and luci::QuantizeSpecialActivation::visit().
std::unique_ptr< CircleQuantParam > luci::make_predefined_qparam | ( | CircleNode * | node, |
loco::DataType | dtype | ||
) |
sparsity::TfLiteIntArray * luci::makeTfLiteArray | ( | const std::vector< T > & | data | ) |
Definition at line 268 of file SparsityFormatConverter.cpp.
References sparsity::TfLiteIntArray::data, makeTfLiteArray(), and sparsity::TfLiteIntArray::size.
Referenced by makeTfLiteArray(), to_tflite_sparsity(), and to_tflite_sparsity().
sparsity::TfLiteDimensionMetadata * luci::makeTfLiteDimensionMetadata | ( | const std::vector< luci::DimMetaData > & | data | ) |
Definition at line 282 of file SparsityFormatConverter.cpp.
References sparsity::TfLiteDimensionMetadata::array_indices, sparsity::TfLiteDimensionMetadata::array_segments, sparsity::TfLiteDimensionMetadata::dense_size, sparsity::TfLiteDimensionMetadata::format, makeTfLiteDimensionMetadata(), and to_tflite_sparsity().
Referenced by makeTfLiteDimensionMetadata(), and to_tflite_sparsity().
int32_t luci::max_for_sym_quant | ( | const loco::DataType & | type | ) |
Definition at line 104 of file QuantizationUtils.cpp.
Referenced by compute_sym_scale().
std::unique_ptr< luci::PGroups > luci::merge_pgroups | ( | const luci::PGroups * | s_pgroups | ) |
This will merge pgroups with same group values in topological order.
Definition at line 200 of file PartitionMerge.cpp.
References luci::PGroup::group, luci::PGroup::id, luci::PGroups::make_copy(), and luci::PGroups::pgroups.
Referenced by apply().
std::string luci::opcode_name | ( | const CircleNode * | node | ) |
Definition at line 66 of file CircleOpCode.cpp.
References luci::CircleNode::accept().
CircleOutput * luci::output_node | ( | loco::Graph * | g, |
const loco::GraphOutputIndex & | index | ||
) |
Find a CircleOutput node with a given output index.
Definition at line 28 of file CircleNodes.cpp.
References size.
Referenced by change_outputs(), luci_interpreter::Interpreter::getOutputTensorSize(), luci_interpreter::Interpreter::readOutputTensor(), and luci::FuseBCQPass::run().
void luci::prepareModelData | ( | FlatBufferBuilder & | builder, |
SerializedModelData & | md | ||
) |
one time preparation for SerializedModelData
Definition at line 681 of file CircleTensorExporter.cpp.
References luci::SerializedModelData::_buffers, luci::SerializedModelData::_empty_buffer, and luci::SerializedModelData::clear().
std::unique_ptr< luci::PGroups > luci::produce_pgroups | ( | const luci::Module * | source, |
const luci::PartitionTable & | partition | ||
) |
This will produce a PGroups from Module and PartitionTable.
Definition at line 225 of file PartitionPGroups.cpp.
References luci::PartitionTable::default_group, luci::PGroups::default_group, luci::Module::graph(), INFO, LOGGER, luci::CircleNode::name(), and luci::PGroups::node2group.
Referenced by apply().
luci::PartedModules luci::produce_pmodules | ( | const luci::PGroups * | pgroups | ) |
This will produce list of luci::Module as PartedModules from pgroups.
Definition at line 375 of file PartitionPModules.cpp.
References luci::PartedModule::group, luci::PGroup::group, INFO, LOGGER, loco::make_graph(), luci::PGroups::pgroups, and luci::PartedModules::pmodules.
Referenced by apply().
void luci::propagate_concat_quantparam | ( | luci::CircleConcatenation * | concat | ) |
BEFORE
[CircleNode] [CircleConst] (U8 qparam1) (FP32) \ / \ / [CircleConcatenation] (U8 qparam2)
AFTER [CircleNode] [CircleConst] [CircleConst] <- Dead node (U8 qparam2) (U8 qparam2) (FP32) \ / \ / [CircleConcatenation] (U8 qparam2)
Definition at line 295 of file PropagateQParamBackwardPass.cpp.
References clone(), NONE, quant_const(), and loco::succs().
void luci::propagate_pad_v2_quantparam | ( | luci::CirclePadV2 * | pad_v2 | ) |
BEFORE
[CircleNode] [CircleConst] [CircleConst] (U8 qparam1) (S32) (FP32) \ | / \ | / [CirclePadV2] (U8 qparam2)
AFTER (case 1)
By default qparam is propagated from output to inputs to meet backend requirements.
[CircleNode] [CircleConst] [CircleConst] [CircleConst] <- Dead node (U8 qparam2) (S32) (U8 qparam2) (FP32) \ | / \ | / [CirclePadV2] (U8 qparam2)
AFTER (case 2)
In case padded value is the lowest float value Qparam is propagated from input to output and constant.
This is a special case for optimization constructed pad, needed to guarantee that extremely large negative constant do not stretch output quantization range.
[CircleNode] [CircleConst] [CircleConst] [CircleConst] <- Dead node (U8 qparam1) (S32) (U8 qparam1) (FP32) \ | / \ | / [CirclePadV2] (U8 qparam1)
Definition at line 385 of file PropagateQParamBackwardPass.cpp.
References luci::FixedArityNode< N, Base >::arg(), clone(), luci::CirclePadV2::constant_values(), luci::CirclePadV2::input(), is_quantized(), luci::CircleNode::quantparam(), and loco::succs().
void luci::quant_const | ( | luci::CircleConst * | node, |
loco::DataType | quant_type | ||
) |
Definition at line 418 of file QuantizationUtils.cpp.
References asymmetric_wquant_with_minmax_per_layer(), luci::CircleConst::at(), flatbuffers::data(), luci::CircleQuantParam::max, luci::CircleQuantParam::min, luci::CircleNode::quantparam(), luci::CircleConst::size(), and symmetric_wquant_with_minmax_per_layer().
Referenced by propagate_concat_quantparam().
luci::REGISTER_WRAPPER | ( | flatbuffers::Offset< circle::Buffer > | ) |
luci::REGISTER_WRAPPER | ( | flatbuffers::Offset< circle::Metadata > | ) |
luci::REGISTER_WRAPPER | ( | flatbuffers::Offset< circle::Operator > | ) |
luci::REGISTER_WRAPPER | ( | flatbuffers::Offset< circle::OperatorCode > | ) |
luci::REGISTER_WRAPPER | ( | flatbuffers::Offset< circle::SubGraph > | ) |
luci::REGISTER_WRAPPER | ( | flatbuffers::Offset< circle::Tensor > | ) |
luci::REGISTER_WRAPPER | ( | int32_t | ) |
luci::REGISTER_WRAPPER | ( | uint8_t | ) |
void luci::remove_unused_inputoutputs | ( | luci::PGroups * | pgroups, |
const luci::Module * | source | ||
) |
This will remove unused inputs/outputs in each pgroup of pgroups.
Definition at line 67 of file PartitionCleanup.cpp.
References INFO, LOGGER, luci::PGroups::pgroup_of(), and luci::PGroups::pgroups.
Referenced by apply().
void luci::set_int_scale | ( | luci::CircleNode * | node | ) |
Definition at line 406 of file QuantizationUtils.cpp.
References luci::CircleNode::quantparam().
Referenced by luci::QuantizeSpecialActivation::visit(), luci::QuantizeSpecialActivation::visit(), luci::QuantizeSpecialActivation::visit(), and luci::QuantizeSpecialActivation::visit().
void luci::set_node_id | ( | luci::CircleNode * | circle_node, |
luci::CircleNodeID | id | ||
) |
Definition at line 59 of file CircleNodeID.cpp.
References loco::AnnotatedItem< Annotation >::annot().
void luci::set_tensor_index | ( | loco::Node * | node, |
const CircleTensorIndex & | tensor_id | ||
) |
Definition at line 308 of file CircleExporterUtils.cpp.
References loco::AnnotatedItem< Annotation >::annot().
loco::NodeShape luci::shape_get | ( | const loco::Node * | node | ) |
Definition at line 124 of file CircleShapeInferenceHelper.cpp.
References luci::sinf::circle_shape(), and shape_known().
Referenced by luci::sinf::Algorithm::visit().
bool luci::shape_known | ( | const loco::Node * | node | ) |
Definition at line 130 of file CircleShapeInferenceHelper.cpp.
References UNDEFINED.
Referenced by shape_get().
std::shared_ptr< CircleNodeOrigin > luci::single_origin | ( | uint32_t | id, |
const std::string & | name | ||
) |
Definition at line 120 of file CircleNodeOrigin.cpp.
Referenced by luci::CircleImportMetadata::origin_table().
|
inline |
Returns the size of the data type.
Definition at line 31 of file DataTypeHelper.h.
References loco::size().
Referenced by luci_interpreter_pal::BroadcastTo(), mpqsolver::core::MAEMetric::compute(), circle_planner::ScratchpadHelperLinux::ComputeScratchpadSizeBatchMatMul(), entry(), luci_interpreter::getDataTypeSize(), circle_eval_diff::getEachByteSizeOf(), record_minmax::getTensorSize(), and circle_eval_diff::getTotalByteSizeOf().
|
extern |
Referenced by luci::SparsifyTensorPass::run().
|
extern |
Referenced by luci::SparsifyTensorPass::run().
|
extern |
Referenced by luci::SparsifyTensorPass::run().
loco::DataType luci::str_to_dtype | ( | const std::string & | str | ) |
Definition at line 47 of file Strings.cpp.
References flatbuffers::str, and to_lower_case().
QuantizationGranularity luci::str_to_granularity | ( | const std::string & | str | ) |
Definition at line 93 of file Strings.cpp.
References ChannelWise, LayerWise, flatbuffers::str, and to_lower_case().
std::vector< loco::DataType > luci::str_vec_to_dtype_vec | ( | std::vector< std::string > & | vec | ) |
Definition at line 85 of file Strings.cpp.
bool luci::swap_mul_add | ( | luci::CircleAdd * | add, |
std::vector< luci::CircleMul * > & | mul_list, | ||
std::vector< luci::CircleAdd * > & | add_list | ||
) |
Swap MUL/ADD if they are from batch normalization
BEFORE [Mul] gamma | [Add + Relu] beta
AFTER [Add] beta/gamma | [Mul] gamma | [Relu]
Definition at line 499 of file FusePreActivationBatchNormPass.cpp.
References luci::CircleConst::at(), is_batchnorm_add(), is_batchnorm_mul(), NONE, RELU, loco::replace(), luci::CircleConst::size(), size, loco::succs(), and loco::Subst< SubstQualifier::Default >::with().
Referenced by luci::FusePreActivationBatchNormPass::run().
void luci::symmetric_wquant_with_minmax_per_layer | ( | CircleConst * | node, |
float | min, | ||
float | max, | ||
float & | scaling_factor, | ||
float & | nudged_min, | ||
float & | nudged_max | ||
) |
Definition at line 75 of file QuantizationUtils.cpp.
References luci::CircleConst::at(), compute_sym_scale(), flatbuffers::data(), luci::CircleConst::size(), and size.
Referenced by quant_const().
const char * luci::tensor_name | ( | const circle::Tensor * | tensor | ) |
Definition at line 29 of file CircleReader.cpp.
Referenced by luci::GraphBuilderMultiOutput::build(), luci::CircleWhileGraphBuilder::build(), copy_tensor_attributes(), luci::CircleOptimizer::sparsify(), luci::CircleCastGraphBuilder::validate(), luci::CircleGreaterGraphBuilder::validate(), and luci::CircleUnpackGraphBuilder::validate().
const circle::QuantizationParameters * luci::tensor_quantization | ( | const circle::Tensor * | tensor | ) |
Definition at line 39 of file CircleReader.cpp.
circle::ActivationFunctionType luci::to_circle_actfunc | ( | luci::FusedActFunc | func | ) |
Definition at line 28 of file CircleExporterUtils.cpp.
References INTERNAL_EXN_V, NONE, RELU, RELU6, RELU_N1_TO_1, SIGN_BIT, TANH, and oops::to_uint32().
Referenced by luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), and luci::BuiltinOptionsExtractor::visit().
circle::DimensionType luci::to_circle_dimensiontype | ( | luci::DimensionType | type | ) |
Definition at line 132 of file CircleExporterUtils.cpp.
References DENSE, INTERNAL_EXN_V, SPARSE_CSR, and oops::to_uint32().
circle::MirrorPadMode luci::to_circle_mirrorpadmode | ( | luci::MirrorPadMode | mode | ) |
Definition at line 90 of file CircleExporterUtils.cpp.
References INTERNAL_EXN_V, REFLECT, SYMMETRIC, and oops::to_uint32().
Referenced by luci::BuiltinOptionsExtractor::visit().
circle::RoPEMode luci::to_circle_rope | ( | luci::RoPEMode | mode | ) |
Definition at line 103 of file CircleExporterUtils.cpp.
References GPT_J, GPT_NEOX, INTERNAL_EXN_V, and oops::to_uint32().
Referenced by luci::BuiltinOptionsExtractor::visit().
flatbuffers::Offset< void > luci::to_circle_sparse_index_vector | ( | flatbuffers::FlatBufferBuilder & | fb, |
const SparseIndexVector & | sparse_idx_vec | ||
) |
Definition at line 145 of file CircleExporterUtils.cpp.
References luci::SparseIndexVector::as_int32_vector(), luci::SparseIndexVector::as_uint16_vector(), luci::SparseIndexVector::as_uint8_vector(), I32, INTERNAL_EXN_V, NONE, oops::to_uint32(), luci::SparseIndexVector::type(), U16, and U8.
circle::SparseIndexVector luci::to_circle_sparse_index_vector_type | ( | luci::SparseIndexVectorType | type | ) |
Definition at line 171 of file CircleExporterUtils.cpp.
References I32, INTERNAL_EXN_V, NONE, oops::to_uint32(), U16, and U8.
circle::TensorType luci::to_circle_tensortype | ( | loco::DataType | type | ) |
Definition at line 49 of file CircleExporterUtils.cpp.
References INTERNAL_EXN_V, and oops::to_uint32().
Referenced by luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), luci::BuiltinOptionsExtractor::visit(), and luci::BuiltinOptionsExtractor::visit().
circle::FullyConnectedOptionsWeightsFormat luci::to_circle_weightsformat | ( | luci::CircleFullyConnected::WeightsFormat | format | ) |
Definition at line 117 of file CircleExporterUtils.cpp.
References luci::CircleFullyConnected::DEFAULT, INTERNAL_EXN_V, luci::CircleFullyConnected::SHUFFLED16x1FLOAT32, luci::CircleFullyConnected::SHUFFLED4x16INT8, and oops::to_uint32().
Referenced by luci::BuiltinOptionsExtractor::visit().
bool luci::to_compute | ( | const FusedActFunc | act, |
compute::FusedActFunc & | act_func | ||
) |
Definition at line 40 of file Compute.cpp.
References luci::compute::NONE, NONE, luci::compute::RELU, RELU, luci::compute::RELU6, RELU6, luci::compute::RELU_N1_TO_1, RELU_N1_TO_1, luci::compute::TANH, and TANH.
bool luci::to_compute | ( | const Padding | padding, |
compute::PaddingType & | padding_type | ||
) |
Definition at line 22 of file Compute.cpp.
References luci::compute::kSame, luci::compute::kValid, SAME, and VALID.
std::string luci::to_lower_case | ( | std::string | s | ) |
Definition at line 41 of file Strings.cpp.
Referenced by str_to_dtype(), and str_to_granularity().
ShapeDescription luci::to_shape_description | ( | const loco::NodeShape & | shape | ) |
Definition at line 56 of file ShapeDescription.cpp.
References loco::NodeShape::as(), loco::NodeShape::domain(), INTERNAL_EXN_V, loco::Tensor, to_shape_description(), and oops::to_uint32().
ShapeDescription luci::to_shape_description | ( | const loco::TensorShape & | shape | ) |
Definition at line 39 of file ShapeDescription.cpp.
References luci::ShapeDescription::_dims, luci::ShapeDescription::_rank_known, loco::TensorShape::dim(), loco::Dimension::known(), loco::TensorShape::rank(), and loco::Dimension::value().
ShapeDescription luci::to_shape_description | ( | const luci::CircleNode * | node | ) |
Definition at line 26 of file ShapeDescription.cpp.
References luci::ShapeDescription::_dims, and luci::ShapeDescription::_rank_known.
Referenced by to_shape_description().
std::string luci::to_string | ( | const std::vector< std::string > & | strings | ) |
Definition at line 29 of file Strings.cpp.
sparsity::TfLiteIntArray * luci::to_tflite_sparsity | ( | const luci::SparseIndexVector & | data | ) |
Definition at line 237 of file SparsityFormatConverter.cpp.
References I32, INTERNAL_EXN_V, makeTfLiteArray(), NONE, to_tflite_sparsity(), oops::to_uint32(), U16, and U8.
sparsity::TfLiteSparsity luci::to_tflite_sparsity | ( | const luci::SparsityParam * | sp | ) |
Definition at line 258 of file SparsityFormatConverter.cpp.
References luci::SparsityParam::block_map, sparsity::TfLiteSparsity::block_map, luci::SparsityParam::dim_metadata, sparsity::TfLiteSparsity::dim_metadata, sparsity::TfLiteSparsity::dim_metadata_size, makeTfLiteArray(), makeTfLiteDimensionMetadata(), to_tflite_sparsity(), luci::SparsityParam::traversal_order, and sparsity::TfLiteSparsity::traversal_order.
sparsity::TfLiteDimensionType luci::to_tflite_sparsity | ( | luci::DimensionType | dt | ) |
Definition at line 225 of file SparsityFormatConverter.cpp.
References DENSE, SPARSE_CSR, and to_tflite_sparsity().
Referenced by makeTfLiteDimensionMetadata(), to_tflite_sparsity(), to_tflite_sparsity(), and to_tflite_sparsity().
bool luci::validate | ( | loco::Graph * | g | ) |
Definition at line 322 of file Validate.cpp.
References loco::valid().
bool luci::validate | ( | luci::Module * | module | ) |
Definition at line 398 of file Validate.cpp.
References fmt(), INFO, LOGGER, validate_name(), and validate_unique_name().
bool luci::validate | ( | luci::PartitionTable & | partition | ) |
Definition at line 28 of file PartitionValidate.cpp.
References luci::PartitionTable::byopcodes, luci::PartitionTable::byopnames, luci::PartitionTable::default_group, and luci::PartitionTable::groups.
Referenced by minmax_embedder::Embedder::embed(), onert::odc::Embedder::embed(), entry(), onert::odc::Quantizer::quantize(), mpqsolver::core::Quantizer::quantize(), and ReadModule().
bool luci::validate_batch_space_nd | ( | const GraphBuilderBase::ValidateArgs & | args | ) |
Definition at line 22 of file ValidateHelpers.cpp.
References wrap().
Referenced by luci::CircleBatchToSpaceNDGraphBuilder::validate(), and luci::CircleSpaceToBatchNDGraphBuilder::validate().
bool luci::validate_minmax | ( | const GraphBuilderBase::ValidateArgs & | args | ) |
Definition at line 63 of file ValidateHelpers.cpp.
Referenced by luci::CircleMaximumGraphBuilder::validate(), and luci::CircleMinimumGraphBuilder::validate().
bool luci::validate_name | ( | loco::Graph * | g | ) |
Return true if all nodes in graph have non empty name.
Definition at line 338 of file Validate.cpp.
References luci::CircleNode::accept(), and luci::CircleNode::name().
Referenced by validate().
bool luci::validate_reduce_minmax | ( | const GraphBuilderBase::ValidateArgs & | args | ) |
Definition at line 102 of file ValidateHelpers.cpp.
Referenced by luci::CircleReduceMaxGraphBuilder::validate(), and luci::CircleReduceMinGraphBuilder::validate().
bool luci::validate_shape | ( | loco::Graph * | g | ) |
Definition at line 311 of file Validate.cpp.
References loco::valid(), and validate_shape().
Referenced by entry(), validate_shape(), and validate_shape().
bool luci::validate_shape | ( | luci::Module * | module | ) |
Definition at line 431 of file Validate.cpp.
References fmt(), INFO, LOGGER, and validate_shape().
bool luci::validate_unique_name | ( | luci::Module * | m | ) |
Return true if all names in the Module are unique.
Definition at line 357 of file Validate.cpp.
References luci::CircleNode::accept(), INFO, LOGGER, m, luci::CircleNode::name(), and luci::CircleNode::opcode().
Referenced by validate().
void luci::warn_accuracy_with_range | ( | luci::CircleNode * | n | ) |
Definition at line 518 of file QuantizationUtils.cpp.
References LOGGER, luci::CircleNode::name(), luci::CircleNode::quantparam(), WARN, and luci::CircleQuantParam::zerop.
Referenced by luci::QuantizeWithMinMaxPass::run().
VectorWrapper< T > luci::wrap | ( | const flatbuffers::Vector< T > * | vec | ) |
Definition at line 82 of file CircleReader.h.
Referenced by luci::CircleReader::buffers(), luci_interpreter::CircleReader::buffers(), luci_interpreter::CircleReferencingConstNodeBuilder::build(), luci::CircleConstNodeBuilder::build(), luci::CircleImportMetadata::CircleImportMetadata(), copy_tensor_attributes(), create_circlevariable(), luci_interpreter::Tensor::dim(), luci_interpreter::execute_kernel_CircleMean(), luci_interpreter::execute_kernel_CircleMirrorPad(), luci_interpreter::RuntimeGraph::getConstDataByTensor(), luci::CircleReader::inputs(), luci_interpreter::CircleReader::inputs(), luci::CircleReader::metadata(), luci_interpreter::CircleReader::metadata(), luci_interpreter::Tensor::num_dims(), luci_interpreter::Tensor::num_elements(), luci::CircleReader::num_subgraph(), luci_interpreter::CircleReader::num_subgraph(), luci::CircleReader::opcodes(), luci_interpreter::CircleReader::opcodes(), luci::CircleReader::operators(), luci_interpreter::CircleReader::operators(), luci::CircleReader::outputs(), luci_interpreter::CircleReader::outputs(), luci_interpreter::Tensor::tensor_shape(), luci::CircleReader::tensors(), luci_interpreter::CircleReader::tensors(), luci::CircleDepthwiseConv2DGraphBuilder::validate(), luci::CircleIfGraphBuilder::validate(), luci::CircleNonMaxSuppressionV4GraphBuilder::validate(), luci::CircleNonMaxSuppressionV5GraphBuilder::validate(), luci::CircleOneHotGraphBuilder::validate(), luci::CircleTransposeConvGraphBuilder::validate(), luci::CircleUnpackGraphBuilder::validate(), and validate_batch_space_nd().