ONE - On-device Neural Engine
Loading...
Searching...
No Matches
onert::ir::OperationDumper Class Reference

#include <OperationDumper.h>

Collaboration diagram for onert::ir::OperationDumper:

Public Member Functions

 OperationDumper (const std::string &start_msg)
 
void visit (const operation::ArgMinMax &) override
 
void visit (const operation::BatchToSpaceND &node) override
 
void visit (const operation::BCQFullyConnected &node) override
 
void visit (const operation::BinaryArithmetic &node) override
 
void visit (const operation::BroadcastTo &) override
 
void visit (const operation::Comparison &) override
 
void visit (const operation::Concat &node) override
 
void visit (const operation::Conv2D &node) override
 
void visit (const operation::ConvertFp16ToFp32 &node) override
 
void visit (const operation::ConvertFp32ToFp16 &node) override
 
void visit (const operation::DepthToSpace &) override
 
void visit (const operation::DepthwiseConv2D &node) override
 
void visit (const operation::ElementwiseActivation &) override
 
void visit (const operation::ElementwiseBinary &) override
 
void visit (const operation::ElementwiseUnary &) override
 
void visit (const operation::EmbeddingLookup &) override
 
void visit (const operation::ExpandDims &) override
 
void visit (const operation::Fill &) override
 
void visit (const operation::FullyConnected &node) override
 
void visit (const operation::Gather &) override
 
void visit (const operation::HashtableLookup &) override
 
void visit (const operation::InstanceNorm &) override
 
void visit (const operation::L2Normalization &) override
 
void visit (const operation::LocalResponseNormalization &) override
 
void visit (const operation::Loss &node) override
 
void visit (const operation::LSTM &) override
 
void visit (const operation::Pack &) override
 
void visit (const operation::Pad &) override
 
void visit (const operation::Permute &node) override
 
void visit (const operation::Pool2D &node) override
 
void visit (const operation::Pow &node) override
 
void visit (const operation::PReLU &) override
 
void visit (const operation::Range &) override
 
void visit (const operation::Rank &) override
 
void visit (const operation::Reduce &) override
 
void visit (const operation::Reshape &node) override
 
void visit (const operation::ResizeBilinear &) override
 
void visit (const operation::ResizeNearestNeighbor &) override
 
void visit (const operation::Reverse &) override
 
void visit (const operation::RmsNorm &) override
 
void visit (const operation::RNN &) override
 
void visit (const operation::Select &node) override
 
void visit (const operation::Shape &node) override
 
void visit (const operation::Softmax &node) override
 
void visit (const operation::SpaceToBatchND &) override
 
void visit (const operation::SpaceToDepth &) override
 
void visit (const operation::Split &) override
 
void visit (const operation::SquaredDifference &) override
 
void visit (const operation::Squeeze &) override
 
void visit (const operation::Slice &) override
 
void visit (const operation::StridedSlice &) override
 
void visit (const operation::StatelessRandomUniform &) override
 
void visit (const operation::Tile &) override
 
void visit (const operation::TopKV2 &) override
 
void visit (const operation::TransposeConv &) override
 
void visit (const operation::Transpose &) override
 
void visit (const operation::Unpack &) override
 
void visit (const operation::OneHot &) override
 
void visit (const operation::If &) override
 
void visit (const operation::While &) override
 
- Public Member Functions inherited from onert::ir::OperationVisitor
virtual ~OperationVisitor ()=default
 

Detailed Description

Definition at line 26 of file OperationDumper.h.

Constructor & Destructor Documentation

◆ OperationDumper()

onert::ir::OperationDumper::OperationDumper ( const std::string &  start_msg)

Definition at line 58 of file OperationDumper.cc.

59{
60 VERBOSE(LIR) << start_msg << std::endl;
61}
#define VERBOSE(name, lv)
Definition Log.h:71

References VERBOSE.

Member Function Documentation

◆ visit() [1/60]

void onert::ir::OperationDumper::visit ( const operation::ArgMinMax node)
override

Definition at line 63 of file OperationDumper.cc.

64{
65 std::string min_max = node.param().is_arg_max ? "(Max)" : "(Min)";
66 VERBOSE(LIR) << "* " << node.name() << min_max << std::endl;
67 VERBOSE(LIR) << " - Inputs : Input(" << node.getInputs().at(ArgMinMax::INPUT) << ") Axis("
68 << node.getInputs().at(ArgMinMax::AXIS) << ") " << std::endl;
69 VERBOSE(LIR) << " - Output : Output(" << node.getOutputs().at(0) << ")" << std::endl;
70}

