Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Crayon鑫
Paddle
提交
c22c2c58
P
Paddle
项目概览
Crayon鑫
/
Paddle
与 Fork 源项目一致
Fork自
PaddlePaddle / Paddle
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
Paddle
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
c22c2c58
编写于
5月 09, 2022
作者:
W
wanghuancoder
提交者:
GitHub
5月 09, 2022
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
refine pylayer (#42572)
* refine pylayer * refine
上级
c3b7bc61
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
4 addition
and
10 deletion
+4
-10
paddle/fluid/eager/pylayer/py_layer_node.cc
paddle/fluid/eager/pylayer/py_layer_node.cc
+3
-2
paddle/fluid/eager/pylayer/py_layer_node.h
paddle/fluid/eager/pylayer/py_layer_node.h
+1
-8
未找到文件。
paddle/fluid/eager/pylayer/py_layer_node.cc
浏览文件 @
c22c2c58
...
@@ -106,8 +106,6 @@ GradNodePyLayer::operator()(
...
@@ -106,8 +106,6 @@ GradNodePyLayer::operator()(
pybind11
::
detail
::
error_string
().
c_str
()));
pybind11
::
detail
::
error_string
().
c_str
()));
}
}
outputs_
=
outputs
;
VLOG
(
6
)
<<
"PyLayer backward function finish..."
;
VLOG
(
6
)
<<
"PyLayer backward function finish..."
;
PyObject
*
outputs_tuple
=
nullptr
;
PyObject
*
outputs_tuple
=
nullptr
;
...
@@ -165,6 +163,9 @@ GradNodePyLayer::operator()(
...
@@ -165,6 +163,9 @@ GradNodePyLayer::operator()(
if
(
!
PyTuple_Check
(
outputs
))
{
if
(
!
PyTuple_Check
(
outputs
))
{
Py_XDECREF
(
outputs_tuple
);
Py_XDECREF
(
outputs_tuple
);
}
}
Py_XDECREF
(
outputs
);
Py_XDECREF
(
ctx_
);
ctx_
=
nullptr
;
return
grad_out
;
return
grad_out
;
}
}
...
...
paddle/fluid/eager/pylayer/py_layer_node.h
浏览文件 @
c22c2c58
...
@@ -32,10 +32,7 @@ class GradNodePyLayer : public GradNodeBase {
...
@@ -32,10 +32,7 @@ class GradNodePyLayer : public GradNodeBase {
ctx_
=
ctx
;
ctx_
=
ctx
;
}
}
~
GradNodePyLayer
()
override
{
~
GradNodePyLayer
()
override
{
Py_XDECREF
(
ctx_
);
};
Py_DECREF
(
ctx_
);
Py_XDECREF
(
outputs_
);
};
virtual
paddle
::
small_vector
<
std
::
vector
<
paddle
::
experimental
::
Tensor
>
,
virtual
paddle
::
small_vector
<
std
::
vector
<
paddle
::
experimental
::
Tensor
>
,
kSlotSmallVectorSize
>
kSlotSmallVectorSize
>
...
@@ -50,9 +47,6 @@ class GradNodePyLayer : public GradNodeBase {
...
@@ -50,9 +47,6 @@ class GradNodePyLayer : public GradNodeBase {
return
"GradNodePyLayer_"
+
std
::
string
(
Py_TYPE
(
ctx_
)
->
tp_name
);
return
"GradNodePyLayer_"
+
std
::
string
(
Py_TYPE
(
ctx_
)
->
tp_name
);
}
}
// for paddle.grad get result
PyObject
*
GetMutableOutputs
()
{
return
outputs_
;
}
void
SaveForwardOutputsMeta
(
void
SaveForwardOutputsMeta
(
const
std
::
vector
<
std
::
vector
<
paddle
::
experimental
::
Tensor
*>>&
const
std
::
vector
<
std
::
vector
<
paddle
::
experimental
::
Tensor
*>>&
outputs_tensor
)
{
outputs_tensor
)
{
...
@@ -81,7 +75,6 @@ class GradNodePyLayer : public GradNodeBase {
...
@@ -81,7 +75,6 @@ class GradNodePyLayer : public GradNodeBase {
private:
private:
PyObject
*
ctx_
{
nullptr
};
PyObject
*
ctx_
{
nullptr
};
PyObject
*
outputs_
{
nullptr
};
std
::
vector
<
std
::
vector
<
phi
::
DenseTensorMeta
>>
forward_outputs_meta_
;
std
::
vector
<
std
::
vector
<
phi
::
DenseTensorMeta
>>
forward_outputs_meta_
;
std
::
vector
<
std
::
vector
<
paddle
::
platform
::
Place
>>
forward_outputs_place_
;
std
::
vector
<
std
::
vector
<
paddle
::
platform
::
Place
>>
forward_outputs_place_
;
};
};
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录