From aab6b3701967ca9bfeb4f48fbf72886ee36120d1 Mon Sep 17 00:00:00 2001 From: Megvii Engine Team Date: Wed, 28 Apr 2021 13:54:14 +0800 Subject: [PATCH] Revert "perf(opr): use pin mem for param_pack_concat" This reverts commit 95a0997372ff49d77642615bfa42c9be20ada185 GitOrigin-RevId: 12ab59b8aa9707cd0badb50844f51aa848bbc521 --- src/opr/impl/tensor_manip.cpp | 7 ++----- src/opr/include/megbrain/opr/tensor_manip.h | 2 +- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/src/opr/impl/tensor_manip.cpp b/src/opr/impl/tensor_manip.cpp index 9cbae01e..03e453bc 100644 --- a/src/opr/impl/tensor_manip.cpp +++ b/src/opr/impl/tensor_manip.cpp @@ -1410,11 +1410,8 @@ SymbolVar ParamPackConcat::make(const SmallVector& inp, void ParamPackConcat::scn_do_execute() { mgb_assert(m_opr.comp_node() == comp_node()); auto&& inputs = input(); - if (!m_inp_ptr) { - void** raw_inp_ptr = (void**)comp_node().alloc_host(sizeof(void*)*inputs.size()); - m_inp_ptr = {raw_inp_ptr, [comp_node=comp_node()](void** ptr){comp_node.free_host(ptr);}}; - } - auto ptr = m_inp_ptr.get(); + m_inp_ptr.resize(inputs.size() - 1); + auto ptr = m_inp_ptr.data(); for (size_t i = 0; i < inputs.size() - 1; i++) { ptr[i] = inputs[i]->dev_tensor().as_megdnn().raw_ptr; } diff --git a/src/opr/include/megbrain/opr/tensor_manip.h b/src/opr/include/megbrain/opr/tensor_manip.h index 74d4f2ed..dd3713e3 100644 --- a/src/opr/include/megbrain/opr/tensor_manip.h +++ b/src/opr/include/megbrain/opr/tensor_manip.h @@ -544,7 +544,7 @@ MGB_DEFINE_OPR_CLASS(Concat, cg::SingleCNOutshapePureByInshapeOprBase) // { */ MGB_DEFINE_OPR_CLASS(ParamPackConcat, cg::SingleCNOperatorNodeBase) // { //! input pointer buffer - std::shared_ptr m_inp_ptr; + SmallVector m_inp_ptr; std::vector m_offsets; intl::UniqPtrWithCN m_opr;