References onert::ir::OperandIndexSequence::at(), onert::ir::operation::ArgMinMax::AXIS, onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), onert::ir::operation::ArgMinMax::INPUT, onert::ir::operation::ArgMinMax::Param::is_arg_max, onert::ir::IOperation::name(), onert::ir::operation::ArgMinMax::param(), and VERBOSE.

◆ visit() [2/60]

void onert::ir::OperationDumper::visit ( const operation::BatchToSpaceND node)
override

Definition at line 72 of file OperationDumper.cc.

73{
74 std::string block_size =
75 "BlockSize(" + std::to_string(node.getInputs().at(BatchToSpaceND::Input::BLOCK_SIZE).value()) +
76 ")";
77 dumpOpGeneric(node, block_size);
78}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), and onert::util::Index< T, DummyTag >::value().

◆ visit() [3/60]

void onert::ir::OperationDumper::visit ( const operation::BCQFullyConnected node)
override

Definition at line 80 of file OperationDumper.cc.

81{
82 VERBOSE(LIR) << "* " << node.name() << std::endl;
83 VERBOSE(LIR) << " - Inputs : IFM(" << node.getInputs().at(BCQFullyConnected::Input::INPUT)
84 << ") WeightsBinary("
85 << node.getInputs().at(BCQFullyConnected::Input::WEIGHTS_BINARY)
86 << ") WeightsScales("
87 << node.getInputs().at(BCQFullyConnected::Input::WEIGHTS_SCALES)
88 << ") WeightsClusters("
89 << node.getInputs().at(BCQFullyConnected::Input::WEIGHTS_CLUSTERS) << ") Bias("
90 << node.getInputs().at(BCQFullyConnected::Input::BIAS) << ")" << std::endl;
91 VERBOSE(LIR) << " - Output : OFM(" << node.getOutputs().at(0) << ")" << std::endl;
92}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), onert::ir::IOperation::name(), and VERBOSE.

◆ visit() [4/60]

void onert::ir::OperationDumper::visit ( const operation::BinaryArithmetic node)
override

Definition at line 94 of file OperationDumper.cc.

94{ dumpOpGeneric(node); }

◆ visit() [5/60]

void onert::ir::OperationDumper::visit ( const operation::BroadcastTo node)
override

Definition at line 96 of file OperationDumper.cc.

96{ dumpOpGeneric(node); }

◆ visit() [6/60]

void onert::ir::OperationDumper::visit ( const operation::Comparison node)
override

Definition at line 98 of file OperationDumper.cc.

98{ dumpOpGeneric(node); }

◆ visit() [7/60]

void onert::ir::OperationDumper::visit ( const operation::Concat node)
override

Definition at line 100 of file OperationDumper.cc.

100{ dumpOpGeneric(node); }

◆ visit() [8/60]

void onert::ir::OperationDumper::visit ( const operation::Conv2D node)
override

Definition at line 102 of file OperationDumper.cc.

103{
104 std::string padding_type =
105 node.param().padding.type == PaddingType::EXPLICIT ? "Explicit" : "Implicit";
106 dumpConvOp(node, padding_type);
107}

References onert::ir::EXPLICIT, onert::ir::operation::Conv2D::Param::padding, onert::ir::operation::Conv2D::param(), and onert::ir::Padding::type.

◆ visit() [9/60]

void onert::ir::OperationDumper::visit ( const operation::ConvertFp16ToFp32 node)
override

Definition at line 109 of file OperationDumper.cc.

109{ dumpOpGeneric(node); }

◆ visit() [10/60]

void onert::ir::OperationDumper::visit ( const operation::ConvertFp32ToFp16 node)
override

Definition at line 111 of file OperationDumper.cc.

111{ dumpOpGeneric(node); }

◆ visit() [11/60]

void onert::ir::OperationDumper::visit ( const operation::DepthToSpace node)
override

Definition at line 113 of file OperationDumper.cc.

113{ dumpOpGeneric(node); }

◆ visit() [12/60]

void onert::ir::OperationDumper::visit ( const operation::DepthwiseConv2D node)
override

Definition at line 115 of file OperationDumper.cc.

116{
117 std::string padding_type =
118 node.param().padding.type == PaddingType::EXPLICIT ? "Explicit" : "Implicit";
119 dumpConvOp(node, padding_type);
120}

References onert::ir::EXPLICIT, onert::ir::operation::DepthwiseConv2D::Param::padding, onert::ir::operation::DepthwiseConv2D::param(), and onert::ir::Padding::type.

◆ visit() [13/60]

void onert::ir::OperationDumper::visit ( const operation::ElementwiseActivation node)
override

Definition at line 122 of file OperationDumper.cc.

