提交 9833d861 authored 作者: Brandon T. Willard's avatar Brandon T. Willard 提交者: Brandon T. Willard

Remove FunctionGraph.disown

上级 48789075
...@@ -191,18 +191,6 @@ class FunctionGraph(MetaObject): ...@@ -191,18 +191,6 @@ class FunctionGraph(MetaObject):
" the values must be tuples or lists." " the values must be tuples or lists."
) )
def disown(self) -> None:
"""Clear internal variables."""
for f in self._features:
self.remove_feature(f)
self.clients = {}
self.apply_nodes = set()
self.variables = set()
self.inputs = None
self.outputs = None
self.profile = None
self.update_mapping = None
def get_clients(self, var: Variable) -> List[Tuple[Apply, int]]: def get_clients(self, var: Variable) -> List[Tuple[Apply, int]]:
"""Return a list of all the `(node, i)` pairs such that `node.inputs[i]` is `var`.""" """Return a list of all the `(node, i)` pairs such that `node.inputs[i]` is `var`."""
return self.clients[var] return self.clients[var]
......
...@@ -795,13 +795,11 @@ def test_gemm_canonicalize(): ...@@ -795,13 +795,11 @@ def test_gemm_canonicalize():
fg = FunctionGraph([X, Y, Z], [X + Y + Z], clone=False) fg = FunctionGraph([X, Y, Z], [X + Y + Z], clone=False)
_gemm_canonicalize(fg, fg.outputs[0], 1.0, can, 0) _gemm_canonicalize(fg, fg.outputs[0], 1.0, can, 0)
assert can == [(1.0, X), (1.0, Y), (1.0, Z)] assert can == [(1.0, X), (1.0, Y), (1.0, Z)]
fg.disown()
can = [] can = []
fg = FunctionGraph([X, Y, u], [X + Y + u], clone=False) fg = FunctionGraph([X, Y, u], [X + Y + u], clone=False)
_gemm_canonicalize(fg, fg.outputs[0], 1.0, can, 0) _gemm_canonicalize(fg, fg.outputs[0], 1.0, can, 0)
assert can == [(1.0, X), (1.0, Y), (1.0, u)], can assert can == [(1.0, X), (1.0, Y), (1.0, u)], can
fg.disown()
can = [] can = []
fg = FunctionGraph([X, Y, v], [X + Y + v], clone=False) fg = FunctionGraph([X, Y, v], [X + Y + v], clone=False)
...@@ -814,13 +812,11 @@ def test_gemm_canonicalize(): ...@@ -814,13 +812,11 @@ def test_gemm_canonicalize():
assert can[2][1].owner assert can[2][1].owner
assert isinstance(can[2][1].owner.op, DimShuffle) assert isinstance(can[2][1].owner.op, DimShuffle)
assert can[2][1].owner.inputs == [v] assert can[2][1].owner.inputs == [v]
fg.disown()
can = [] can = []
fg = FunctionGraph([X, Y, w], [X + Y + w], clone=False) fg = FunctionGraph([X, Y, w], [X + Y + w], clone=False)
_gemm_canonicalize(fg, fg.outputs[0], 1.0, can, 0) _gemm_canonicalize(fg, fg.outputs[0], 1.0, can, 0)
assert can == [(1.0, X), (1.0, Y), (1.0, w)], can assert can == [(1.0, X), (1.0, Y), (1.0, w)], can
fg.disown()
can = [] can = []
fg = FunctionGraph([a, X, Y, b, Z, c], [a * X + Y - b * Z * c], clone=False) fg = FunctionGraph([a, X, Y, b, Z, c], [a * X + Y - b * Z * c], clone=False)
...@@ -831,7 +827,6 @@ def test_gemm_canonicalize(): ...@@ -831,7 +827,6 @@ def test_gemm_canonicalize():
assert can[2][0].owner.inputs[0].owner.op == neg assert can[2][0].owner.inputs[0].owner.op == neg
assert can[2][0].owner.inputs[0].owner.inputs[0] == c assert can[2][0].owner.inputs[0].owner.inputs[0] == c
assert can[2][0].owner.inputs[1] == b assert can[2][0].owner.inputs[1] == b
fg.disown()
can = [] can = []
fg = FunctionGraph( fg = FunctionGraph(
...@@ -846,7 +841,6 @@ def test_gemm_canonicalize(): ...@@ -846,7 +841,6 @@ def test_gemm_canonicalize():
assert can[2] == (-1.0, Y) assert can[2] == (-1.0, Y)
assert can[3][0].owner.op == mul assert can[3][0].owner.op == mul
assert can[3][0].owner.inputs == [c, b] assert can[3][0].owner.inputs == [c, b]
fg.disown()
def test_gemm_factor(): def test_gemm_factor():
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论