Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
MindSpore
mindinsight
提交
a31cdf61
M
mindinsight
项目概览
MindSpore
/
mindinsight
通知
8
Star
3
Fork
2
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
mindinsight
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
a31cdf61
编写于
6月 20, 2020
作者:
M
mindspore-ci-bot
提交者:
Gitee
6月 20, 2020
浏览文件
操作
浏览文件
下载
差异文件
!322 Converter: Some functions is not converted.
Merge pull request !322 from ggpolar/br_wzk_dev_0620
上级
d786c154
833cae40
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
15 addition
and
5 deletion
+15
-5
mindinsight/mindconverter/ast_edits.py
mindinsight/mindconverter/ast_edits.py
+15
-5
未找到文件。
mindinsight/mindconverter/ast_edits.py
浏览文件 @
a31cdf61
...
...
@@ -152,14 +152,14 @@ class _LineColEditVisitor(ast.NodeVisitor):
if
self
.
_check_arg2update
(
arg
):
args
.
append
(
arg
)
for
arg
in
args
:
arg
.
lineno
=
dst_call
.
lineno
# line number starts from 1, column number starts from 0.
arg
.
lineno
+=
dst_call
.
lineno
-
1
arg
.
col_offset
+=
dst_call
.
col_offset
@
staticmethod
def
_check_arg2update
(
arg
):
# Only the col_offset of the first line code is re-counted, needs to be corrected.
# When the arg is a function call, its col_offset is handled separately.
if
not
isinstance
(
arg
,
ast
.
Call
)
and
arg
.
lineno
==
1
:
if
not
isinstance
(
arg
,
ast
.
Call
):
return
True
return
False
...
...
@@ -269,14 +269,24 @@ class AstEditVisitor(ast.NodeVisitor):
def
_convert_api
(
self
):
"""Convert PyTorch api call to MindSpore api call in a function."""
tasks
=
[]
found_func_nodes
=
[]
convert_elements
=
self
.
_code_analyzer
.
network_definitions
()
for
func_node_scope
in
convert_elements
.
get
(
"functions"
,
[]):
found_func_nodes
.
append
(
func_node_scope
.
node
)
is_forward
=
self
.
_judge_forward
(
func_node_scope
)
tasks
.
append
((
self
.
_convert_function
,
(
func_node_scope
,
is_forward
)))
for
class_scope
in
convert_elements
.
get
(
"cell"
,
[]).
keys
():
for
class_scope
,
func_scopes
in
convert_elements
.
get
(
"cell"
,
[]).
items
():
for
func_node_scope
in
func_scopes
:
found_func_nodes
.
append
(
func_node_scope
.
node
)
tasks
.
append
((
self
.
_convert_cell
,
(
class_scope
,)))
# Some functions in the forward call chain are not found by self._code_analyzer.
for
func_node
in
self
.
_forward_list
.
values
():
is_forward
=
True
if
func_node
and
func_node
not
in
found_func_nodes
:
func_node_scope
=
self
.
_code_analyzer
.
lookup_scope
(
func_node
)
tasks
.
append
((
self
.
_convert_function
,
(
func_node_scope
,
is_forward
)))
for
convert_fun
,
args
in
tasks
:
convert_fun
(
*
args
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录