123{
124 std::string params;
125 if (node.param().op_type == ElementwiseActivation::Type::RELU)
126 {
127 params = " lower value(" + std::to_string(node.param().alpha) + ") upper value(" +
128 std::to_string(node.param().beta) + ")";
129 }
130 else if (node.param().op_type == ElementwiseActivation::Type::LEAKY_RELU)
131 {
132 params = " alpha value(" + std::to_string(node.param().alpha) + ")";
133 }
134 else if (node.param().op_type == ElementwiseActivation::Type::GELU)
135 {
136 params = " approximate(" + std::to_string(node.param().approximate) + ")";
137 }
138 dumpOpGeneric(node, params);
139}

References onert::ir::operation::ElementwiseActivation::Param::alpha, onert::ir::operation::ElementwiseActivation::Param::approximate, onert::ir::operation::ElementwiseActivation::Param::beta, onert::ir::operation::ElementwiseActivation::Param::op_type, and onert::ir::operation::ElementwiseActivation::param().

◆ visit() [14/60]

void onert::ir::OperationDumper::visit ( const operation::ElementwiseBinary node)
override

Definition at line 141 of file OperationDumper.cc.

141{ dumpOpGeneric(node); }

◆ visit() [15/60]

void onert::ir::OperationDumper::visit ( const operation::ElementwiseUnary node)
override

Definition at line 143 of file OperationDumper.cc.

143{ dumpOpGeneric(node); }

◆ visit() [16/60]

void onert::ir::OperationDumper::visit ( const operation::EmbeddingLookup node)
override

Definition at line 145 of file OperationDumper.cc.

146{
147 VERBOSE(LIR) << "* " << node.name() << std::endl;
148 VERBOSE(LIR) << " - Inputs : Lookups(" << node.getInputs().at(EmbeddingLookup::Input::LOOKUPS)
149 << ") VALUES(" << node.getInputs().at(EmbeddingLookup::Input::VALUES) << ")"
150 << std::endl;
151 VERBOSE(LIR) << " - Output : Output(" << node.getOutputs().at(0) << ")" << std::endl;
152}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), onert::ir::IOperation::name(), and VERBOSE.

◆ visit() [17/60]

void onert::ir::OperationDumper::visit ( const operation::ExpandDims node)
override

Definition at line 154 of file OperationDumper.cc.

155{
156 std::string axis =
157 "AXIS(" + std::to_string(node.getInputs().at(ExpandDims::Input::AXIS).value()) + ")";
158 dumpUnaryInputOp(node, axis);
159}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), and onert::util::Index< T, DummyTag >::value().

◆ visit() [18/60]

void onert::ir::OperationDumper::visit ( const operation::Fill node)
override

Definition at line 161 of file OperationDumper.cc.

162{
163 VERBOSE(LIR) << "* " << node.name() << std::endl;
164 VERBOSE(LIR) << " - Inputs : Shape(" << node.getInputs().at(Fill::Input::SHAPE) << ") Value("
165 << node.getInputs().at(Fill::Input::VALUE) << ")" << std::endl;
166 VERBOSE(LIR) << " - Output : Output(" << node.getOutputs().at(0) << ")" << std::endl;
167}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), onert::ir::IOperation::name(), and VERBOSE.

◆ visit() [19/60]

void onert::ir::OperationDumper::visit ( const operation::FullyConnected node)
override

Definition at line 169 of file OperationDumper.cc.

170{
171 VERBOSE(LIR) << "* " << node.name() << std::endl;
172 VERBOSE(LIR) << " - Inputs : Input(" << node.getInputs().at(ArgMinMax::INPUT) << ") Weight("
173 << node.getInputs().at(FullyConnected::Input::WEIGHT) << ") Bias("
174 << node.getInputs().at(FullyConnected::Input::BIAS) << ")" << std::endl;
175 VERBOSE(LIR) << " - Output : Output(" << node.getOutputs().at(0) << ")" << std::endl;
176}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), onert::ir::operation::ArgMinMax::INPUT, onert::ir::IOperation::name(), and VERBOSE.

◆ visit() [20/60]

void onert::ir::OperationDumper::visit ( const operation::Gather node)
override

Definition at line 178 of file OperationDumper.cc.

179{
180 std::string indices =
181 "Indices(" + std::to_string(node.getInputs().at(Gather::Input::INDICES).value()) + ")";
182 dumpUnaryInputOp(node, indices);
183}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), and onert::util::Index< T, DummyTag >::value().

◆ visit() [21/60]

void onert::ir::OperationDumper::visit ( const operation::HashtableLookup node)
override

Definition at line 185 of file OperationDumper.cc.

