This commit introduces `SupportPermutation` to check if backend supports permutation.
Signed-off-by: jiseob.jang <jiseob.jang@samsung.com>
public:
std::string id() override { return "acl_cl"; }
void initialize() override;
+ bool SupportPermutation() override { return true; }
bool SupportSubTensorAlloc() override { return true; }
std::unique_ptr<util::ITimer> timer() override { return nnfw::cpp14::make_unique<CLTimer>(); }
};
public:
std::string id() override { return "acl_neon"; }
void initialize() override;
+ bool SupportPermutation() override { return true; }
bool SupportSubTensorAlloc() override { return true; }
std::unique_ptr<util::ITimer> timer() override
public:
std::string id() override { return "cpu"; }
void initialize() override;
+ bool SupportPermutation() override { return true; }
bool SupportSubTensorAlloc() override
{
// NOTE CPU allocator cannot support subtensor allocation yet
public:
std::string id() override { return "srcn"; }
void initialize() override;
+ bool SupportPermutation() override { return false; }
bool SupportSubTensorAlloc() override
{
// NOTE srcn allocator cannot support subtensor allocation yet
virtual std::string id() = 0;
virtual void initialize() = 0;
+ // Support permute kernel
+ virtual bool SupportPermutation() = 0;
// Support subtensor allocation
virtual bool SupportSubTensorAlloc() = 0;
{
std::string id() override { return "b1"; }
void initialize() override{};
+ bool SupportPermutation() override { return false; }
bool SupportSubTensorAlloc() override { return false; }
};
{
std::string id() override { return "cpu"; }
void initialize() override{};
+ bool SupportPermutation() override { return false; }
bool SupportSubTensorAlloc() override { return false; }
};
{
std::string id() override { return "gpu"; }
void initialize() override{};
+ bool SupportPermutation() override { return false; }
bool SupportSubTensorAlloc() override { return false; }
};
{
std::string id() override { return "npu"; }
void initialize() override{};
+ bool SupportPermutation() override { return false; }
bool SupportSubTensorAlloc() override { return false; }
};