diff --git a/paddle/fluid/eager/pylayer/py_layer_node.h b/paddle/fluid/eager/pylayer/py_layer_node.h index eb8d1bc9c57a9ec952045804da32b2a886455a85..2b37765bc2aeba09b58860c229879ee5f549fc8d 100644 --- a/paddle/fluid/eager/pylayer/py_layer_node.h +++ b/paddle/fluid/eager/pylayer/py_layer_node.h @@ -31,6 +31,7 @@ class GradNodePyLayer : public GradNodeBase { size_t bwd_out_slot_num) : GradNodeBase(bwd_in_slot_num, bwd_out_slot_num) { ctx_ = ctx; + name_ = "GradNodePyLayer_" + std::string(Py_TYPE(ctx_)->tp_name); Py_INCREF(ctx_); } @@ -52,9 +53,7 @@ class GradNodePyLayer : public GradNodeBase { void ClearTensorWrappers() override { VLOG(6) << "Do nothing here now"; } - std::string name() override { - return "GradNodePyLayer_" + std::string(Py_TYPE(ctx_)->tp_name); - } + std::string name() override { return name_; } void SaveForwardOutputsMeta( const std::vector>& @@ -84,6 +83,7 @@ class GradNodePyLayer : public GradNodeBase { private: PyObject* ctx_{nullptr}; + std::string name_{""}; std::vector> forward_outputs_meta_; std::vector> forward_outputs_place_; };