186{
187 VERBOSE(LIR) << "* HashTableLookup" << std::endl;
188 VERBOSE(LIR) << " - Inputs : Lookups(" << node.getInputs().at(HashtableLookup::Input::LOOKUPS)
189 << ") Keys(" << node.getInputs().at(HashtableLookup::Input::KEYS) << ") Values("
190 << node.getInputs().at(HashtableLookup::Input::VALUES) << ")" << std::endl;
191 VERBOSE(LIR) << " - Outputs : Output(" << node.getInputs().at(HashtableLookup::Output::OUTPUT)
192 << ") Hits(" << node.getInputs().at(HashtableLookup::Output::HITS) << ")"
193 << std::endl;
194}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), and VERBOSE.

◆ visit() [22/60]

void onert::ir::OperationDumper::visit ( const operation::If node)
override

Definition at line 456 of file OperationDumper.cc.

457{
458 VERBOSE(LIR) << "* " << node.name() << std::endl;
459 VERBOSE(LIR) << " - Inputs : "
460 << "Then subgraph (" << node.param().then_subg_index << ") Else subgraph ("
461 << node.param().else_subg_index << ") Inputs(" << node.getInputs() << ")"
462 << std::endl;
463 VERBOSE(LIR) << " - Output : Outputs(" << node.getOutputs() << ")" << std::endl;
464}

References onert::ir::operation::If::Param::else_subg_index, onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), onert::ir::IOperation::name(), onert::ir::operation::If::param(), onert::ir::operation::If::Param::then_subg_index, and VERBOSE.

◆ visit() [23/60]

void onert::ir::OperationDumper::visit ( const operation::InstanceNorm node)
override

Definition at line 196 of file OperationDumper.cc.

197{
198 std::string inputs =
199 "Gamma(" + std::to_string(node.getInputs().at(InstanceNorm::Input::GAMMA).value()) + ") Beta(" +
200 std::to_string(node.getInputs().at(InstanceNorm::Input::BETA).value()) + ")";
201 dumpUnaryInputOp(node, inputs);
202}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), and onert::util::Index< T, DummyTag >::value().

◆ visit() [24/60]

void onert::ir::OperationDumper::visit ( const operation::L2Normalization node)
override

Definition at line 204 of file OperationDumper.cc.

204{ dumpOpGeneric(node); }

◆ visit() [25/60]

void onert::ir::OperationDumper::visit ( const operation::LocalResponseNormalization node)
override

Definition at line 206 of file OperationDumper.cc.

206{ dumpOpGeneric(node); }

◆ visit() [26/60]

void onert::ir::OperationDumper::visit ( const operation::Loss node)
override

Definition at line 208 of file OperationDumper.cc.

209{
210 VERBOSE(LIR) << "* " << node.name() << std::endl;
211 VERBOSE(LIR) << " - Inputs : Prediction(" << node.getInputs().at(Loss::Input::Y_PRED) << ") True("
212 << node.getInputs().at(Loss::Input::Y_TRUE) << ")" << std::endl;
213 VERBOSE(LIR) << " - Outputs : Output(" << node.getOutputs().at(0) << ")" << std::endl;
214}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), onert::ir::IOperation::name(), and VERBOSE.

◆ visit() [27/60]

void onert::ir::OperationDumper::visit ( const operation::LSTM node)
override

Definition at line 216 of file OperationDumper.cc.

