Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
MindSpore
mindinsight
提交
c52d0501
M
mindinsight
项目概览
MindSpore
/
mindinsight
通知
8
Star
4
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看板
提交
c52d0501
编写于
6月 11, 2020
作者:
Y
yelihua
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update ut, st and validation.
上级
eacfb6a5
变更
29
展开全部
隐藏空白更改
内联
并排
Showing
29 changed file
with
495 addition
and
31 deletion
+495
-31
mindinsight/backend/profiler/profile_api.py
mindinsight/backend/profiler/profile_api.py
+2
-2
mindinsight/profiler/analyser/step_trace_analyser.py
mindinsight/profiler/analyser/step_trace_analyser.py
+5
-3
mindinsight/profiler/common/util.py
mindinsight/profiler/common/util.py
+1
-1
mindinsight/profiler/common/validator/validate_path.py
mindinsight/profiler/common/validator/validate_path.py
+7
-7
mindinsight/profiler/parser/hwts_log_parser.py
mindinsight/profiler/parser/hwts_log_parser.py
+2
-2
mindinsight/profiler/parser/step_trace_parser.py
mindinsight/profiler/parser/step_trace_parser.py
+4
-3
tests/ut/profiler/__init__.py
tests/ut/profiler/__init__.py
+6
-0
tests/ut/profiler/analyser/test_analyser_aicore_detail.py
tests/ut/profiler/analyser/test_analyser_aicore_detail.py
+4
-5
tests/ut/profiler/analyser/test_analyser_aicore_type.py
tests/ut/profiler/analyser/test_analyser_aicore_type.py
+3
-4
tests/ut/profiler/parser/test_framework_parser.py
tests/ut/profiler/parser/test_framework_parser.py
+4
-4
tests/utils/mindspore/context.py
tests/utils/mindspore/context.py
+7
-0
tests/utils/resource/JOB1/Framework.host.vm.graph_desc_info.0.slice_0
...resource/JOB1/Framework.host.vm.graph_desc_info.0.slice_0
+0
-0
tests/utils/resource/JOB1/Framework.host.vm.graph_desc_info.0.slice_0.done
...rce/JOB1/Framework.host.vm.graph_desc_info.0.slice_0.done
+0
-0
tests/utils/resource/JOB1/Framework.host.vm.task_desc_info.0.slice_0
.../resource/JOB1/Framework.host.vm.task_desc_info.0.slice_0
+0
-0
tests/utils/resource/JOB1/training_trace.46.dev.profiler_default_tag.0.slice_0
...JOB1/training_trace.46.dev.profiler_default_tag.0.slice_0
+0
-0
tests/utils/resource/JOB3/DATA_PREPROCESS.dev.AICPU.1.slice_0
...s/utils/resource/JOB3/DATA_PREPROCESS.dev.AICPU.1.slice_0
+0
-0
tests/utils/resource/JOB3/DATA_PREPROCESS.dev.TDT.1.slice_0
tests/utils/resource/JOB3/DATA_PREPROCESS.dev.TDT.1.slice_0
+0
-0
tests/utils/resource/JOB3/Framework.host.vm.graph_desc_info.1.slice_0
...resource/JOB3/Framework.host.vm.graph_desc_info.1.slice_0
+199
-0
tests/utils/resource/JOB3/Framework.host.vm.task_desc_info.1.slice_0
.../resource/JOB3/Framework.host.vm.task_desc_info.1.slice_0
+199
-0
tests/utils/resource/JOB3/host_start.log.1
tests/utils/resource/JOB3/host_start.log.1
+3
-0
tests/utils/resource/JOB3/hwts.log.data.45.dev.profiler_default_tag.1.slice_0
.../JOB3/hwts.log.data.45.dev.profiler_default_tag.1.slice_0
+0
-0
tests/utils/resource/JOB3/training_trace.46.dev.profiler_default_tag.1.slice_0
...JOB3/training_trace.46.dev.profiler_default_tag.1.slice_0
+0
-0
tests/utils/resource/container/0/data/Framework.host.vm.graph_desc_info.0.JOB2.slice_0
...r/0/data/Framework.host.vm.graph_desc_info.0.JOB2.slice_0
+0
-0
tests/utils/resource/container/0/data/Framework.host.vm.task_desc_info.0.JOB2.slice_0
...er/0/data/Framework.host.vm.task_desc_info.0.JOB2.slice_0
+0
-0
tests/utils/resource/profiler/aicore_intermediate_1_detail.csv
.../utils/resource/profiler/aicore_intermediate_1_detail.csv
+11
-0
tests/utils/resource/profiler/aicore_intermediate_1_type.csv
tests/utils/resource/profiler/aicore_intermediate_1_type.csv
+6
-0
tests/utils/resource/profiler/framework_raw_0.csv
tests/utils/resource/profiler/framework_raw_0.csv
+0
-0
tests/utils/resource/profiler/framework_raw_1.csv
tests/utils/resource/profiler/framework_raw_1.csv
+11
-0
tests/utils/resource/profiler/step_trace_raw_0_detail_time.csv
.../utils/resource/profiler/step_trace_raw_0_detail_time.csv
+21
-0
未找到文件。
mindinsight/backend/profiler/profile_api.py
浏览文件 @
c52d0501
...
...
@@ -121,7 +121,7 @@ def get_training_trace_graph():
>>> GET http://xxxx/v1/mindinsight/profile/training-trace/graph
"""
summary_dir
=
request
.
args
.
get
(
"dir"
)
profiler_dir
=
validate_and_normalize_profiler_path
(
summary_dir
)
profiler_dir
=
validate_and_normalize_profiler_path
(
summary_dir
,
settings
.
SUMMARY_BASE_DIR
)
graph_type
=
request
.
args
.
get
(
"type"
,
default
=
'0'
)
graph_type
=
to_int
(
graph_type
,
'graph_type'
)
device_id
=
request
.
args
.
get
(
"device_id"
,
default
=
'0'
)
...
...
@@ -150,7 +150,7 @@ def get_target_time_info():
>>> GET http://xxxx/v1/mindinsight/profile/training-trace/target-time-info
"""
summary_dir
=
request
.
args
.
get
(
"dir"
)
profiler_dir
=
validate_and_normalize_profiler_path
(
summary_dir
)
profiler_dir
=
validate_and_normalize_profiler_path
(
summary_dir
,
settings
.
SUMMARY_BASE_DIR
)
proc_name
=
request
.
args
.
get
(
"type"
)
validate_ui_proc
(
proc_name
)
device_id
=
request
.
args
.
get
(
"device_id"
,
default
=
'0'
)
...
...
mindinsight/profiler/analyser/step_trace_analyser.py
浏览文件 @
c52d0501
...
...
@@ -226,7 +226,9 @@ class StepTraceAnalyser(BaseAnalyser):
time_type (str): The value type. `systime` keeps the original value.
`realtime` transforms the value in millisecond. Default: `realtime`.
"""
if
proc_name
is
None
:
log
.
error
(
'`proc_name` is required for query.'
)
raise
ProfilerParamValueErrorException
(
'`proc_name` is required for query.'
)
if
step_id
is
None
:
rows_info
=
self
.
_data
[:
-
1
]
else
:
...
...
@@ -241,7 +243,7 @@ class StepTraceAnalyser(BaseAnalyser):
mode
=
filter_condition
.
get
(
'mode'
,
'step'
)
self
.
_validate_str_param
(
mode
,
[
'step'
,
'proc'
],
'mode'
)
step_id
=
filter_condition
.
get
(
'step_id'
,
0
)
step_id
=
filter_condition
.
get
(
'step_id'
)
self
.
_validate_step_id
(
step_id
)
proc_name
=
filter_condition
.
get
(
'proc_name'
)
...
...
@@ -252,7 +254,7 @@ class StepTraceAnalyser(BaseAnalyser):
def
_validate_step_id
(
self
,
step_id
):
"""Validate step_id."""
if
isinstance
(
step_id
,
int
)
and
0
<=
step_id
<=
self
.
_size
:
if
step_id
is
None
or
isinstance
(
step_id
,
int
)
and
0
<=
step_id
<=
self
.
_size
:
return
log
.
error
(
"Invalid step_id in request. step_id should be in [0, %d]."
,
self
.
_size
)
raise
StepNumNotSupportedException
([
0
,
self
.
_size
])
...
...
mindinsight/profiler/common/util.py
浏览文件 @
c52d0501
...
...
@@ -135,6 +135,6 @@ def get_field_value(row_info, field_name, header, time_type='realtime'):
value
=
row_info
[
field_index
]
value
=
to_int
(
value
,
field_name
)
if
time_type
==
'realtime'
:
value
=
value
/
per_ms_syscnt
value
=
round
(
value
/
per_ms_syscnt
,
4
)
return
value
mindinsight/profiler/common/validator/validate_path.py
浏览文件 @
c52d0501
...
...
@@ -125,28 +125,28 @@ def validate_and_normalize_path(
return
normalized_path
def
validate_and_normalize_profiler_path
(
path
):
def
validate_and_normalize_profiler_path
(
summary_dir
,
summary_base_dir
):
"""
Validate and normalize profiler path.
Args:
path (str): The path of summary directory.
summary_dir (str): The relative path of summary directory.
summary_base_dir (str): The summary base directory.
Returns:
str, normalized path of profiler directory.
"""
if
not
path
:
if
not
summary_dir
:
raise
ProfilerParamValueErrorException
(
'The file dir does not exist.'
)
try
:
unquote_path
=
unquote
(
path
,
errors
=
'strict'
)
unquote_path
=
unquote
(
summary_dir
,
errors
=
'strict'
)
except
UnicodeDecodeError
:
raise
ProfilerParamValueErrorException
(
'Unquote error with strict mode'
)
profiler_dir
=
os
.
path
.
join
(
unquote_path
,
'profiler'
)
profiler_dir
=
os
.
path
.
join
(
summary_base_dir
,
unquote_path
,
'profiler'
)
try
:
profiler_dir
=
validate_and_normalize_path
(
profiler_dir
,
'profiler'
)
except
ValidationError
:
log
.
error
(
'profiler dir <%s> is invalid'
,
unquote_path
)
log
.
error
(
'profiler dir <%s> is invalid'
,
profiler_dir
)
raise
ProfilerParamValueErrorException
(
'Profiler dir is invalid.'
)
return
profiler_dir
mindinsight/profiler/parser/hwts_log_parser.py
浏览文件 @
c52d0501
...
...
@@ -43,8 +43,8 @@ class HWTSLogParser:
file_name
=
get_file_join_name
(
self
.
_input_path
,
self
.
_source_file_target
)
if
not
file_name
:
msg
=
(
"Fail to find hwts log file, under directory %s"
\
%
self
.
_input_path
)
msg
=
(
"Fail to find hwts log file, under directory %s"
%
self
.
_input_path
)
raise
RuntimeError
(
msg
)
return
file_name
...
...
mindinsight/profiler/parser/step_trace_parser.py
浏览文件 @
c52d0501
...
...
@@ -55,7 +55,7 @@ class StepTraceParser:
def
output_file
(
self
):
"""The property of step trace header."""
file_name
=
self
.
_output_path
.
rsplit
(
'/'
,
2
)
return
file_name
return
file_name
[
-
1
]
if
len
(
file_name
)
==
3
else
''
def
show
(
self
):
"""The property of step trace info."""
...
...
@@ -65,7 +65,7 @@ class StepTraceParser:
summary_info
[
'total_steps'
]
=
len
(
self
.
_result
)
-
1
print
(
'
\n
Step trace summary info (unit: syscnt):'
)
print
(
summary_info
)
print
(
'
\n
The step trace parse result saves under
{summary_dir}
/%s'
%
self
.
output_file
)
print
(
'
\n
The step trace parse result saves under
${summary_dir}/profiler
/%s'
%
self
.
output_file
)
def
parse_and_save
(
self
):
"""Parse step trace files and save the result."""
...
...
@@ -76,7 +76,8 @@ class StepTraceParser:
except
MindInsightException
as
err
:
log
.
error
(
"Failed to parse and save step trace files."
)
log
.
exception
(
err
)
log
.
info
(
"Finish to save intermediate result for step trace file."
)
else
:
log
.
info
(
"Finish to save intermediate result for step trace file."
)
def
_get_step_trace_file
(
self
):
"""Get step trace file."""
...
...
tests/ut/profiler/__init__.py
浏览文件 @
c52d0501
...
...
@@ -12,3 +12,9 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# ============================================================================
"""Unit test for profiler."""
import
os
RAW_DATA_BASE
=
os
.
path
.
realpath
(
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'../../utils/resource'
))
RAW_DATA
=
os
.
path
.
realpath
(
os
.
path
.
join
(
RAW_DATA_BASE
,
'JOB1'
))
PROFILER_DIR
=
os
.
path
.
realpath
(
os
.
path
.
join
(
RAW_DATA_BASE
,
'profiler'
))
tests/ut/profiler/analyser/test_analyser_aicore_detail.py
浏览文件 @
c52d0501
...
...
@@ -20,6 +20,7 @@ from unittest import TestCase
from
mindinsight.profiler.analyser.analyser
import
AicoreDetailAnalyser
from
mindinsight.profiler.analyser.analyser_factory
import
AnalyserFactory
from
tests.ut.profiler
import
PROFILER_DIR
def
get_detail_infos
(
indexes
=
None
,
sort_name
=
None
,
sort_type
=
True
):
...
...
@@ -34,9 +35,8 @@ def get_detail_infos(indexes=None, sort_name=None, sort_type=True):
Returns:
list[list], the AICORE operator detail information.
"""
profiling_dir
=
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'resource'
)
framework_path
=
os
.
path
.
join
(
profiling_dir
,
'framework_raw_0.csv'
)
detail_path
=
os
.
path
.
join
(
profiling_dir
,
'aicore_intermediate_0_detail.csv'
)
framework_path
=
os
.
path
.
join
(
PROFILER_DIR
,
'framework_raw_1.csv'
)
detail_path
=
os
.
path
.
join
(
PROFILER_DIR
,
'aicore_intermediate_1_detail.csv'
)
with
open
(
framework_path
,
'r'
)
as
fm_file
,
open
(
detail_path
,
'r'
)
as
detail_file
:
fm_csv_reader
=
csv
.
reader
(
fm_file
)
...
...
@@ -66,9 +66,8 @@ class TestAicoreDetailAnalyser(TestCase):
"""Test the class of `AicoreDetailAnalyser`."""
def
setUp
(
self
)
->
None
:
"""Initialization before test case execution."""
profiling_dir
=
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'resource'
)
self
.
_analyser
=
AnalyserFactory
.
instance
().
get_analyser
(
'aicore_detail'
,
profiling_dir
,
'0
'
'aicore_detail'
,
PROFILER_DIR
,
'1
'
)
def
test_query_success_1
(
self
):
...
...
tests/ut/profiler/analyser/test_analyser_aicore_type.py
浏览文件 @
c52d0501
...
...
@@ -19,6 +19,7 @@ from unittest import TestCase
from
mindinsight.profiler.analyser.analyser
import
AicoreTypeAnalyser
from
mindinsight.profiler.analyser.analyser_factory
import
AnalyserFactory
from
tests.ut.profiler
import
PROFILER_DIR
def
get_type_infos
(
indexes
=
None
,
sort_name
=
None
,
sort_type
=
True
):
...
...
@@ -33,9 +34,8 @@ def get_type_infos(indexes=None, sort_name=None, sort_type=True):
Returns:
list[list], the AICORE operator type information.
"""
profiling_dir
=
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'resource'
)
aicore_type_path
=
os
.
path
.
join
(
profiling_dir
,
'aicore_intermediate_0
_type.csv'
PROFILER_DIR
,
'aicore_intermediate_1
_type.csv'
)
with
open
(
aicore_type_path
,
'r'
)
as
aicore_type_path
:
...
...
@@ -64,9 +64,8 @@ class TestAicoreTypeAnalyser(TestCase):
"""Test the class of `AicoreTypeAnalyser`."""
def
setUp
(
self
)
->
None
:
"""Initialization before test case execution."""
profiling_dir
=
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'resource'
)
self
.
_analyser
=
AnalyserFactory
.
instance
().
get_analyser
(
'aicore_type'
,
profiling_dir
,
'0
'
'aicore_type'
,
PROFILER_DIR
,
'1
'
)
def
test_query_success_1
(
self
):
...
...
tests/ut/profiler/parser/test_framework_parser.py
浏览文件 @
c52d0501
...
...
@@ -26,6 +26,7 @@ from mindinsight.profiler.common.exceptions.exceptions import \
ProfilerPathErrorException
,
ProfilerDirNotFoundException
,
\
ProfilerFileNotFoundException
from
mindinsight.profiler.parser.framework_parser
import
FrameworkParser
from
tests.ut.profiler
import
PROFILER_DIR
,
RAW_DATA_BASE
def
get_framework_result
(
file_path
):
...
...
@@ -50,7 +51,7 @@ class TestFrameworkParser:
"""Test the class of `FrameworkParser`."""
def
setup_method
(
self
):
"""Initialization before test case execution."""
raw_dir
=
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'resource'
)
raw_dir
=
RAW_DATA_BASE
FrameworkParser
.
_raw_data_dir
=
raw_dir
self
.
_output_path_1
=
tempfile
.
mkdtemp
(
prefix
=
'test_framework_parser_'
)
...
...
@@ -88,9 +89,8 @@ class TestFrameworkParser:
def
test_parse
(
self
):
"""Test the parse function."""
expect_framework_file
=
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'resource'
,
'framework_raw_0.csv'
)
expect_framework_file
=
os
.
path
.
join
(
PROFILER_DIR
,
'framework_raw_0.csv'
)
expect_framework_file
=
os
.
path
.
realpath
(
expect_framework_file
)
expect_result
=
get_framework_result
(
expect_framework_file
)
self
.
_parser_1
.
parse
()
...
...
tests/utils/mindspore/context.py
浏览文件 @
c52d0501
...
...
@@ -19,3 +19,10 @@ def get_context(key):
"""Get key in context."""
context
=
{
"device_id"
:
1
}
return
context
.
get
(
key
)
def
set_context
(
**
kwargs
):
"""Set context"""
context
=
{}
for
key
,
value
in
kwargs
.
items
():
context
[
key
]
=
value
tests/ut
/profiler/parser
/resource/JOB1/Framework.host.vm.graph_desc_info.0.slice_0
→
tests/ut
ils
/resource/JOB1/Framework.host.vm.graph_desc_info.0.slice_0
浏览文件 @
c52d0501
文件已移动
tests/ut
/profiler/parser
/resource/JOB1/Framework.host.vm.graph_desc_info.0.slice_0.done
→
tests/ut
ils
/resource/JOB1/Framework.host.vm.graph_desc_info.0.slice_0.done
浏览文件 @
c52d0501
文件已移动
tests/ut
/profiler/parser
/resource/JOB1/Framework.host.vm.task_desc_info.0.slice_0
→
tests/ut
ils
/resource/JOB1/Framework.host.vm.task_desc_info.0.slice_0
浏览文件 @
c52d0501
文件已移动
tests/utils/resource/JOB1/training_trace.46.dev.profiler_default_tag.0.slice_0
0 → 100644
浏览文件 @
c52d0501
文件已添加
tests/utils/resource/JOB3/DATA_PREPROCESS.dev.AICPU.1.slice_0
0 → 100644
浏览文件 @
c52d0501
文件已添加
tests/utils/resource/JOB3/DATA_PREPROCESS.dev.TDT.1.slice_0
0 → 100644
浏览文件 @
c52d0501
文件已添加
tests/utils/resource/JOB3/Framework.host.vm.graph_desc_info.1.slice_0
0 → 100644
浏览文件 @
c52d0501
此差异已折叠。
点击以展开。
tests/utils/resource/JOB3/Framework.host.vm.task_desc_info.1.slice_0
0 → 100644
浏览文件 @
c52d0501
此差异已折叠。
点击以展开。
tests/utils/resource/JOB3/host_start.log.1
0 → 100644
浏览文件 @
c52d0501
[Device0]
clock_realtime: 1591183963784568740
clock_monotonic_raw: 261003032627
tests/utils/resource/JOB3/hwts.log.data.45.dev.profiler_default_tag.1.slice_0
0 → 100644
浏览文件 @
c52d0501
文件已添加
tests/utils/resource/JOB3/training_trace.46.dev.profiler_default_tag.1.slice_0
0 → 100644
浏览文件 @
c52d0501
文件已添加
tests/ut
/profiler/parser
/resource/container/0/data/Framework.host.vm.graph_desc_info.0.JOB2.slice_0
→
tests/ut
ils
/resource/container/0/data/Framework.host.vm.graph_desc_info.0.JOB2.slice_0
浏览文件 @
c52d0501
文件已移动
tests/ut
/profiler/parser
/resource/container/0/data/Framework.host.vm.task_desc_info.0.JOB2.slice_0
→
tests/ut
ils
/resource/container/0/data/Framework.host.vm.task_desc_info.0.JOB2.slice_0
浏览文件 @
c52d0501
文件已移动
tests/utils/resource/profiler/aicore_intermediate_1_detail.csv
0 → 100644
浏览文件 @
c52d0501
full_op_time,execution_time
Default/AtomicAddrClean-op104,0.00133
Default/AtomicAddrClean-op105,0.000987
Default/AtomicAddrClean-op106,0.001129
Default/Cast-op10,0.00466
Default/network-WithLossCell/_backbone-LeNet5/conv1-Conv2d/Cast-op12,0.002366
Gradients/Default/network-WithLossCell/_backbone-LeNet5/conv1-Conv2d/gradConv2D/Cast-op53,0.004879
Default/TransData-op11,0.006366
Gradients/Default/network-WithLossCell/_backbone-LeNet5/gradReshape/TransData-op44,0.006782
Default/network-WithLossCell/_backbone-LeNet5/conv1-Conv2d/Conv2D-op13,0.05651
Default/network-WithLossCell/_backbone-LeNet5/fc3-Dense/MatMul-op9,0.370864
tests/utils/resource/profiler/aicore_intermediate_1_type.csv
0 → 100644
浏览文件 @
c52d0501
op_type,execution_time,execution_frequency,percent
AtomicAddrClean,0.007283,6,0.49
Cast,0.053395,13,3.63
TransData,0.121800,5,8.23
Conv2D,0.063656,2,4.33
MatMul,1.085982,9,73.80
tests/ut
/profiler/parser/resource
/framework_raw_0.csv
→
tests/ut
ils/resource/profiler
/framework_raw_0.csv
浏览文件 @
c52d0501
文件已移动
tests/utils/resource/profiler/framework_raw_1.csv
0 → 100644
浏览文件 @
c52d0501
task_id,stream_id,block_dim,full_op_name,op_name,op_type,subgraph,op_info
30290,0,1,Default/AtomicAddrClean-op104,AtomicAddrClean-op104,AtomicAddrClean,Default,"{""input_0"": {""format"": ""DefaultFormat"", ""data_type"": ""NUMBER_TYPE_FLOAT32"", ""shape"": """"}}"
30295,0,1,Default/AtomicAddrClean-op105,AtomicAddrClean-op105,AtomicAddrClean,Default,"{""input_0"": {""format"": ""DefaultFormat"", ""data_type"": ""NUMBER_TYPE_FLOAT32"", ""shape"": ""10""}}"
30300,0,1,Default/AtomicAddrClean-op106,AtomicAddrClean-op106,AtomicAddrClean,Default,"{""input_0"": {""format"": ""DefaultFormat"", ""data_type"": ""NUMBER_TYPE_FLOAT32"", ""shape"": ""84""}}"
30268,0,32,Default/Cast-op10,Cast-op10,Cast,Default,"{""input_0"": {""format"": ""DefaultFormat"", ""data_type"": ""NUMBER_TYPE_FLOAT32"", ""shape"": ""32,1,32,32""}, ""output_0"": {""format"": ""DefaultFormat"", ""data_type"": ""NUMBER_TYPE_FLOAT16"", ""shape"": ""32,1,32,32""}}"
30271,0,9,Default/network-WithLossCell/_backbone-LeNet5/conv1-Conv2d/Cast-op12,Cast-op12,Cast,Default,"{""input_0"": {""format"": ""FracZ"", ""data_type"": ""NUMBER_TYPE_FLOAT32"", ""shape"": ""25,1,16,16""}, ""output_0"": {""format"": ""FracZ"", ""data_type"": ""NUMBER_TYPE_FLOAT16"", ""shape"": ""25,1,16,16""}}"
30320,0,32,Gradients/Default/network-WithLossCell/_backbone-LeNet5/conv1-Conv2d/gradConv2D/Cast-op53,Cast-op53,Cast,Gradients,"{""input_0"": {""format"": ""NC1HWC0"", ""data_type"": ""NUMBER_TYPE_FLOAT32"", ""shape"": ""32,1,28,28,16""}, ""output_0"": {""format"": ""NC1HWC0"", ""data_type"": ""NUMBER_TYPE_FLOAT16"", ""shape"": ""32,1,28,28,16""}}"
30269,0,32,Default/TransData-op11,TransData-op11,TransData,Default,"{""input_0"": {""format"": ""DefaultFormat"", ""data_type"": ""NUMBER_TYPE_FLOAT16"", ""shape"": ""32,1,32,32""}, ""output_0"": {""format"": ""NC1HWC0"", ""data_type"": ""NUMBER_TYPE_FLOAT16"", ""shape"": ""32,1,32,32""}}"
30308,0,32,Gradients/Default/network-WithLossCell/_backbone-LeNet5/gradReshape/TransData-op44,TransData-op44,TransData,Gradients,"{""input_0"": {""format"": ""DefaultFormat"", ""data_type"": ""NUMBER_TYPE_FLOAT16"", ""shape"": ""32,16,5,5""}, ""output_0"": {""format"": ""NC1HWC0"", ""data_type"": ""NUMBER_TYPE_FLOAT16"", ""shape"": ""32,1,5,5,16""}}"
30272,0,32,Default/network-WithLossCell/_backbone-LeNet5/conv1-Conv2d/Conv2D-op13,Conv2D-op13,Conv2D,Default,"{""input_0"": {""format"": ""NC1HWC0"", ""data_type"": ""NUMBER_TYPE_FLOAT16"", ""shape"": ""32,1,32,32,16""}, ""input_1"": {""format"": ""FracZ"", ""data_type"": ""NUMBER_TYPE_FLOAT16"", ""shape"": ""25,1,16,16""}, ""output_0"": {""format"": ""NC1HWC0"", ""data_type"": ""NUMBER_TYPE_FLOAT16"", ""shape"": ""32,1,28,28,16""}}"
30286,0,1,Default/network-WithLossCell/_backbone-LeNet5/fc3-Dense/MatMul-op9,MatMul-op9,MatMul,Default,"{""input_0"": {""format"": ""DefaultFormat"", ""data_type"": ""NUMBER_TYPE_FLOAT32"", ""shape"": ""32,120""}, ""input_1"": {""format"": ""DefaultFormat"", ""data_type"": ""NUMBER_TYPE_FLOAT32"", ""shape"": ""84,120""}, ""input_2"": {""format"": ""DefaultFormat"", ""data_type"": ""NUMBER_TYPE_FLOAT32"", ""shape"": ""84""}, ""output_0"": {""format"": ""DefaultFormat"", ""data_type"": ""NUMBER_TYPE_FLOAT32"", ""shape"": ""32,84""}}"
tests/utils/resource/profiler/step_trace_raw_0_detail_time.csv
0 → 100644
浏览文件 @
c52d0501
step_num,start_point,end_point,total,fp_point,bp_point,iteration_interval,fp_and_bp,tail,stream_10_parallel_0_start_point,stream_10_parallel_0_end_point,stream_10_parallel_0,stream_10_parallel_1_start_point,stream_10_parallel_1_end_point,stream_10_parallel_1,stream_10_parallel_2_start_point,stream_10_parallel_2_end_point,stream_10_parallel_2,stream_11_parallel_0_start_point,stream_11_parallel_0_end_point,stream_11_parallel_0
1,45020526465,45041052609,20526144,45020538467,45032339821,12002,11801354,8712788,45020548731,45020574730,25999,45021556176,45021851790,295614,45032850758,45033055282,204524,45020553834,45020586153,32319
2,45041052609,45061577413,20524804,45041066169,45052867211,13560,11801042,8710202,45041077109,45041096998,19889,45042082149,45042383040,300891,45053384374,45053578836,194462,45041083492,45041111560,28068
3,45061577413,45082110285,20532872,45061590044,45073390989,12631,11800945,8719296,45061602230,45061625204,22974,45062605143,45062902171,297028,45073902745,45074101879,199134,45061603383,45061630503,27120
4,45082110285,45102643335,20533050,45082123831,45093925011,13546,11801180,8718324,45082137141,45082154700,17559,45083140904,45083440914,300010,45094442436,45094636568,194132,45082140632,45082172845,32213
5,45102643335,45123173197,20529862,45102656269,45114458162,12934,11801893,8715035,45102673781,45102695619,21838,45103675921,45103971688,295767,45114969344,45115173035,203691,45102675482,45102700807,25325
6,45123173197,45143698550,20525353,45123186047,45134986923,12850,11800876,8711627,45123206016,45123217888,11872,45124199293,45124505427,306134,45135499961,45135703946,203985,45123196109,45123230354,34245
7,45143698550,45164229070,20530520,45143712101,45155513651,13551,11801550,8715419,45143730950,45143750926,19976,45144731691,45145023183,291492,45156025144,45156224720,199576,45143728385,45143758571,30186
8,45164229070,45184754878,20525808,45164241588,45176043051,12518,11801463,8711827,45164257233,45164281239,24006,45165258707,45165559029,300322,45176561050,45176755753,194703,45164251768,45164285836,34068
9,45184754878,45205281328,20526450,45184767651,45196569566,12773,11801915,8711762,45184782578,45184799434,16856,45185780544,45186083913,303369,45197086694,45197282669,195975,45184787508,45184816578,29070
10,45205281328,45225808076,20526748,45205295181,45217096699,13853,11801518,8711377,45205312140,45205328049,15909,45206305285,45206614349,309064,45217611452,45217807480,196028,45205312068,45205339808,27740
11,45225808076,45246336247,20528171,45225820613,45237622360,12537,11801747,8713887,45225830974,45225860234,29260,45226834268,45227135750,301482,45238137612,45238341621,204009,45225833955,45225870064,36109
12,45246336247,45266862873,20526626,45246348376,45258149958,12129,11801582,8712915,45246362139,45246380039,17900,45247364231,45247660677,296446,45258666251,45258864967,198716,45246361528,45246394861,33333
13,45266862873,45287394213,20531340,45266875977,45278677761,13104,11801784,8716452,45266894199,45266909080,14881,45267890915,45268191344,300429,45279191183,45279391317,200134,45266888701,45266917000,28299
14,45287394213,45307923664,20529451,45287407755,45299209636,13542,11801881,8714028,45287427610,45287441066,13456,45288421386,45288719901,298515,45299722571,45299927585,205014,45287425310,45287449279,23969
15,45307923664,45328450904,20527240,45307935831,45319737272,12167,11801441,8713632,45307950324,45307974692,24368,45308952601,45309249485,296884,45320250207,45320450146,199939,45307946748,45307977430,30682
16,45328450904,45348980394,20529490,45328463014,45340264339,12110,11801325,8716055,45328476038,45328500997,24959,45329481974,45329782090,300116,45340777279,45340982640,205361,45328474691,45328507939,33248
17,45348980394,45369507222,20526828,45348994014,45360794759,13620,11800745,8712463,45349011746,45349029629,17883,45350010381,45350305839,295458,45361314636,45361505942,191306,45349006330,45349041259,34929
18,45369507222,45390033964,20526742,45369520766,45381322000,13544,11801234,8711964,45369533695,45369553091,19396,45370539131,45370831270,292139,45381839638,45382037802,198164,45369537705,45369568029,30324
19,45390033964,45410562185,20528221,45390046293,45401847702,12329,11801409,8714483,45390059837,45390080765,20928,45391059730,45391357314,297584,45402361677,45402562220,200543,45390060524,45390092731,32207
-,45215545457,45236073767,20528310,45215558418,45227359836,12961,11801418,8713930,45215573652,45215593314,19662,45216574125,45216873188,299063,45227874681,45228073840,199160,45215573018,45215603636,30619
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录