|
|
|
@ -101,6 +101,10 @@ int SubGraphOpenCLKernel::GenToFormatOp(const std::vector<lite::Tensor *> &in_te
|
|
|
|
|
out_convert_ops->clear();
|
|
|
|
|
MS_ASSERT(in_tensors.size() == to_kernels.size());
|
|
|
|
|
MS_ASSERT(in_tensors.size() == from_kernels.size());
|
|
|
|
|
std::vector<std::vector<kernel::LiteKernel *>> loop_kernels;
|
|
|
|
|
if (mem_type == OpenCLMemType::BUF) {
|
|
|
|
|
GetKernelFromToTensor(in_tensors, nodes_, &loop_kernels, true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ReplaceOutTensorAndKernelToNull(in_tensors, in_kernels, mem_type);
|
|
|
|
|
|
|
|
|
@ -163,8 +167,6 @@ int SubGraphOpenCLKernel::GenToFormatOp(const std::vector<lite::Tensor *> &in_te
|
|
|
|
|
|
|
|
|
|
// replace in_tensor of inner kernel which use out tensor
|
|
|
|
|
if (mem_type == OpenCLMemType::BUF) {
|
|
|
|
|
std::vector<std::vector<kernel::LiteKernel *>> loop_kernels;
|
|
|
|
|
GetKernelFromToTensor(in_tensors, nodes_, &loop_kernels, true);
|
|
|
|
|
for (auto &iv : loop_kernels[i]) {
|
|
|
|
|
auto tensors = iv->in_tensors();
|
|
|
|
|
auto jv = std::find(tensors.begin(), tensors.end(), in_tensors.at(i));
|
|
|
|
|