31 struct NEPermute::Impl
33 const ITensor *
src{
nullptr };
34 ITensor *
dst{
nullptr };
35 std::unique_ptr<cpu::CpuPermute> op{
nullptr };
39 : _impl(
std::make_unique<Impl>())
55 _impl->op = std::make_unique<cpu::CpuPermute>();
56 _impl->op->configure(input->
info(), output->
info(), perm);
NEPermute & operator=(const NEPermute &)=delete
Prevent instances of this class from being copied (As this class contains pointers) ...
#define ARM_COMPUTE_RETURN_ON_ERROR(status)
Checks if a status contains an error and returns it.
Store the tensor's metadata.
static Status validate(const ITensorInfo *input, const ITensorInfo *output, const PermutationVector &perm)
Static function to check if given info will lead to a valid configuration of NEPermute.
~NEPermute()
Default Destructor.
Basic function to run cpu::kernels::CpuPermuteKernel.
Interface for Neon tensor.
NEPermute()
Default Constructor.
SimpleTensor< float > src
Copyright (c) 2017-2021 Arm Limited.
#define ARM_COMPUTE_RETURN_ERROR_ON_NULLPTR(...)
virtual ITensorInfo * info() const =0
Interface to be implemented by the child class to return the tensor's metadata.
static Status validate(const ITensorInfo *src, const ITensorInfo *dst, const PermutationVector &perm)
Static function to check if given info will lead to a valid configuration of CpuPermute.
Strides of an item in bytes.
void run() override
Run the kernels contained in the function.
#define ARM_COMPUTE_ERROR_ON_NULLPTR(...)
void configure(const ITensor *input, ITensor *output, const PermutationVector &perm)
Configure the permute Neon kernel.
void add_tensor(int id, ITensor *tensor)
Add tensor to the pack.