217{
218 VERBOSE(LIR) << "* " << node.name() << std::endl;
219 VERBOSE(LIR)
220 << " - Inputs : Input(" << node.getInputs().at(LSTM::Input::INPUT)
221 << ") Input To Input Weights(" << node.getInputs().at(LSTM::Input::INPUT_TO_INPUT_WEIGHTS)
222 << ") Input To Forget Weights(" << node.getInputs().at(LSTM::Input::INPUT_TO_FORGET_WEIGHTS)
223 << ") Input To Cell Weights(" << node.getInputs().at(LSTM::Input::INPUT_TO_CELL_WEIGHTS)
224 << ") Input To Output Weights(" << node.getInputs().at(LSTM::Input::INPUT_TO_OUTPUT_WEIGHTS)
225 << ") Recurrent To Input Weights("
226 << node.getInputs().at(LSTM::Input::RECURRENT_TO_INPUT_WEIGHTS)
227 << ") Recurrent To Forget Weights("
228 << node.getInputs().at(LSTM::Input::RECURRENT_TO_FORGET_WEIGHTS)
229 << ") Recurrent To Cell Weights(" << node.getInputs().at(LSTM::Input::RECURRENT_TO_CELL_WEIGHTS)
230 << ") Recurrent To Output Weights("
231 << node.getInputs().at(LSTM::Input::RECURRENT_TO_OUTPUT_WEIGHTS) << ") Cell To Input Weights("
232 << node.getInputs().at(LSTM::Input::CELL_TO_INPUT_WEIGHTS) << ") Cell To Forget Weights("
233 << node.getInputs().at(LSTM::Input::CELL_TO_FORGET_WEIGHTS) << ") Cell To OUTPUT Weights("
234 << node.getInputs().at(LSTM::Input::CELL_TO_OUTPUT_WEIGHTS) << ") Input Gate Bias("
235 << node.getInputs().at(LSTM::Input::INPUT_GATE_BIAS) << ") Forget Gate Bias("
236 << node.getInputs().at(LSTM::Input::FORGET_GATE_BIAS) << ") Cell Bias("
237 << node.getInputs().at(LSTM::Input::CELL_BIAS) << ") Output Gate Bias("
238 << node.getInputs().at(LSTM::Input::OUTPUT_GATE_BIAS) << ") Projection Weights("
239 << node.getInputs().at(LSTM::Input::PROJECTION_WEIGHTS) << ") Projection Bias("
240 << node.getInputs().at(LSTM::Input::PROJECTION_BIAS) << ") Output State In("
241 << node.getInputs().at(LSTM::Input::OUTPUT_STATE_IN) << ") Cell State In("
242 << node.getInputs().at(LSTM::Input::CELL_STATE_IN);
243 if (node.getInputs().size() == 24)
244 {
245 VERBOSE(LIR) << ") Input Layer Normalization Weights("
246 << node.getInputs().at(LSTM::Input::INPUT_LAYER_NORMALIZATION_WEIGHTS)
247 << ") Forget Layer Normalization Weights("
248 << node.getInputs().at(LSTM::Input::FORGET_LAYER_NORMALIZATION_WEIGHTS)
249 << ") Cell Layer Normalization Weights("
250 << node.getInputs().at(LSTM::Input::CELL_LAYER_NORMALIZATION_WEIGHTS)
251 << ") Ouput Layer Normalization Weights("
252 << node.getInputs().at(LSTM::Input::OUTPUT_LAYER_NORMALIZATION_WEIGHTS);
253 }
254 VERBOSE(LIR) << ")" << std::endl;
255 VERBOSE(LIR) << " - Output : Scratch Buffer("
256 << node.getOutputs().at(LSTM::Output::SCRATCH_BUFFER) << ") Output State Out("
257 << node.getOutputs().at(LSTM::Output::OUTPUT_STATE_OUT) << ") Cell State Out("
258 << node.getOutputs().at(LSTM::Output::CELL_STATE_OUT) << ") Output("
259 << node.getOutputs().at(LSTM::Output::OUTPUT) << ")" << std::endl;
260}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), onert::ir::operation::LSTM::name(), onert::ir::OperandIndexSequence::size(), and VERBOSE.

◆ visit() [28/60]

void onert::ir::OperationDumper::visit ( const operation::OneHot node)
override

Definition at line 448 of file OperationDumper.cc.

449{
450 VERBOSE(LIR) << "* " << node.name() << std::endl;
451 VERBOSE(LIR) << " - Inputs : "
452 << "Indices(" << node.getInputs().at(OneHot::Input::INDICES) << ") " << std::endl;
453 VERBOSE(LIR) << " - Output : Output(" << node.getOutputs().at(0) << ")" << std::endl;
454}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), onert::ir::IOperation::name(), and VERBOSE.

◆ visit() [29/60]

void onert::ir::OperationDumper::visit ( const operation::Pack node)
override

Definition at line 262 of file OperationDumper.cc.

262{ dumpOpGeneric(node); }

◆ visit() [30/60]

void onert::ir::OperationDumper::visit ( const operation::Pad node)
override

Definition at line 264 of file OperationDumper.cc.

265{
266 std::string pad = "Pad(" + std::to_string(node.getInputs().at(Pad::Input::PAD).value()) + ")";
267 dumpUnaryInputOp(node, pad);
268}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), and onert::util::Index< T, DummyTag >::value().

◆ visit() [31/60]

void onert::ir::OperationDumper::visit ( const operation::Permute node)
override

Definition at line 270 of file OperationDumper.cc.

