Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
MegEngine 天元
MegEngine
提交
6f0b5820
MegEngine
项目概览
MegEngine 天元
/
MegEngine
12 个月 前同步成功
通知
393
Star
4704
Fork
582
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
MegEngine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
6f0b5820
编写于
4月 22, 2022
作者:
M
Megvii Engine Team
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
chore(imperative/amp): adapt dev
GitOrigin-RevId: 41eb0faadf34f4c31fb26b2de7850748666589c5
上级
ee984e86
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
9 addition
and
12 deletion
+9
-12
dnn/src/cuda/check_non_finite/kern.cu
dnn/src/cuda/check_non_finite/kern.cu
+3
-4
dnn/src/cuda/check_non_finite/opr_impl.cpp
dnn/src/cuda/check_non_finite/opr_impl.cpp
+2
-2
imperative/python/megengine/core/_config.py
imperative/python/megengine/core/_config.py
+1
-1
imperative/python/megengine/optimizer/optimizer.py
imperative/python/megengine/optimizer/optimizer.py
+1
-1
imperative/src/impl/transformations/format.cpp
imperative/src/impl/transformations/format.cpp
+2
-2
imperative/src/include/megbrain/imperative/value.h
imperative/src/include/megbrain/imperative/value.h
+0
-2
未找到文件。
dnn/src/cuda/check_non_finite/kern.cu
浏览文件 @
6f0b5820
...
...
@@ -8,10 +8,9 @@ namespace cuda {
#define COMMA ,
#define cb(_dtype) \
INST_REDUCE( \
device_reduce::CheckNonFiniteOp< \
_dtype COMMA dt_float32 COMMA dt_int32 COMMA dt_int32>, \
#define cb(_dtype) \
INST_REDUCE( \
device_reduce::CheckNonFiniteOp<_dtype COMMA dt_int32 COMMA dt_int32>, \
false);
cb
(
dt_float32
);
...
...
dnn/src/cuda/check_non_finite/opr_impl.cpp
浏览文件 @
6f0b5820
...
...
@@ -14,7 +14,7 @@ using device_reduce::CheckNonFiniteOp;
template
<
typename
T
>
size_t
CheckNonFiniteImpl
::
_get_workspace_in_bytes
()
{
// Call the _get_workspace_in_bytes to reduce the loop fetch workspace bytes
typedef
CheckNonFiniteOp
<
T
,
dt_
float32
,
dt_
int32
,
dt_int32
>
Op
;
typedef
CheckNonFiniteOp
<
T
,
dt_int32
,
dt_int32
>
Op
;
megdnn_assert
(
m_size
>
0
);
WorkspaceBundle
bundle
(
nullptr
,
{
...
...
@@ -59,7 +59,7 @@ void CheckNonFiniteImpl::_exec(
_megdnn_in
const
TensorNDArray
&
srcs
,
_megdnn_tensor_out
dst
,
_megdnn_workspace
workspace
)
{
check_exec
(
srcs
,
dst
,
workspace
.
size
);
typedef
CheckNonFiniteOp
<
T
,
dt_
float32
,
dt_
int32
,
dt_int32
>
Op
;
typedef
CheckNonFiniteOp
<
T
,
dt_int32
,
dt_int32
>
Op
;
auto
stream
=
cuda_stream
(
this
->
handle
());
SmallVector
<
size_t
>
workspace_sizes
{
sizeof
(
T
*
)
*
m_size
,
...
...
imperative/python/megengine/core/_config.py
浏览文件 @
6f0b5820
...
...
@@ -247,4 +247,4 @@ def _override(
def
_get_actual_op_param
(
function_param
,
config_param
):
return
function_param
if
config_param
is
"default"
else
config_param
return
function_param
if
config_param
==
"default"
else
config_param
imperative/python/megengine/optimizer/optimizer.py
浏览文件 @
6f0b5820
...
...
@@ -97,7 +97,7 @@ class Optimizer(metaclass=ABCMeta):
"optimizer can only optimize Parameters, but one of the params is "
+
str
(
type
(
param
))
)
param
.
_reset
(
Tensor
(
param
,
no_cache
=
True
))
param
.
_reset
(
Tensor
(
param
.
numpy
(),
no_cache
=
True
,
format
=
param
.
format
))
for
name
,
default
in
self
.
_defaults
.
items
():
if
default
is
required
and
name
not
in
param_group
:
...
...
imperative/src/impl/transformations/format.cpp
浏览文件 @
6f0b5820
...
...
@@ -581,9 +581,9 @@ ValueRefList FormatTransformation::apply_transformation(
(
GenericFunction
&
)
inputs
[
1
].
cast
<
FunctionValue
>
();
// make param grads as FormattedTensor
GenericFunction
new_callback
=
[
this
,
callback
,
format
](
Span
<
ValueRef
>
inputs_
)
->
ValueRefList
{
[
&
,
callback
,
format
](
Span
<
ValueRef
>
inputs_
)
->
ValueRefList
{
auto
wrapped_inputs
=
SmallVector
<
ValueRef
>
{
this
->
value_type
()
.
make
(
inputs_
.
item
(),
format
)};
m_value_type
.
make
(
inputs_
.
item
(),
format
)};
auto
ret
=
callback
(
wrapped_inputs
);
return
ret
;
};
...
...
imperative/src/include/megbrain/imperative/value.h
浏览文件 @
6f0b5820
...
...
@@ -67,7 +67,6 @@ template <typename T>
class
Type
:
public
IType
{
protected:
Type
(
std
::
string
name
)
:
IType
(
std
::
move
(
name
))
{}
Type
(
IType
&&
type
)
:
IType
(
std
::
move
(
type
))
{}
// TODO: each type owns an allocator
public:
...
...
@@ -105,7 +104,6 @@ template <typename T>
class
ObjectType
:
public
Type
<
T
>
{
public:
ObjectType
(
std
::
string
name
)
:
Type
<
T
>
(
name
)
{}
ObjectType
(
IType
&&
type
)
:
Type
<
T
>
(
std
::
move
(
type
))
{}
};
/**
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录