Browse Source

[MSLITE] fp16 abort

tags/v1.1.0
ling 5 years ago
parent
commit
bfc5cdad51
5 changed files with 14 additions and 4 deletions
  1. +0
    -2
      mindspore/lite/src/runtime/kernel/arm/fp16/deconvolution_fp16.cc
  2. +5
    -0
      mindspore/lite/src/runtime/kernel/arm/fp16/deconvolution_winograd_fp16.cc
  3. +2
    -0
      mindspore/lite/src/runtime/kernel/arm/fp16/deconvolution_winograd_fp16.h
  4. +5
    -0
      mindspore/lite/src/runtime/kernel/arm/fp32/deconvolution_winograd.cc
  5. +2
    -2
      mindspore/lite/src/runtime/kernel/arm/int8/deconvolution_int8.cc

+ 0
- 2
mindspore/lite/src/runtime/kernel/arm/fp16/deconvolution_fp16.cc View File

@@ -264,6 +264,4 @@ kernel::LiteKernel *CpuDeConvFp16KernelCreator(const std::vector<lite::Tensor *>
}
return kernel;
}

REG_KERNEL(kCPU, kNumberTypeFloat16, PrimitiveType_DeConv2D, CpuDeConvFp16KernelCreator)
} // namespace mindspore::kernel

+ 5
- 0
mindspore/lite/src/runtime/kernel/arm/fp16/deconvolution_winograd_fp16.cc View File

@@ -99,6 +99,11 @@ void DeConvWinogradFp16CPUKernel::FreeDeconvParam() {
}
}

if (deconv_param_->compute_units_ != nullptr) {
free(deconv_param_->compute_units_);
deconv_param_->compute_units_ = nullptr;
}

if (deconv_param_ != nullptr) {
delete (deconv_param_);
deconv_param_ = nullptr;


+ 2
- 0
mindspore/lite/src/runtime/kernel/arm/fp16/deconvolution_winograd_fp16.h View File

@@ -34,6 +34,8 @@ class DeConvWinogradFp16CPUKernel : public ConvolutionBaseFP16CPUKernel {
deconv_param_ = new DeConvParam();
for (auto &wg : deconv_param_->a_buffer_) {
wg.buf_init_ = false;
wg.dest_buffer_ = nullptr;
wg.middle_buffer_ = nullptr;
}
}
~DeConvWinogradFp16CPUKernel() override;


+ 5
- 0
mindspore/lite/src/runtime/kernel/arm/fp32/deconvolution_winograd.cc View File

@@ -88,6 +88,11 @@ void DeConvolutionWinogradCPUKernel::FreeDeconvParam() {
}
}

if (deconv_param_->compute_units_ != nullptr) {
free(deconv_param_->compute_units_);
deconv_param_->compute_units_ = nullptr;
}

if (deconv_param_ != nullptr) {
delete (deconv_param_);
deconv_param_ = nullptr;


+ 2
- 2
mindspore/lite/src/runtime/kernel/arm/int8/deconvolution_int8.cc View File

@@ -103,13 +103,13 @@ void DeConvInt8CPUKernel::CheckSupportOptimize() {
if (dlopen_error != nullptr) {
MS_LOG(ERROR) << "load matmul func failed! " << dlopen_error << ".";
support_optimize_ = false;
matmul_func_ = nullptr;
matmul_func_ = MatMulR4Int8Neon64;
} else {
support_optimize_ = true;
}
} else {
support_optimize_ = false;
matmul_func_ = nullptr;
matmul_func_ = MatMulR4Int8Neon64;
}
#endif
return;


Loading…
Cancel
Save