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 29 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 27 of file Permute.cc.
|
inlinefinalvirtual |
Implements onert::ir::IOperation.
Definition at line 59 of file Permute.h.