diff --git a/paddle/fluid/framework/new_executor/interpretercore.cc b/paddle/fluid/framework/new_executor/interpretercore.cc index dad39f1471e210337f43c7757b4d087cd490204a..25f71dee2ac82869a30ff1fca164d04ecb5e038d 100644 --- a/paddle/fluid/framework/new_executor/interpretercore.cc +++ b/paddle/fluid/framework/new_executor/interpretercore.cc @@ -385,6 +385,10 @@ void InterpreterCore::CheckGC(size_t instr_id, !var_scope.vec_meta_info_[var_id].vardesc_->Persistable()) { gc_.Add(var_scope.var_list[var_id], gc_event_[instr_id], vec_instruction_[instr_id].dev_ctx_); + } else if (is_ready && + var_scope.vec_meta_info_[var_id].vardesc_ == nullptr) { + gc_.Add(var_scope.var_list[var_id], gc_event_[instr_id], + vec_instruction_[instr_id].dev_ctx_); } } }