提交 eaa8e2c3 authored 作者: Pascal Lamblin's avatar Pascal Lamblin 提交者: GitHub

Merge pull request #4661 from mohammadpz/useless_alloc_small_fix

if broadcastable is the same then no need to op
......@@ -1769,7 +1769,10 @@ def local_useless_alloc(node):
break
new_output_shape = output_shape[num_dims_with_size_1_added_to_left:]
if num_dims_with_size_1_added_to_left > 0 and len(new_output_shape) >= input.ndim:
inner = op(*([input] + new_output_shape))
if output.broadcastable[num_dims_with_size_1_added_to_left:] == input.broadcastable:
inner = input
else:
inner = op(*([input] + new_output_shape))
dimshuffle_new_order = (['x'] * num_dims_with_size_1_added_to_left +
list(xrange(len(new_output_shape))))
return [DimShuffle(inner.type.broadcastable, dimshuffle_new_order)(inner)]
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论