diff --git a/paddle/fluid/framework/executor.cc b/paddle/fluid/framework/executor.cc index 55be9b6c3bbceba34e8e9ba94e684d2536b7d25e..4e431561f81b2a84c06dff9fcb041317ebc84ae3 100644 --- a/paddle/fluid/framework/executor.cc +++ b/paddle/fluid/framework/executor.cc @@ -350,9 +350,12 @@ void Executor::RunPreparedContext(ExecutorPrepareContext* ctx, Scope* scope, } } } - // platform::DeviceContextPool::Instance().Get(place_)->Wait(); + platform::DeviceContextPool::Instance().Get(place_)->Wait(); if (create_vars && create_local_scope) { scope->DeleteScope(local_scope); + } else { + // Delete the local scopes created in operators. + scope->DropKids(); } if (FLAGS_benchmark) { VLOG(2) << "-------------------------------------------------------"; diff --git a/paddle/fluid/operators/detail/sendrecvop_utils.cc b/paddle/fluid/operators/detail/sendrecvop_utils.cc index a9ea80c91736b78b969a985f4e89edd9e97f9c62..a0d3345685210fee92e1871442d82a4a103b6f2a 100644 --- a/paddle/fluid/operators/detail/sendrecvop_utils.cc +++ b/paddle/fluid/operators/detail/sendrecvop_utils.cc @@ -31,6 +31,10 @@ limitations under the License. */ namespace paddle { namespace operators { namespace detail { +namespace { +const int kStartProfile = 1; +const int kStopProfile = 2; +} // namespace using VarMsg = sendrecv::VariableMessage; @@ -124,9 +128,9 @@ void SerializeToByteBuffer(const std::string& name, framework::Variable* var, // trainer. if (platform::ShouldSendProfileState()) { if (platform::IsProfileEnabled()) { - request.set_profile(1); + request.set_profile(kStartProfile); } else { - request.set_profile(2); + request.set_profile(kStopProfile); } } if (!out_name.empty()) {