271{
272 std::string permute_type = "Unknown";
273
274 switch (node.getPermuteType())
275 {
277 permute_type = "Same Layout";
278 break;
280 permute_type = "NHWC to NCHW";
281 break;
283 permute_type = "NCHW to NHWC";
284 break;
285 }
286
287 VERBOSE(LIR) << "* " << node.name() + "(" + permute_type + ")" << std::endl;
288 VERBOSE(LIR) << " - Inputs : Input(" << node.getInputs().at(0) << ")" << std::endl;
289 VERBOSE(LIR) << " - Output : Output(" << node.getOutputs().at(0) << ")" << std::endl;
290}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), onert::ir::operation::Permute::getPermuteType(), onert::ir::IOperation::name(), onert::ir::NCHW_TO_NHWC, onert::ir::NHWC_TO_NCHW, onert::ir::SAME, and VERBOSE.

◆ visit() [32/60]

void onert::ir::OperationDumper::visit ( const operation::Pool2D node)
override

Definition at line 292 of file OperationDumper.cc.

293{
294 std::string padding_type =
295 node.param().padding.type == PaddingType::EXPLICIT ? "Explicit" : "Implicit";
296 VERBOSE(LIR) << "* " << node.name() << "(" << padding_type << ")" << std::endl;
297 VERBOSE(LIR) << " - Inputs : IFM(" << node.getInputs().at(Pool2D::Input::INPUT) << ")"
298 << std::endl;
299 VERBOSE(LIR) << " - Output : OFM(" << node.getOutputs().at(0) << ")" << std::endl;
300}

References onert::ir::OperandIndexSequence::at(), onert::ir::EXPLICIT, onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), onert::ir::operation::Pool2D::name(), onert::ir::operation::Pool2D::Param::padding, onert::ir::operation::Pool2D::param(), onert::ir::Padding::type, and VERBOSE.

◆ visit() [33/60]

void onert::ir::OperationDumper::visit ( const operation::Pow node)
override

Definition at line 302 of file OperationDumper.cc.

302{ dumpOpGeneric(node); }

◆ visit() [34/60]

void onert::ir::OperationDumper::visit ( const operation::PReLU node)
override

Definition at line 304 of file OperationDumper.cc.

305{
306 std::string alpha =
307 "Alpha(" + std::to_string(node.getInputs().at(PReLU::Input::ALPHA).value()) + ")";
308 dumpOpGeneric(node, alpha);
309}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), and onert::util::Index< T, DummyTag >::value().

◆ visit() [35/60]

void onert::ir::OperationDumper::visit ( const operation::Range node)
override

Definition at line 356 of file OperationDumper.cc.

357{
358 VERBOSE(LIR) << "* Range" << std::endl;
359 VERBOSE(LIR) << " - Inputs : Start(" << node.getInputs().at(Range::Input::START) << ")"
360 << " Limit(" << node.getInputs().at(Range::Input::LIMIT) << ")"
361 << " Delta(" << node.getInputs().at(Range::Input::DELTA) << ")" << std::endl;
362 VERBOSE(LIR) << " - Output : Output(" << node.getOutputs().at(0) << ")" << std::endl;
363}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), and VERBOSE.

◆ visit() [36/60]

void onert::ir::OperationDumper::visit ( const operation::Rank node)
override

Definition at line 311 of file OperationDumper.cc.

311{ dumpOpGeneric(node); }

◆ visit() [37/60]

void onert::ir::OperationDumper::visit ( const operation::Reduce node)
override

Definition at line 313 of file OperationDumper.cc.

313{ dumpUnaryInputOp(node); }

◆ visit() [38/60]

void onert::ir::OperationDumper::visit ( const operation::Reshape node)
override

Definition at line 315 of file OperationDumper.cc.

316{
317 // optional param
318 std::string shape =
319 node.getInputs().size() == 2
320 ? "Shape(" + std::to_string(node.getInputs().at(Reshape::Input::SHAPE).value()) + ")"
321 : "Shape(not provided)";
322 dumpUnaryInputOp(node, shape);
323}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), onert::ir::OperandIndexSequence::size(), and onert::util::Index< T, DummyTag >::value().

◆ visit() [39/60]

void onert::ir::OperationDumper::visit ( const operation::ResizeBilinear node)
override

Definition at line 325 of file OperationDumper.cc.

325{ dumpOpGeneric(node); }

◆ visit() [40/60]

void onert::ir::OperationDumper::visit ( const operation::ResizeNearestNeighbor node)
override

Definition at line 327 of file OperationDumper.cc.

327{ dumpOpGeneric(node); }

◆ visit() [41/60]

void onert::ir::OperationDumper::visit ( const operation::Reverse node)
override

Definition at line 329 of file OperationDumper.cc.

330{
331 std::string axis =
332 "Axis(" + std::to_string(node.getInputs().at(Reverse::Input::AXIS).value()) + ")";
333 dumpUnaryInputOp(node, axis);
334}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), and onert::util::Index< T, DummyTag >::value().

◆ visit() [42/60]

