未验证 提交 9bf4c676 编写于 作者: W Weilong Wu 提交者: GitHub

[Eager, Performance optimization] use Python-C interface directly (#45598)

上级 46bc06b5
...@@ -1254,11 +1254,8 @@ def l1_loss(input, label, reduction='mean', name=None): ...@@ -1254,11 +1254,8 @@ def l1_loss(input, label, reduction='mean', name=None):
"received %s, which is not allowed." % reduction) "received %s, which is not allowed." % reduction)
if in_dygraph_mode(): if in_dygraph_mode():
unreduced = _elementwise_op_in_dygraph(input, unreduced = _C_ops.abs(_C_ops.subtract(input, label))
label,
axis=-1,
act='abs',
op_name='elementwise_sub')
if reduction == 'mean': if reduction == 'mean':
return _C_ops.mean_all(unreduced) return _C_ops.mean_all(unreduced)
elif reduction == 'sum': elif reduction == 'sum':
......
...@@ -737,7 +737,9 @@ def floor_divide(x, y, name=None): ...@@ -737,7 +737,9 @@ def floor_divide(x, y, name=None):
""" """
op_type = 'elementwise_floordiv' op_type = 'elementwise_floordiv'
axis = -1 axis = -1
if paddle.in_dynamic_mode(): if in_dygraph_mode():
return _C_ops.floor_divide(x, y)
elif _in_legacy_dygraph():
return _elementwise_op_in_dygraph( return _elementwise_op_in_dygraph(
x, y, axis=axis, op_name=op_type) x, y, axis=axis, op_name=op_type)
...@@ -777,7 +779,10 @@ def remainder(x, y, name=None): ...@@ -777,7 +779,10 @@ def remainder(x, y, name=None):
""" """
op_type = 'elementwise_mod' op_type = 'elementwise_mod'
axis = -1 axis = -1
if paddle.in_dynamic_mode():
if in_dygraph_mode():
return _C_ops.remainder(x, y)
elif _in_legacy_dygraph():
return _elementwise_op_in_dygraph( return _elementwise_op_in_dygraph(
x, y, axis=axis, op_name=op_type) x, y, axis=axis, op_name=op_type)
...@@ -913,7 +918,9 @@ def maximum(x, y, name=None): ...@@ -913,7 +918,9 @@ def maximum(x, y, name=None):
op_type = 'elementwise_max' op_type = 'elementwise_max'
axis = -1 axis = -1
act = None act = None
if paddle.in_dynamic_mode(): if in_dygraph_mode():
return _C_ops.maximum(x, y)
elif _in_legacy_dygraph():
return _elementwise_op_in_dygraph( return _elementwise_op_in_dygraph(
x, y, axis=axis, act=act, op_name=op_type) x, y, axis=axis, act=act, op_name=op_type)
return _elementwise_op(LayerHelper(op_type, **locals())) return _elementwise_op(LayerHelper(op_type, **locals()))
...@@ -972,7 +979,9 @@ def minimum(x, y, name=None): ...@@ -972,7 +979,9 @@ def minimum(x, y, name=None):
op_type = 'elementwise_min' op_type = 'elementwise_min'
axis = -1 axis = -1
act = None act = None
if paddle.in_dynamic_mode(): if in_dygraph_mode():
return _C_ops.minimum(x, y)
elif _in_legacy_dygraph():
return _elementwise_op_in_dygraph( return _elementwise_op_in_dygraph(
x, y, axis=axis, act=act, op_name=op_type) x, y, axis=axis, act=act, op_name=op_type)
return _elementwise_op(LayerHelper(op_type, **locals())) return _elementwise_op(LayerHelper(op_type, **locals()))
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册