fix kernel_executor Resize bug.

Merge pull request  from 王平安/single_op_bug
This commit is contained in:
i-robot 2022-06-15 06:25:40 +00:00 committed by Gitee
commit ef7c7b27e2
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
4 changed files with 57 additions and 0 deletions

View File

@ -61,6 +61,13 @@ class ConvolutionDelegateFP16CPUKernel : public LiteKernel {
return fp16_conv_kernel_->workspace_size();
}
void set_in_tensors(const std::vector<lite::Tensor *> &in_tensors) override {
this->in_tensors_ = in_tensors;
if (fp16_conv_kernel_ != nullptr) {
fp16_conv_kernel_->set_in_tensors(in_tensors);
}
}
void set_in_tensor(lite::Tensor *in_tensor, size_t index) override {
MS_ASSERT(index < in_tensors_.size());
this->in_tensors_[index] = in_tensor;
@ -69,6 +76,13 @@ class ConvolutionDelegateFP16CPUKernel : public LiteKernel {
}
}
void set_out_tensors(const std::vector<lite::Tensor *> &out_tensors) override {
this->out_tensors_ = out_tensors;
if (fp16_conv_kernel_ != nullptr) {
fp16_conv_kernel_->set_out_tensors(out_tensors);
}
}
void set_out_tensor(lite::Tensor *out_tensor, size_t index) override {
MS_ASSERT(index < out_tensors_.size());
this->out_tensors_[index] = out_tensor;

View File

@ -45,6 +45,13 @@ class ConvolutionDelegateCPUKernel : public LiteKernel {
return conv_kernel_->Run();
}
void set_in_tensors(const std::vector<lite::Tensor *> &in_tensors) override {
this->in_tensors_ = in_tensors;
if (conv_kernel_ != nullptr) {
conv_kernel_->set_in_tensors(in_tensors);
}
}
void set_in_tensor(lite::Tensor *in_tensor, size_t index) override {
MS_ASSERT(index < in_tensors_.size());
this->in_tensors_[index] = in_tensor;
@ -53,6 +60,13 @@ class ConvolutionDelegateCPUKernel : public LiteKernel {
}
}
void set_out_tensors(const std::vector<lite::Tensor *> &out_tensors) override {
this->out_tensors_ = out_tensors;
if (conv_kernel_ != nullptr) {
conv_kernel_->set_out_tensors(out_tensors);
}
}
void set_out_tensor(lite::Tensor *out_tensor, size_t index) override {
MS_ASSERT(index < out_tensors_.size());
this->out_tensors_[index] = out_tensor;

View File

@ -94,6 +94,13 @@ class FullconnectionCPUKernel : public LiteKernel {
int ReSize() override;
int Run() override;
void set_in_tensors(const std::vector<lite::Tensor *> &in_tensors) override {
this->in_tensors_ = in_tensors;
if (matmul_base_ != nullptr) {
matmul_base_->set_in_tensors(in_tensors);
}
}
void set_in_tensor(lite::Tensor *in_tensor, size_t index) override {
MS_ASSERT(index < in_tensors_.size());
this->in_tensors_[index] = in_tensor;
@ -102,6 +109,13 @@ class FullconnectionCPUKernel : public LiteKernel {
}
}
void set_out_tensors(const std::vector<lite::Tensor *> &out_tensors) override {
this->out_tensors_ = out_tensors;
if (matmul_base_ != nullptr) {
matmul_base_->set_out_tensors(out_tensors);
}
}
void set_out_tensor(lite::Tensor *out_tensor, size_t index) override {
MS_ASSERT(index < out_tensors_.size());
this->out_tensors_[index] = out_tensor;

View File

@ -85,6 +85,14 @@ class MatmulCPUKernel : public LiteKernel {
matmul_base_ = nullptr;
}
}
void set_in_tensors(const std::vector<lite::Tensor *> &in_tensors) override {
this->in_tensors_ = in_tensors;
if (matmul_base_ != nullptr) {
matmul_base_->set_in_tensors(in_tensors);
}
}
void set_in_tensor(lite::Tensor *in_tensor, size_t index) override {
MS_ASSERT(index < in_tensors_.size());
this->in_tensors_[index] = in_tensor;
@ -93,6 +101,13 @@ class MatmulCPUKernel : public LiteKernel {
}
}
void set_out_tensors(const std::vector<lite::Tensor *> &out_tensors) override {
this->out_tensors_ = out_tensors;
if (matmul_base_ != nullptr) {
matmul_base_->set_out_tensors(out_tensors);
}
}
void set_out_tensor(lite::Tensor *out_tensor, size_t index) override {
MS_ASSERT(index < out_tensors_.size());
this->out_tensors_[index] = out_tensor;