void onert::ir::OperationDumper::visit ( const operation::RmsNorm node)
override

Definition at line 336 of file OperationDumper.cc.

337{
338 std::string inputs =
339 "Gamma(" + std::to_string(node.getInputs().at(RmsNorm::Input::GAMMA).value()) + ")";
340 dumpUnaryInputOp(node, inputs);
341}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), and onert::util::Index< T, DummyTag >::value().

◆ visit() [43/60]

void onert::ir::OperationDumper::visit ( const operation::RNN node)
override

Definition at line 343 of file OperationDumper.cc.

344{
345 VERBOSE(LIR) << "* RNN" << std::endl;
346 VERBOSE(LIR) << " - Inputs : Input(" << node.getInputs().at(RNN::Input::INPUT) << ") Weights("
347 << node.getInputs().at(RNN::Input::WEIGHTS) << ") Recurrent Weights("
348 << node.getInputs().at(RNN::Input::RECURRENT_WEIGHTS) << ") Bias("
349 << node.getInputs().at(RNN::Input::BIAS) << ") Hidden State("
350 << node.getInputs().at(RNN::Input::HIDDEN_STATE_IN) << ")" << std::endl;
351 VERBOSE(LIR) << " - Output : Output(" << node.getOutputs().at(RNN::Output::OUTPUT)
352 << ") Hidden State(" << node.getInputs().at(RNN::Output::HIDDEN_STATE_OUT) << ")"
353 << std::endl;
354}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), and VERBOSE.

◆ visit() [44/60]

void onert::ir::OperationDumper::visit ( const operation::Select node)
override

Definition at line 365 of file OperationDumper.cc.

366{
367 VERBOSE(LIR) << "* Select" << std::endl;
368 VERBOSE(LIR) << " - Inputs : Condition(" << node.getInputs().at(Select::Input::CONDITION) << ")"
369 << " Input_X(" << node.getInputs().at(Select::Input::INPUT_TRUE) << ")"
370 << " Input_Y(" << node.getInputs().at(Select::Input::INPUT_FALSE) << ")"
371 << std::endl;
372 VERBOSE(LIR) << " - Output : Output(" << node.getOutputs().at(0) << ")" << std::endl;
373}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), and VERBOSE.

◆ visit() [45/60]

void onert::ir::OperationDumper::visit ( const operation::Shape node)
override

Definition at line 375 of file OperationDumper.cc.

375{ dumpOpGeneric(node); }

◆ visit() [46/60]

void onert::ir::OperationDumper::visit ( const operation::Slice node)
override

Definition at line 405 of file OperationDumper.cc.

405{ dumpUnaryInputOp(node); }

◆ visit() [47/60]

void onert::ir::OperationDumper::visit ( const operation::Softmax node)
override

Definition at line 377 of file OperationDumper.cc.

377{ dumpOpGeneric(node); }

◆ visit() [48/60]

void onert::ir::OperationDumper::visit ( const operation::SpaceToBatchND node)
override

Definition at line 379 of file OperationDumper.cc.

380{
381 std::string inputs =
382 "BlockSize(" + std::to_string(node.getInputs().at(SpaceToBatchND::Input::BLOCK_SIZE).value()) +
383 ") Paddings(" + std::to_string(node.getInputs().at(SpaceToBatchND::Input::PADDINGS).value()) +
384 ")";
385 dumpUnaryInputOp(node, inputs);
386}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), and onert::util::Index< T, DummyTag >::value().

◆ visit() [49/60]

void onert::ir::OperationDumper::visit ( const operation::SpaceToDepth node)
override

Definition at line 388 of file OperationDumper.cc.

388{ dumpOpGeneric(node); }

◆ visit() [50/60]

void onert::ir::OperationDumper::visit ( const operation::Split node)
override

Definition at line 390 of file OperationDumper.cc.

390{ dumpOpGeneric(node); }

◆ visit() [51/60]

void onert::ir::OperationDumper::visit ( const operation::SquaredDifference node)
override

Definition at line 392 of file OperationDumper.cc.

392{ dumpOpGeneric(node); }

◆ visit() [52/60]

void onert::ir::OperationDumper::visit ( const operation::Squeeze node)
override

Definition at line 403 of file OperationDumper.cc.

403{ dumpOpGeneric(node); }

◆ visit() [53/60]

void onert::ir::OperationDumper::visit ( const operation::StatelessRandomUniform node)
override

Definition at line 394 of file OperationDumper.cc.

