提交 c51b2833 authored 作者: abergeron's avatar abergeron

Merge pull request #4129 from nouiz/cleanup

small cleanup, update
...@@ -172,8 +172,6 @@ class FunctionGraph(utils.object2): ...@@ -172,8 +172,6 @@ class FunctionGraph(utils.object2):
for i, output in enumerate(outputs): for i, output in enumerate(outputs):
output.clients.append(('output', i)) output.clients.append(('output', i))
self.node_locks = {}
self.variable_locks = {}
self.profile = None self.profile = None
self.update_mapping = update_mapping self.update_mapping = update_mapping
...@@ -232,6 +230,8 @@ class FunctionGraph(utils.object2): ...@@ -232,6 +230,8 @@ class FunctionGraph(utils.object2):
them back to what they were originally. them back to what they were originally.
""" """
for f in self._features:
self.remove_feature(f)
for apply_node in self.apply_nodes: for apply_node in self.apply_nodes:
del apply_node.fgraph del apply_node.fgraph
del apply_node.deps del apply_node.deps
...@@ -242,6 +242,8 @@ class FunctionGraph(utils.object2): ...@@ -242,6 +242,8 @@ class FunctionGraph(utils.object2):
self.variables = set() self.variables = set()
self.inputs = None self.inputs = None
self.outputs = None self.outputs = None
self.profile = None
self.update_mapping = None
# clients # # clients #
def clients(self, r): def clients(self, r):
......
...@@ -1603,24 +1603,31 @@ class Scan(PureOp): ...@@ -1603,24 +1603,31 @@ class Scan(PureOp):
# of iterations. # of iterations.
# sequences # sequences
seqs_shape = [x[1:] for x in input_shapes[1:1 + self.n_seqs]] seqs_shape = [x[1:] for x in input_shapes[1:1 + self.n_seqs]]
# inner_seqs = self.inputs[:self.n_seqs] # We disable extra infer_shape for now. See gh-3765.
# outer_seqs = node.inputs[1:1 + self.n_seqs] extra_infer_shape = False
# for in_s, out_s in izip(inner_seqs, outer_seqs):
# out_equivalent[in_s] = out_s[0] if extra_infer_shape:
inner_seqs = self.inputs[:self.n_seqs]
# mit_mot, mit_sot, sit_sot outer_seqs = node.inputs[1:1 + self.n_seqs]
# outer_inp_idx = 1 + self.n_seqs for in_s, out_s in izip(inner_seqs, outer_seqs):
# inner_inp_idx = self.n_seqs out_equivalent[in_s] = out_s[0]
# mit_mot, mit_sot, sit_sot
outer_inp_idx = 1 + self.n_seqs
inner_inp_idx = self.n_seqs
else:
outer_inp_idx = 0
n_outs = self.n_mit_mot + self.n_mit_sot + self.n_sit_sot n_outs = self.n_mit_mot + self.n_mit_sot + self.n_sit_sot
outs_shape = [] outs_shape = []
for idx in xrange(n_outs): for idx in xrange(n_outs):
# mintap = abs(min(self.tap_array[idx])) mintap = abs(min(self.tap_array[idx]))
for k in self.tap_array[idx]: for k in self.tap_array[idx]:
outs_shape += [input_shapes[idx + self.n_seqs + 1][1:]] outs_shape += [input_shapes[idx + self.n_seqs + 1][1:]]
# corresponding_tap = node.inputs[outer_inp_idx][mintap + k] if extra_infer_shape:
# out_equivalent[self.inputs[inner_inp_idx]] = corresponding_tap corresponding_tap = node.inputs[outer_inp_idx][mintap + k]
# inner_inp_idx += 1 out_equivalent[self.inputs[inner_inp_idx]] = corresponding_tap
# outer_inp_idx += 1 inner_inp_idx += 1
outer_inp_idx += 1
# shared_outs # shared_outs
offset = 1 + self.n_seqs + n_outs offset = 1 + self.n_seqs + n_outs
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论