ONE - On-device Neural Engine
|
Class to represent Permute operation. More...
#include <Permute.h>
Class to represent Permute operation.
This operation is virtual operation, which is not used on real model, but used internally. It was introduced to support various model layout (NHWC, NCHW, etc) and backend layout. But currently, model layout and backend layout are always same as NHWC. So this operation is used for below cases. 1) Handle model output buffer's special case 1-1) Model output is comes from model constant 1-2) Model output is comes from model input 1-3) Model output shares tensor with other model output(s) 2) Handle shared tensor between different backend Q) Why name is still 'Permute'? A) It is handled as copy operation on compile phase, but it can be permute operation if output buffer layout is changed by API call
onert::ir::operation::Permute::Permute | ( | const OperandIndex & | input, |
const OperandIndex & | output | ||
) |
Definition at line 25 of file Permute.cc.
References onert::ir::Operation::setInputs(), and onert::ir::Operation::setOutputs().
|
overridevirtual |
Implements onert::ir::IOperation.
Reimplemented in onert::ir::train::operation::Permute.
Definition at line 23 of file Permute.cc.
|
inlinefinalvirtual |
Implements onert::ir::IOperation.
Definition at line 52 of file Permute.h.