Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
机器未来
Paddle
提交
050a9bf7
P
Paddle
项目概览
机器未来
/
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看板
未验证
提交
050a9bf7
编写于
7月 08, 2020
作者:
J
Jacek Czaja
提交者:
GitHub
7月 08, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[oneDNN] LRN cleanup (#25416)
上级
1974aadc
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
5 addition
and
11 deletion
+5
-11
paddle/fluid/operators/mkldnn/lrn_mkldnn_op.cc
paddle/fluid/operators/mkldnn/lrn_mkldnn_op.cc
+1
-10
python/paddle/fluid/tests/unittests/mkldnn/test_lrn_mkldnn_op.py
...paddle/fluid/tests/unittests/mkldnn/test_lrn_mkldnn_op.py
+3
-1
python/paddle/fluid/tests/unittests/white_list/no_check_set_white_list.py
...uid/tests/unittests/white_list/no_check_set_white_list.py
+1
-0
未找到文件。
paddle/fluid/operators/mkldnn/lrn_mkldnn_op.cc
浏览文件 @
050a9bf7
...
...
@@ -59,15 +59,6 @@ class LRNMKLDNNOpKernel : public paddle::framework::OpKernel<T> {
{
MKLDNN_ARG_DST
,
*
dst_memory
},
{
MKLDNN_ARG_WORKSPACE
,
*
workspace_memory
}});
}
else
{
// mid has to be allocated and filled
// k to pass LRN unit tests
// TODO(jczaja): Disable checking mid in unit tests (Require API change)
mid
->
mutable_data
<
T
>
(
ctx
.
GetPlace
());
auto
e_mid
=
framework
::
EigenTensor
<
T
,
4
>::
From
(
*
mid
);
const
float
k
=
ctx
.
Attr
<
float
>
(
"k"
);
e_mid
=
e_mid
.
constant
(
k
);
mid
->
set_format
(
platform
::
GetMKLDNNFormat
(
*
dst_memory
));
lrn_p
->
execute
(
astream
,
{{
MKLDNN_ARG_SRC
,
*
src_memory
},
{
MKLDNN_ARG_DST
,
*
dst_memory
}});
}
...
...
@@ -85,7 +76,7 @@ class LRNMKLDNNGradOpKernel : public paddle::framework::OpKernel<T> {
const
bool
is_float_type
=
std
::
is_same
<
T
,
float
>::
value
;
PADDLE_ENFORCE_EQ
(
is_float_type
,
true
,
platform
::
errors
::
PreconditionNotMet
(
"DNNL LRN GradOpKernl must use float data."
));
"DNNL LRN GradOpKern
e
l must use float data."
));
PADDLE_ENFORCE_EQ
(
platform
::
is_cpu_place
(
ctx
.
GetPlace
()),
true
,
paddle
::
platform
::
errors
::
PreconditionNotMet
(
"Operator DNNL LRNGrad must use CPUPlace"
));
...
...
python/paddle/fluid/tests/unittests/mkldnn/test_lrn_mkldnn_op.py
浏览文件 @
050a9bf7
...
...
@@ -26,8 +26,10 @@ class TestLRNMKLDNNOp(TestLRNOp):
return
attrs
def
test_check_output
(
self
):
# We cannot validate MidOut as LRN REF has diffrent meaning in it
# TODO(wangzhongpu): support mkldnn op in dygraph mode
self
.
check_output
(
atol
=
0.002
,
check_dygraph
=
False
)
self
.
check_output
(
atol
=
0.002
,
no_check_set
=
[
'MidOut'
],
check_dygraph
=
False
)
def
test_check_grad_normal
(
self
):
# TODO(wangzhongpu): support mkldnn op in dygraph mode
...
...
python/paddle/fluid/tests/unittests/white_list/no_check_set_white_list.py
浏览文件 @
050a9bf7
...
...
@@ -17,6 +17,7 @@ no_check_set_white_list = [
'fake_quantize_range_abs_max'
,
'coalesce_tensor'
,
'flatten2'
,
'lrn'
,
'squeeze2'
,
'reshape2'
,
'transpose2'
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录