Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
机器未来
Paddle
提交
7a245b7a
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看板
未验证
提交
7a245b7a
编写于
4月 28, 2021
作者:
Z
zhulei
提交者:
GitHub
4月 28, 2021
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[Rocm] fix test_var_base (#32639)
上级
6d3eb3d0
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
8 addition
and
6 deletion
+8
-6
paddle/fluid/imperative/tracer.cc
paddle/fluid/imperative/tracer.cc
+2
-2
python/paddle/fluid/tests/unittests/test_var_base.py
python/paddle/fluid/tests/unittests/test_var_base.py
+6
-4
未找到文件。
paddle/fluid/imperative/tracer.cc
浏览文件 @
7a245b7a
...
...
@@ -84,7 +84,7 @@ paddle::framework::GarbageCollector* Tracer::MutableGarbageCollectorIfNotExists(
if
(
gcs_
.
count
(
place
)
==
0
)
{
std
::
unique_ptr
<
framework
::
GarbageCollector
>
gc
;
if
(
platform
::
is_gpu_place
(
place
))
{
#if
def PADDLE_WITH_CUDA
#if
defined(PADDLE_WITH_CUDA) || defined(PADDLE_WITH_HIP)
gc
.
reset
(
new
framework
::
DefaultStreamGarbageCollector
(
BOOST_GET_CONST
(
platform
::
CUDAPlace
,
place
),
0
));
...
...
@@ -95,7 +95,7 @@ paddle::framework::GarbageCollector* Tracer::MutableGarbageCollectorIfNotExists(
"Please recompile or reinstall Paddle with GPU support."
));
#endif
}
else
if
(
platform
::
is_cuda_pinned_place
(
place
))
{
#if
def PADDLE_WITH_CUDA
#if
defined(PADDLE_WITH_CUDA) || defined(PADDLE_WITH_HIP)
gc
.
reset
(
new
framework
::
CUDAPinnedGarbageCollector
(
BOOST_GET_CONST
(
platform
::
CUDAPinnedPlace
,
place
),
0
));
...
...
python/paddle/fluid/tests/unittests/test_var_base.py
浏览文件 @
7a245b7a
...
...
@@ -256,19 +256,21 @@ class TestVarBase(unittest.TestCase):
detach_x
=
x
.
detach
()
self
.
assertTrue
(
detach_x
.
stop_gradient
,
True
)
cmp_float
=
np
.
allclose
if
core
.
is_compiled_with_rocm
(
)
else
np
.
array_equal
detach_x
[:]
=
10.0
self
.
assertTrue
(
np
.
array_equal
(
x
.
numpy
(),
[
10.0
]))
self
.
assertTrue
(
cmp_float
(
x
.
numpy
(),
[
10.0
]))
y
=
x
**
2
y
.
backward
()
self
.
assertTrue
(
np
.
array_equal
(
x
.
grad
.
numpy
(),
[
20.0
]))
self
.
assertTrue
(
cmp_float
(
x
.
grad
.
numpy
(),
[
20.0
]))
self
.
assertEqual
(
detach_x
.
grad
,
None
)
detach_x
.
stop_gradient
=
False
# Set stop_gradient to be False, supported auto-grad
z
=
3
*
detach_x
**
2
z
.
backward
()
self
.
assertTrue
(
np
.
array_equal
(
x
.
grad
.
numpy
(),
[
20.0
]))
self
.
assertTrue
(
np
.
array_equal
(
detach_x
.
grad
.
numpy
(),
[
60.0
]))
self
.
assertTrue
(
cmp_float
(
x
.
grad
.
numpy
(),
[
20.0
]))
self
.
assertTrue
(
cmp_float
(
detach_x
.
grad
.
numpy
(),
[
60.0
]))
# Due to sharing of data with origin Tensor, There are some unsafe operations:
with
self
.
assertRaises
(
RuntimeError
):
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录