Fork
0
代码
介绍
代码
Issues
Pull Requests
流水线
Actions
讨论
Wiki
项目成员
分析
项目设置
Fork
0
master
msprof
/
test
/
msprof_python
/
ut
/
testcase
/
common_function
下载当前目录
ascend-robot
fix mstx data analysis err in acl graph scene
dca1cd74
创建于
3 天前
历史提交
文件
最后提交记录
最后更新时间
__init__.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前
test_ai_core_metrics_manager.py
fixp2ub && ctrl_cpu Co-authored-by: xieanran<694099604@qq.com> # message auto-generated for no-merge-commit merge:
!77
merge master into master fixp2ub && ctrl_cpu Created-by: SoraAzzz Commit-by: xieanran Merged-by: ascend-robot Description: # PR 合入模板 **注:经过自检不涉及的可标注“不涉及”或直接打勾,特殊情况请文字备注。不符合规范的 PR 不允许合入,请(后备)commit 注意。** ---- ## 1. 修改描述 - **修改原因:** fixp2ub ctl_cpu && ccu - **修改内容:** 如上 ---- ## 2. 功能验证 - [x] **功能自验** - [x] **本地自验用例截图** - [x] **冒烟是否通过** (填入群链接的自验证报告中,如未通过,请说明原因:____________________ ,功能代码请主动申报添加冒烟) ---- ## 3. 分支合并要求 - [x] **代码合并**(请确保将 master 分支的最新代码同步合并至 poc 分支及 pre-research 分支,同时保证 poc 分支的代码也已正确合并到 pre-research 分支。) ---- ## 3. 代码检视 - **要求:** - 合入代码超过 200 行,需三人以上会议检视。 - 检视密度≥1个/100行。 - 检视缺陷密度未达要求需提供说明。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [x] **是否经过代码检视** - [ ] **是否具备 UT 测试用例看护** (如不符合,请说明原因:____________________) - **检视意见数:____ 条** (请填写本次检视的意见总数,用于commit合入前审视) ---- ## 4. 安全自检 ### Python、C++: - [x] **对外接口新增/删除/变更后,资料要同步新增/删除/变更,新增接口入参校验参考外部输入表格** - [x] **不允许私有的文件操作,需要使用公共模块的安全函数** - [x] **任务结束后需要删除临时文件,同时需要考虑任务失败后,临时文件没有残留** - [x] **数组访问需要校验越界场景,对除法需要做除零校验** - [x] **需要对递归方法做递归深度校验,正则表达式必须做 ReDoS 校验** - [x] **需要充分进行接口输入和返回值异常情况的校验** - [x] **日志打印不要出现拼写或语法错误,不要暴露代码细节和敏感信息** ### C++: - [x] **指针使用前需要判空** - [x] **数值计算校验溢出和反转** - [x] **不可存在内存泄漏(异常场景需要释放内存)** - [x] **类型转换不能出现数据截断** - [x] **拷贝字符串时,目的缓冲区至少比源缓冲区大 1** - [x] **拷贝内存时,目的缓冲区不小于源缓冲区** - [x] **内存释放后指针赋值为 nullptr** ---- ## 5. 变更知会 - [ ] **资料修改** - [ ] **变更通知(消息知会 + 邮件知会)** ---- See merge request: Ascend/msprof
!77
3 个月前
test_ai_stack_data_check_manager.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前
test_batch_counter.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前
test_byte_interpreter.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前
test_common.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前
test_cpp_enable_scene.py
导出DB场景白名单补充当代支持的芯片 Co-authored-by: fanhong<2532845962@qq.com> # message auto-generated for no-merge-commit merge:
!126
merge A5Cpp into master 导出DB场景白名单补充当代支持的芯片 Created-by: fanhong Commit-by: fanhong Merged-by: ascend-robot Description: # PR 合入模板 **注:经过自检不涉及的可标注“不涉及”或直接打勾,特殊情况请文字备注。不符合规范的 PR 不允许合入,请(后备)commit 注意。** ---- ## 1. 修改描述 - **修改原因:** 导出DB场景白名单补充当代支持的芯片 - **修改内容:** 重构C化导出逻辑时未适配早期芯片,需要添加统一DB支持早期芯片的白名单 ---- ## 2. 功能验证 - [x] **功能自验** - [ ] **本地自验用例截图** - [ ] **冒烟是否通过** (填入群链接的自验证报告中,如未通过,请说明原因:____________________ ,功能代码请主动申报添加冒烟) ---- ## 3. 分支合并要求 - [ ] **代码合并**(请确保将 master 分支的最新代码同步合并至 poc 分支及 pre-research 分支,同时保证 poc 分支的代码也已正确合并到 pre-research 分支。) ---- ## 3. 代码检视 - **要求:** - 合入代码超过 200 行,需三人以上会议检视。 - 检视密度≥1个/100行。 - 检视缺陷密度未达要求需提供说明。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** - [ ] **是否具备 UT 测试用例看护** (如不符合,请说明原因:____________________) - **检视意见数:____ 条** (请填写本次检视的意见总数,用于commit合入前审视) ---- ## 4. 安全自检 ### Python、C++: - [x] **对外接口新增/删除/变更后,资料要同步新增/删除/变更,新增接口入参校验参考外部输入表格** - [x] **不允许私有的文件操作,需要使用公共模块的安全函数** - [x] **任务结束后需要删除临时文件,同时需要考虑任务失败后,临时文件没有残留** - [x] **数组访问需要校验越界场景,对除法需要做除零校验** - [x] **需要对递归方法做递归深度校验,正则表达式必须做 ReDoS 校验** - [x] **需要充分进行接口输入和返回值异常情况的校验** - [x] **日志打印不要出现拼写或语法错误,不要暴露代码细节和敏感信息** ### C++: - [ ] **指针使用前需要判空** - [ ] **数值计算校验溢出和反转** - [ ] **不可存在内存泄漏(异常场景需要释放内存)** - [ ] **类型转换不能出现数据截断** - [ ] **拷贝字符串时,目的缓冲区至少比源缓冲区大 1** - [ ] **拷贝内存时,目的缓冲区不小于源缓冲区** - [ ] **内存释放后指针赋值为 nullptr** ---- ## 5. 变更知会 - [ ] **资料修改** - [ ] **变更通知(消息知会 + 邮件知会)** ---- See merge request: Ascend/msprof
!126
2 个月前
test_create_runtime_db.py
fix: 修复 UT Mock 范围错误及断言逻辑问题 (Closes
#5
) Co-authored-by: gLofs<jeanyida@gmail.com> # message auto-generated for no-merge-commit merge:
!37
merge fix/ut-mock-and-assertion-error into master fix: 修复 UT Mock 范围错误及断言逻辑问题 (Closes
#5
) Created-by: gLofs Commit-by: gLofs Merged-by: ascend-robot Description: # PR 合入模板 **不涉及自检** ---- ## 1. 修改描述 - **修改原因:修复issue** - **修改内容:修复 UT Mock 范围错误及断言逻辑问题** ## 关联 Issue Closes [
#5
](
https://gitcode.com/Ascend/msprof/issues/5)
See merge request: Ascend/msprof
!37
4 个月前
test_data_check_manager.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前
test_decode_tool.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前
test_file_manager.py
fix: 修复 UT Mock 范围错误及断言逻辑问题 (Closes
#5
) Co-authored-by: gLofs<jeanyida@gmail.com> # message auto-generated for no-merge-commit merge:
!37
merge fix/ut-mock-and-assertion-error into master fix: 修复 UT Mock 范围错误及断言逻辑问题 (Closes
#5
) Created-by: gLofs Commit-by: gLofs Merged-by: ascend-robot Description: # PR 合入模板 **不涉及自检** ---- ## 1. 修改描述 - **修改原因:修复issue** - **修改内容:修复 UT Mock 范围错误及断言逻辑问题** ## 关联 Issue Closes [
#5
](
https://gitcode.com/Ascend/msprof/issues/5)
See merge request: Ascend/msprof
!37
4 个月前
test_file_slice_helper.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前
test_ge_logic_stream_singleton.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前
test_hash_dict_constant.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前
test_info_conf_reader.py
fix mstx data analysis err in acl graph scene Co-authored-by: mei-feiyao<meifeiyao@h-partners.com> # message auto-generated for no-merge-commit merge:
!261
merge tagid into master fix mstx data analysis err in acl graph scene Created-by: mei-feiyao Commit-by: mei-feiyao Merged-by: ascend-robot Description: # PR 合入模板 **注:经过自检不涉及的可标注“不涉及”或直接打勾,特殊情况请文字备注。不符合规范的 PR 不允许合入,请(后备)commit 注意。** ---- ## 1. 修改描述 - **修改原因:** 1.aclgraph场景,在capture的阶段内调用mstx打点接口进行打点的话,打点的task会被捕捉到图里。当该图多次replay时,会多次执行相同的打点task,最终采集到的device打点数据里index_id字段也会重复; 2.解析device打点数据的逻辑未适配该场景,最终解析时使用相同index_id的最早打点时间作为开始时间,使用最晚打点时间作为结束时间,最终呈现的device打点耗时错误。 - **修改内容:** 1.cann 9.1.0以后,mark打点tag id是11,range打点tag id是12,增加方法判断数据对应的cann版本信息; 2.修改解析逻辑,判断是9.1.0以后的cann,将相同index_id的打点数据按时间排序后,每两个匹配,作为一段打点的开始和结束打点;否则保持之前的逻辑 3.生成tx.csv时,以前只会生成相同mark id里的最后一条数据,现在修复保留并生成所有的打点数据 4.C化部分修改device tx数据的处理逻辑,对于tagid是11的数据直接保存,对于tagid是12的数据先按index id和timestamp排序,再两两配对,拼接成range ---- ## 2. 功能验证 - [ ] **功能自验**    - [ ] **本地自验用例截图** - [ ] **冒烟是否通过** (填入群链接的自验证报告中,如未通过,请说明原因:____________________ ,功能代码请主动申报添加冒烟) ---- ## 3. 分支合并要求 - [ ] **代码合并**(请确保将 master 分支的最新代码同步合并至 poc 分支及 pre-research 分支,同时保证 poc 分支的代码也已正确合并到 pre-research 分支。) ---- ## 3. 代码检视 - **要求:** - 合入代码超过 200 行,需三人以上会议检视。 - 检视密度≥1个/100行。 - 检视缺陷密度未达要求需提供说明。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** - [ ] **是否具备 UT 测试用例看护** (如不符合,请说明原因:____________________) - **检视意见数:____ 条** (请填写本次检视的意见总数,用于commit合入前审视) ---- ## 4. 安全自检 ### Python、C++ - [ ] **对外接口新增/删除/变更后,资料要同步新增/删除/变更,新增接口入参校验参考外部输入表格** - [ ] **不允许私有的文件操作,需要使用公共模块的安全函数** - [ ] **任务结束后需要删除临时文件,同时需要考虑任务失败后,临时文件没有残留** - [ ] **数组访问需要校验越界场景,对除法需要做除零校验** - [ ] **需要对递归方法做递归深度校验,正则表达式必须做 ReDoS 校验** - [ ] **需要充分进行接口输入和返回值异常情况的校验** - [ ] **日志打印不要出现拼写或语法错误,不要暴露代码细节和敏感信息** ### C++ - [ ] **指针使用前需要判空** - [ ] **数值计算校验溢出和反转** - [ ] **不可存在内存泄漏(异常场景需要释放内存)** - [ ] **类型转换不能出现数据截断** - [ ] **拷贝字符串时,目的缓冲区至少比源缓冲区大 1** - [ ] **拷贝内存时,目的缓冲区不小于源缓冲区** - [ ] **内存释放后指针赋值为 nullptr** ---- ## 5. 变更知会 - [ ] **资料修改** - [ ] **变更通知(消息知会 + 邮件知会)** ---- See merge request: Ascend/msprof
!261
3 天前
test_json_manager.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前
test_ms_multi_process.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前
test_msprof_object.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前
test_msprof_step.py
Python代码新增多个单元测试,涵盖任务调度模型索引、数据存储和导出功能的集成测试,修复测试用例中的路径问题 Co-authored-by: Mrtutu<zhangwei983@huawei.com> # message auto-generated for no-merge-commit merge:
!262
merge add_py_ut into master Python代码新增多个单元测试,涵盖任务调度模型索引、数据存储和导出功能的集成测试,修复测试用例中的路径问题 Created-by: kali20gakki1 Commit-by: Mrtutu Merged-by: ascend-robot Description: # PR 合入模板 **注:经过自检不涉及的可标注“不涉及”或直接打勾,特殊情况请文字备注。不符合规范的 PR 不允许合入,请(后备)commit 注意。** ---- ## 1. 修改描述 **改动文件** - 新增 test_msprof_step.py (/home/mrtutu/Project/msprof/test/msprof_python/ut/testcase/common_function/test_msprof_step.py:1) - 新增 test_multi_process_cb.py (/home/mrtutu/Project/msprof/test/msprof_python/ut/testcase/common_function/test_multi_process_cb.py:1) - 新增 test_msprof_iteration_integration.py (/home/mrtutu/Project/msprof/test/msprof_python/ut/testcase/msprof/common/test_msprof_iteration_integration.py:1) - 新增 test_task_dispatch_model_index.py (/home/mrtutu/Project/msprof/test/msprof_python/ut/testcase/mscalculate/hwts/test_task_dispatch_model_index.py:1) - 修复 task_dispatch_model_index.py (/home/mrtutu/Project/msprof/analysis/mscalculate/hwts/task_dispatch_model_index.py:45) **补充的测试场景** - common_func/msprof_step.py - 覆盖 __enter__ 在表不存在/存在时的两条路径。 - 覆盖 __exit__ 释放 model 资源的路径。 - 覆盖 get_step_data() 从 step_trace_data 读取 DTO 数据的路径。 - 覆盖 get_step_iteration_time() 正常返回区间、迭代信息缺失返回空列表的场景。 - 覆盖 get_mix_op_iter_id() 混合图场景下并行迭代范围计算,以及查不到目标 step 时返回空元组的场景。 - 覆盖 get_graph_iter_id()、get_iter_id()、get_model_and_index_id_by_iter_id() 的 graph/mix-op 分支和空结果分支。 - common_func/multi_process_cb.py - 覆盖热点函数解析逻辑,包括长符号压缩、unknown 栈的兜底逻辑。 - 覆盖 process_stack() 正常栈拼接、异常读取返回空列表的场景。 - 覆盖 line_match() 对普通 PMU 行和 raw PMU 行的匹配逻辑。 - 覆盖 insert_data() 在 PMU_MODE_CORE 和 PMU_MODE_NO_CORE 两种模式下的样本拼装逻辑。 - 覆盖 _exec_query_sql() 加锁、逐条执行 SQL、提交事务的路径。 - 覆盖 manipulation_data() 跳过非法控制行、识别匹配行并累计样本的场景。 - 覆盖 _multiprocess_callback_helper() 的分段处理和 multiprocess_callback() 异常清理路径。 - common_func/msprof_iteration.py - 新增基于真实临时项目目录和真实 step_trace.db 的集成测试,避免只靠 mock 补覆盖率。 - step 场景下覆盖: - get_step_syscnt_range_by_iter_range() - get_iter_interval() Build- get_iteration_end_dict()·GPT-5.4xcode - get_step_trace_op() - get_step_end_range_by_iter_range() - get_index_id_list_with_index_and_model() 的非 mix-op 返回路径 - mix graph 场景下覆盖: - get_step_iteration_time() - get_iteration_time() - get_condition_within_iteration() - get_iteration_info_by_index_id() - get_parallel_iter_range() - get_index_id_list_with_index_and_model() 的混合图并行迭代扩展逻辑 - 这些用例通过真实 sqlite 数据构造了 step/export/mix-op 的业务路径,验证了迭代区间推导、时间转换和并行迭代识别的实际行为。 - mscalculate/hwts/task_dispatch_model_index.py - 新增基于真实 step_trace.db 的业务测试,覆盖: - 混合图场景下根据 end_time 将任务派发到正确 (model_id, index_id) 的路径。 - 普通 step 场景下按迭代结束时间顺序回退派发的路径。 - 在补测过程中发现实现问题并修复: - get_index_id_list_with_index_and_model() 返回的是 (index_id, model_id),原实现按 (model_id, index_id) 解包,导致混合图场景下查询迭代信息时参数顺序错误,可能把任务错误派发回 GE 模型。 - 已在 task_dispatch_model_index.py (/home/mrtutu/Project/msprof/analysis/mscalculate/hwts/task_dispatch_model_index.py:45) 修正为按 (index_id, model_id) 正确解包并查询。 **1. 验证效果** - 定向验证通过: - test_msprof_step.py + test_multi_process_cb.py 共 19 个用例通过 - test_msprof_iteration_integration.py + test_task_dispatch_model_index.py 共 4 个用例通过 - 全量 Python UT 通过: - 执行 bash scripts/execute_py_test_case.sh - 结果:2369 passed, 2 warnings - 覆盖率脚本通过: - 执行 bash scripts/generate_coverage_py.sh - 覆盖率提升情况: - coverage.xml 总体 line-rate:88.42% -> 89.01% - coverage.xml 总体 branch-rate:73.42% -> 74.56% - analysis/common_func/msprof_step.py:提升到 line-rate = 100% - analysis/common_func/multi_process_cb.py:17.65% -> 88.24% - analysis/common_func/msprof_iteration.py:55.87% -> 86.03% - analysis/mscalculate/hwts/task_dispatch_model_index.py:56.25% -> 100% ---- ## 2. 功能验证 - [ ] **功能自验** - [ ] **本地自验用例截图** - [ ] **冒烟是否通过** (填入群链接的自验证报告中,如未通过,请说明原因:____________________ ,功能代码请主动申报添加冒烟) ---- ## 3. 分支合并要求 - [ ] **代码合并**(请确保将 master 分支的最新代码同步合并至 poc 分支及 pre-research 分支,同时保证 poc 分支的代码也已正确合并到 pre-research 分支。) ---- ## 3. 代码检视 - **要求:** - 合入代码超过 200 行,需三人以上会议检视。 - 检视密度≥1个/100行。 - 检视缺陷密度未达要求需提供说明。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** - [ ] **是否具备 UT 测试用例看护** (如不符合,请说明原因:____________________) - **检视意见数:____ 条** (请填写本次检视的意见总数,用于commit合入前审视) ---- ## 4. 安全自检 ### Python、C++ - [ ] **对外接口新增/删除/变更后,资料要同步新增/删除/变更,新增接口入参校验参考外部输入表格** - [ ] **不允许私有的文件操作,需要使用公共模块的安全函数** - [ ] **任务结束后需要删除临时文件,同时需要考虑任务失败后,临时文件没有残留** - [ ] **数组访问需要校验越界场景,对除法需要做除零校验** - [ ] **需要对递归方法做递归深度校验,正则表达式必须做 ReDoS 校验** - [ ] **需要充分进行接口输入和返回值异常情况的校验** - [ ] **日志打印不要出现拼写或语法错误,不要暴露代码细节和敏感信息** ### C++ - [ ] **指针使用前需要判空** - [ ] **数值计算校验溢出和反转** - [ ] **不可存在内存泄漏(异常场景需要释放内存)** - [ ] **类型转换不能出现数据截断** - [ ] **拷贝字符串时,目的缓冲区至少比源缓冲区大 1** - [ ] **拷贝内存时,目的缓冲区不小于源缓冲区** - [ ] **内存释放后指针赋值为 nullptr** ---- ## 5. 变更知会 - [ ] **资料修改** - [ ] **变更通知(消息知会 + 邮件知会)** ---- See merge request: Ascend/msprof
!262
7 天前
test_msvp_common.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前
test_multi_process_cb.py
Python代码新增多个单元测试,涵盖任务调度模型索引、数据存储和导出功能的集成测试,修复测试用例中的路径问题 Co-authored-by: Mrtutu<zhangwei983@huawei.com> # message auto-generated for no-merge-commit merge:
!262
merge add_py_ut into master Python代码新增多个单元测试,涵盖任务调度模型索引、数据存储和导出功能的集成测试,修复测试用例中的路径问题 Created-by: kali20gakki1 Commit-by: Mrtutu Merged-by: ascend-robot Description: # PR 合入模板 **注:经过自检不涉及的可标注“不涉及”或直接打勾,特殊情况请文字备注。不符合规范的 PR 不允许合入,请(后备)commit 注意。** ---- ## 1. 修改描述 **改动文件** - 新增 test_msprof_step.py (/home/mrtutu/Project/msprof/test/msprof_python/ut/testcase/common_function/test_msprof_step.py:1) - 新增 test_multi_process_cb.py (/home/mrtutu/Project/msprof/test/msprof_python/ut/testcase/common_function/test_multi_process_cb.py:1) - 新增 test_msprof_iteration_integration.py (/home/mrtutu/Project/msprof/test/msprof_python/ut/testcase/msprof/common/test_msprof_iteration_integration.py:1) - 新增 test_task_dispatch_model_index.py (/home/mrtutu/Project/msprof/test/msprof_python/ut/testcase/mscalculate/hwts/test_task_dispatch_model_index.py:1) - 修复 task_dispatch_model_index.py (/home/mrtutu/Project/msprof/analysis/mscalculate/hwts/task_dispatch_model_index.py:45) **补充的测试场景** - common_func/msprof_step.py - 覆盖 __enter__ 在表不存在/存在时的两条路径。 - 覆盖 __exit__ 释放 model 资源的路径。 - 覆盖 get_step_data() 从 step_trace_data 读取 DTO 数据的路径。 - 覆盖 get_step_iteration_time() 正常返回区间、迭代信息缺失返回空列表的场景。 - 覆盖 get_mix_op_iter_id() 混合图场景下并行迭代范围计算,以及查不到目标 step 时返回空元组的场景。 - 覆盖 get_graph_iter_id()、get_iter_id()、get_model_and_index_id_by_iter_id() 的 graph/mix-op 分支和空结果分支。 - common_func/multi_process_cb.py - 覆盖热点函数解析逻辑,包括长符号压缩、unknown 栈的兜底逻辑。 - 覆盖 process_stack() 正常栈拼接、异常读取返回空列表的场景。 - 覆盖 line_match() 对普通 PMU 行和 raw PMU 行的匹配逻辑。 - 覆盖 insert_data() 在 PMU_MODE_CORE 和 PMU_MODE_NO_CORE 两种模式下的样本拼装逻辑。 - 覆盖 _exec_query_sql() 加锁、逐条执行 SQL、提交事务的路径。 - 覆盖 manipulation_data() 跳过非法控制行、识别匹配行并累计样本的场景。 - 覆盖 _multiprocess_callback_helper() 的分段处理和 multiprocess_callback() 异常清理路径。 - common_func/msprof_iteration.py - 新增基于真实临时项目目录和真实 step_trace.db 的集成测试,避免只靠 mock 补覆盖率。 - step 场景下覆盖: - get_step_syscnt_range_by_iter_range() - get_iter_interval() Build- get_iteration_end_dict()·GPT-5.4xcode - get_step_trace_op() - get_step_end_range_by_iter_range() - get_index_id_list_with_index_and_model() 的非 mix-op 返回路径 - mix graph 场景下覆盖: - get_step_iteration_time() - get_iteration_time() - get_condition_within_iteration() - get_iteration_info_by_index_id() - get_parallel_iter_range() - get_index_id_list_with_index_and_model() 的混合图并行迭代扩展逻辑 - 这些用例通过真实 sqlite 数据构造了 step/export/mix-op 的业务路径,验证了迭代区间推导、时间转换和并行迭代识别的实际行为。 - mscalculate/hwts/task_dispatch_model_index.py - 新增基于真实 step_trace.db 的业务测试,覆盖: - 混合图场景下根据 end_time 将任务派发到正确 (model_id, index_id) 的路径。 - 普通 step 场景下按迭代结束时间顺序回退派发的路径。 - 在补测过程中发现实现问题并修复: - get_index_id_list_with_index_and_model() 返回的是 (index_id, model_id),原实现按 (model_id, index_id) 解包,导致混合图场景下查询迭代信息时参数顺序错误,可能把任务错误派发回 GE 模型。 - 已在 task_dispatch_model_index.py (/home/mrtutu/Project/msprof/analysis/mscalculate/hwts/task_dispatch_model_index.py:45) 修正为按 (index_id, model_id) 正确解包并查询。 **1. 验证效果** - 定向验证通过: - test_msprof_step.py + test_multi_process_cb.py 共 19 个用例通过 - test_msprof_iteration_integration.py + test_task_dispatch_model_index.py 共 4 个用例通过 - 全量 Python UT 通过: - 执行 bash scripts/execute_py_test_case.sh - 结果:2369 passed, 2 warnings - 覆盖率脚本通过: - 执行 bash scripts/generate_coverage_py.sh - 覆盖率提升情况: - coverage.xml 总体 line-rate:88.42% -> 89.01% - coverage.xml 总体 branch-rate:73.42% -> 74.56% - analysis/common_func/msprof_step.py:提升到 line-rate = 100% - analysis/common_func/multi_process_cb.py:17.65% -> 88.24% - analysis/common_func/msprof_iteration.py:55.87% -> 86.03% - analysis/mscalculate/hwts/task_dispatch_model_index.py:56.25% -> 100% ---- ## 2. 功能验证 - [ ] **功能自验** - [ ] **本地自验用例截图** - [ ] **冒烟是否通过** (填入群链接的自验证报告中,如未通过,请说明原因:____________________ ,功能代码请主动申报添加冒烟) ---- ## 3. 分支合并要求 - [ ] **代码合并**(请确保将 master 分支的最新代码同步合并至 poc 分支及 pre-research 分支,同时保证 poc 分支的代码也已正确合并到 pre-research 分支。) ---- ## 3. 代码检视 - **要求:** - 合入代码超过 200 行,需三人以上会议检视。 - 检视密度≥1个/100行。 - 检视缺陷密度未达要求需提供说明。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** - [ ] **是否具备 UT 测试用例看护** (如不符合,请说明原因:____________________) - **检视意见数:____ 条** (请填写本次检视的意见总数,用于commit合入前审视) ---- ## 4. 安全自检 ### Python、C++ - [ ] **对外接口新增/删除/变更后,资料要同步新增/删除/变更,新增接口入参校验参考外部输入表格** - [ ] **不允许私有的文件操作,需要使用公共模块的安全函数** - [ ] **任务结束后需要删除临时文件,同时需要考虑任务失败后,临时文件没有残留** - [ ] **数组访问需要校验越界场景,对除法需要做除零校验** - [ ] **需要对递归方法做递归深度校验,正则表达式必须做 ReDoS 校验** - [ ] **需要充分进行接口输入和返回值异常情况的校验** - [ ] **日志打印不要出现拼写或语法错误,不要暴露代码细节和敏感信息** ### C++ - [ ] **指针使用前需要判空** - [ ] **数值计算校验溢出和反转** - [ ] **不可存在内存泄漏(异常场景需要释放内存)** - [ ] **类型转换不能出现数据截断** - [ ] **拷贝字符串时,目的缓冲区至少比源缓冲区大 1** - [ ] **拷贝内存时,目的缓冲区不小于源缓冲区** - [ ] **内存释放后指针赋值为 nullptr** ---- ## 5. 变更知会 - [ ] **资料修改** - [ ] **变更通知(消息知会 + 邮件知会)** ---- See merge request: Ascend/msprof
!262
7 天前
test_path_manager.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前
test_rt_add_info_center.py
[feature-msprof-master](Python)AclGraph-Capture场景通过captureStreamInfo获取modelId Co-authored-by: yu-liang-bin<y1416490440@163.com> # message auto-generated for no-merge-commit merge:
!25
merge feature_model_id into master [feature-msprof-master](Python)AclGraph-Capture场景通过captureStreamInfo获取modelId Created-by: yu_liangbin Commit-by: yu-liang-bin Merged-by: ascend-robot Description: # PR 合入模板 **注:经过自检不涉及的可标注“不涉及”或直接打勾,特殊情况请文字备注。不符合规范的 PR 不允许合入,请(后备)commit 注意。** ---- ## 1. 修改描述 - **修改原因:** (python部分)当前AclGraph-Capture场景stream的modelId无法通过Api的方式获取,需要通过captureStreamInfo来获取 - **修改内容:** 1. rt_add_info_center.py中读取captureStreamInfo数据,生成键为(device, stream_id, batch_id)的captureStreamInfo字典; 2. rt_add_info_center.py通过外部传入rt_stack的device, stream_id, batch_id对应的task,按照timestamp在captureStreamInfo开始和结束时间内关联captureStreamInfo的modelId; 3. capture_stream_info_model.py新增ViewModel获取stream_info.db中CaptureStreamInfo表数据; 4. capture_stream_info_parser.py新增batchId的计算、落盘; 5. 补充UT ---- ## 2. 功能验证 - [x] **功能自验** 1. text类型  2. db类型   3. timeline  - [x] **本地自验用例截图** - [x] **冒烟是否通过** (填入群链接的自验证报告中,如未通过,请说明原因:____________________ ,功能代码请主动申报添加冒烟) 测试冒烟用例结果-全部pass:  ---- ## 3. 分支合并要求 - [ ] **代码合并**(请确保将 master 分支的最新代码同步合并至 poc 分支及 pre-research 分支,同时保证 poc 分支的代码也已正确合并到 pre-research 分支。) ---- ## 3. 代码检视 - **要求:** - 合入代码超过 200 行,需三人以上会议检视。 - 检视密度≥1个/100行。 - 检视缺陷密度未达要求需提供说明。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [x] **是否经过代码检视** - [x] **是否具备 UT 测试用例看护** (如不符合,请说明原因:____________________) - **检视意见数:____ 条** (请填写本次检视的意见总数,用于commit合入前审视) ---- ## 4. 安全自检 ### Python、C++: - [ ] **对外接口新增/删除/变更后,资料要同步新增/删除/变更,新增接口入参校验参考外部输入表格** - [ ] **不允许私有的文件操作,需要使用公共模块的安全函数** - [ ] **任务结束后需要删除临时文件,同时需要考虑任务失败后,临时文件没有残留** - [ ] **数组访问需要校验越界场景,对除法需要做除零校验** - [ ] **需要对递归方法做递归深度校验,正则表达式必须做 ReDoS 校验** - [ ] **需要充分进行接口输入和返回值异常情况的校验** - [ ] **日志打印不要出现拼写或语法错误,不要暴露代码细节和敏感信息** ### C++: - [ ] **指针使用前需要判空** - [ ] **数值计算校验溢出和反转** - [ ] **不可存在内存泄漏(异常场景需要释放内存)** - [ ] **类型转换不能出现数据截断** - [ ] **拷贝字符串时,目的缓冲区至少比源缓冲区大 1** - [ ] **拷贝内存时,目的缓冲区不小于源缓冲区** - [ ] **内存释放后指针赋值为 nullptr** ---- ## 5. 变更知会 - [ ] **资料修改** - [ ] **变更通知(消息知会 + 邮件知会)** ---- See merge request: Ascend/msprof
!25
3 个月前
test_section_calculator.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前
test_trace_view_manager.py
adapt dpu data Co-authored-by: Seanesmhxocism<617225691@qq.com> # message auto-generated for no-merge-commit merge:
!208
merge pyDev into master adapt dpu data Created-by: Seanesmhxocism Commit-by: Seanesmhxocism Merged-by: ascend-robot Description: # PR 合入模板 **注:经过自检不涉及的可标注“不涉及”或直接打勾,特殊情况请文字备注。不符合规范的 PR 不允许合入,请(后备)commit 注意。** ---- ## 1. 修改描述 - **修改原因:** 适配dpu新数据内容解析。 - **修改内容:** 当前新增部分不涉及业务代码的dpu数据解析基础类。 ---- ## 2. 功能验证 - [ ] **功能自验** - [ ] **本地自验用例截图** - [ ] **冒烟是否通过** (填入群链接的自验证报告中,如未通过,请说明原因:____________________ ,功能代码请主动申报添加冒烟) ---- ## 3. 分支合并要求 - [ ] **代码合并**(请确保将 master 分支的最新代码同步合并至 poc 分支及 pre-research 分支,同时保证 poc 分支的代码也已正确合并到 pre-research 分支。) ---- ## 3. 代码检视 - **要求:** - 合入代码超过 200 行,需三人以上会议检视。 - 检视密度≥1个/100行。 - 检视缺陷密度未达要求需提供说明。 - 大于 1000 行代码原则上不允许合入,需进行备案。 - [ ] **是否经过代码检视** - [ ] **是否具备 UT 测试用例看护** (如不符合,请说明原因:____________________) - **检视意见数:____ 条** (请填写本次检视的意见总数,用于commit合入前审视) ---- ## 4. 安全自检 ### Python、C++ - [ ] **对外接口新增/删除/变更后,资料要同步新增/删除/变更,新增接口入参校验参考外部输入表格** - [ ] **不允许私有的文件操作,需要使用公共模块的安全函数** - [ ] **任务结束后需要删除临时文件,同时需要考虑任务失败后,临时文件没有残留** - [ ] **数组访问需要校验越界场景,对除法需要做除零校验** - [ ] **需要对递归方法做递归深度校验,正则表达式必须做 ReDoS 校验** - [ ] **需要充分进行接口输入和返回值异常情况的校验** - [ ] **日志打印不要出现拼写或语法错误,不要暴露代码细节和敏感信息** ### C++ - [ ] **指针使用前需要判空** - [ ] **数值计算校验溢出和反转** - [ ] **不可存在内存泄漏(异常场景需要释放内存)** - [ ] **类型转换不能出现数据截断** - [ ] **拷贝字符串时,目的缓冲区至少比源缓冲区大 1** - [ ] **拷贝内存时,目的缓冲区不小于源缓冲区** - [ ] **内存释放后指针赋值为 nullptr** ---- ## 5. 变更知会 - [ ] **资料修改** - [ ] **变更通知(消息知会 + 邮件知会)** ---- See merge request: Ascend/msprof
!208
1 个月前
test_utils.py
[msprof-master]out分支同步到master分支 Co-authored-by: yu-liang-bin<y1416490440@163.com>
5 个月前