From 66f13586666d73a5581217f886cf5ee2e26aadd3 Mon Sep 17 00:00:00 2001 From: Megvii Engine Team Date: Wed, 24 Nov 2021 14:35:00 +0800 Subject: [PATCH] fix(mge/network): add warning when the node is not in the output list GitOrigin-RevId: 324054613986c6b90a6ab101dc95eb58323eb7ec --- imperative/python/megengine/utils/network.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/imperative/python/megengine/utils/network.py b/imperative/python/megengine/utils/network.py index 16c3b59b..507fc218 100644 --- a/imperative/python/megengine/utils/network.py +++ b/imperative/python/megengine/utils/network.py @@ -283,9 +283,16 @@ class Network: for var in vars: # use list pop instead of remove to avoid # compare VarNode use elemwise equal + is_removed = False for idx, out_var in enumerate(self.output_vars): if var is out_var: self.output_vars.pop(idx) + is_removed = True + if not is_removed: + logger.warning( + "Failed to remove {}({}). Please check whether " + "this node is in the output list.".format(var.name, id(var)) + ) def add_dep_oprs(self, *vars): if len(vars) == 0: