diff --git a/paddle/fluid/framework/details/threaded_ssa_graph_executor.cc b/paddle/fluid/framework/details/threaded_ssa_graph_executor.cc index 482c32f894e1fc9357b2282065572223aad58f97..d9b855503b4b3b3df40b0192e569b40731a94953 100644 --- a/paddle/fluid/framework/details/threaded_ssa_graph_executor.cc +++ b/paddle/fluid/framework/details/threaded_ssa_graph_executor.cc @@ -170,8 +170,8 @@ FeedFetchList ThreadedSSAGraphExecutor::Run( for (auto p : this->places_) { platform::DeviceContextPool::Instance().Get(p)->Wait(); } - for (auto &drop_fn : this->drop_functions_) { - drop_fn(); + for (auto &scope : local_scopes_) { + scope->DropKids(); } }; @@ -189,7 +189,6 @@ FeedFetchList ThreadedSSAGraphExecutor::Run( // Drop tmp scopes; for (auto &scope : local_scopes_) { auto &kid = *scope->Var("@TMP_SCOPE@")->GetMutable(); - this->drop_functions_.emplace_back([=] { scope->DeleteScope(kid); }); kid = nullptr; } diff --git a/paddle/fluid/framework/details/threaded_ssa_graph_executor.h b/paddle/fluid/framework/details/threaded_ssa_graph_executor.h index fecad00e184584e0194ca7db966f3a06b9331ac1..14b10cd0eb501966136f20ea8bdfc6ab1cd1d179 100644 --- a/paddle/fluid/framework/details/threaded_ssa_graph_executor.h +++ b/paddle/fluid/framework/details/threaded_ssa_graph_executor.h @@ -52,7 +52,6 @@ class ThreadedSSAGraphExecutor : public SSAGraphExecutor { size_t computation_count_{0}; size_t max_async_computation{100}; - std::vector> drop_functions_; }; } // namespace details