395{
396 VERBOSE(LIR) << "* StatelessRandomUniform" << std::endl;
397 VERBOSE(LIR) << " - Inputs : Shape(" << node.getInputs().at(StatelessRandomUniform::Input::SHAPE)
398 << " Seed(" << node.getInputs().at(StatelessRandomUniform::Input::SEED) << ")"
399 << std::endl;
400 VERBOSE(LIR) << " - Output : Output(" << node.getOutputs().at(0) << ")" << std::endl;
401}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), and VERBOSE.

◆ visit() [54/60]

void onert::ir::OperationDumper::visit ( const operation::StridedSlice node)
override

Definition at line 407 of file OperationDumper.cc.

407{ dumpUnaryInputOp(node); }

◆ visit() [55/60]

void onert::ir::OperationDumper::visit ( const operation::Tile node)
override

Definition at line 409 of file OperationDumper.cc.

410{
411 std::string multiples =
412 "Multiples(" + std::to_string(node.getInputs().at(Tile::Input::MULTIPLES).value()) + ")";
413 dumpUnaryInputOp(node, multiples);
414}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), and onert::util::Index< T, DummyTag >::value().

◆ visit() [56/60]

void onert::ir::OperationDumper::visit ( const operation::TopKV2 node)
override

Definition at line 416 of file OperationDumper.cc.

417{
418 VERBOSE(LIR) << "* TopKV2" << std::endl;
419 VERBOSE(LIR) << " - Inputs : Input(" << node.getInputs().at(TopKV2::Input::INPUT) << ")"
420 << std::endl;
421 VERBOSE(LIR) << " - Outputs : Values(" << node.getOutputs().at(TopKV2::Output::OUTPUT_VALUES)
422 << ") Indices(" << node.getOutputs().at(TopKV2::Output::OUTPUT_INDICES) << ")"
423 << std::endl;
424}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), and VERBOSE.

◆ visit() [57/60]

void onert::ir::OperationDumper::visit ( const operation::Transpose node)
override

Definition at line 438 of file OperationDumper.cc.

438{ dumpOpGeneric(node); }

◆ visit() [58/60]

void onert::ir::OperationDumper::visit ( const operation::TransposeConv node)
override

Definition at line 426 of file OperationDumper.cc.

427{
428 std::string padding_type =
429 node.param().padding.type == PaddingType::EXPLICIT ? "Explicit" : "Implicit";
430 VERBOSE(LIR) << "* TransposeConv(" << padding_type << ")" << std::endl;
431 VERBOSE(LIR) << " - Inputs : Output Shape("
432 << node.getInputs().at(TransposeConv::Input::OUTPUT_SHAPE) << ") KERNEL("
433 << node.getInputs().at(TransposeConv::Input::KERNEL) << ") IFM("
434 << node.getInputs().at(TransposeConv::Input::INPUT) << ")" << std::endl;
435 VERBOSE(LIR) << " - Output : OFM(" << node.getOutputs().at(0) << ")" << std::endl;
436}

References onert::ir::OperandIndexSequence::at(), onert::ir::EXPLICIT, onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), onert::ir::operation::TransposeConv::Param::padding, onert::ir::operation::TransposeConv::param(), onert::ir::Padding::type, and VERBOSE.

◆ visit() [59/60]

void onert::ir::OperationDumper::visit ( const operation::Unpack node)
override

Definition at line 440 of file OperationDumper.cc.

441{
442 VERBOSE(LIR) << "* " << node.name() << std::endl;
443 VERBOSE(LIR) << " - Inputs : Input(" << node.getInputs().at(Unpack::Input::INPUT) << ")"
444 << std::endl;
445 VERBOSE(LIR) << " - Output : Outputs(" << node.getOutputs() << ")" << std::endl;
446}

References onert::ir::OperandIndexSequence::at(), onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), onert::ir::IOperation::name(), and VERBOSE.

◆ visit() [60/60]

void onert::ir::OperationDumper::visit ( const operation::While node)
override

Definition at line 466 of file OperationDumper.cc.

467{
468 VERBOSE(LIR) << "* " << node.name() << std::endl;
469 VERBOSE(LIR) << " - Inputs : "
470 << "Cond subgraph (" << node.param().cond_subg_index << ") Body subgraph ("
471 << node.param().body_subg_index << ") Inputs(" << node.getInputs() << ")"
472 << std::endl;
473 VERBOSE(LIR) << " - Output : Outputs(" << node.getOutputs() << ")" << std::endl;
474}

References onert::ir::operation::While::Param::body_subg_index, onert::ir::operation::While::Param::cond_subg_index, onert::ir::Operation::getInputs(), onert::ir::Operation::getOutputs(), onert::ir::IOperation::name(), onert::ir::operation::While::param(), and VERBOSE.


The documentation for this class was generated from the following files: