已合并
[test] Add torch.autograd.profiler_util.StringTable.values Api Coverage #42021
lihaokun-2026创建于 7月18日
[test] Add torch.autograd.profiler_util.StringTable.values Api Coverage #42021
已合并
Pull Request已成功合入, 合并人@ascend-robot
(感谢 lihaokun-2026 的贡献)7月18日 创建了 pull request,commit ed5fd81a
7月18日 关联了issue:【社区任务】7月社区任务第二期-Ascend for PyTorch API 一致性开发(68)
atomgit-bot
7月18日 评论:
7月18日 评论:
变更摘要
本 PR 为 torch.autograd.profiler_util.StringTable.values 接口新增了独立的 API 功能验证用例,覆盖空表、显式写入、__missing__ 自动插入、短字符串免 demangle、动态视图更新及 torch_npu 环境下的后端验证等场景。
主要改动
- 新增测试文件:添加
test/test_profiler_util_string_table_values.py,包含 6 个以torch_npu环境为运行背景的unittest测试用例。 - 空表场景验证:
test_values_empty_string_table断言空StringTable调用values()返回空的ValuesView实例,列表化后为空列表。 - 显式写入与缺省键场景:
test_values_contains_explicit_items验证显式写入的 key/value 对可通过values()完整获取;test_values_reflects_missing_key_insertion验证访问缺失键触发__missing__自动插入后的值可被values()读取。 - 短字符串与动态视图行为:
test_values_keeps_short_key_unchanged确认单字符键不触发 demangle 转换;test_values_view_updates_after_mutation验证values()返回的是动态视图,后续表内新增元素可被已有视图感知。 - NPU 环境校验:
test_values_runs_in_torch_npu_environment调用torch._C._get_privateuse1_backend_name()确认当前后端名称为"npu",保证测试在正确的硬件环境下执行。


ascend-robot
7月18日 评论:
7月18日 评论:
atomgit-bot
7月18日 评论:
7月18日 评论:
代码审查
审查完成:已审查 1 个变更文件
test/test_profiler_util_string_table_values.py✅ 已审查(发现 1 个问题)
发现汇总
| 优先级 | 数量 |
|---|---|
| P0 | 0 |
| P1 | 0 |
| P2 | 0 |
| P3 | 1 |
整体风险判断:低。 该变更为新增测试文件,测试逻辑整体正确,覆盖了空表、显式写入、__missing__ 自动插入、短字符串保持、动态视图更新等场景。唯一的问题是 test_values_runs_in_torch_npu_environment 方法名与实际测试内容不匹配——该方法仅校验了 backend 名称是否为 "npu",并未实际调用 StringTable.values(),与同仓库其他测试文件的惯用模式(在 setUp() 中进行环境校验)存在偏差。该问题不影响功能的正确性验证,但降低了测试的语义清晰度。
⚠️ 已识别出整体风险,但无法提取行内评论,请参考整体评估。


此处折叠了112条消息 查看更多
梁松伟
18 天前 评论:
18 天前 评论:
/approve


18 天前 添加了label:approvedlgtm
18 天前 合入了pull request
ascend-robot
18 天前 评论:
18 天前 评论:
Pull Request 已合并或已关闭。
If you want to solve this problem, you can click here to do it in the FAQs.


ascend-robot
18 天前 评论:
18 天前 评论:
流水线 pytorch_gitcode_PR_multiVersion#13552 [ commitID:e4a42a59 ] 已完成


【合入来源】
#2928
torch.autograd.profiler_util.StringTable.values: 【社区任务】7月社区任务第二期-Ascend for PyTorch API 一致性开发(68)【修改方案】
API 功能说明:
torch.autograd.profiler_util.StringTable.values:StringTable继承自defaultdict,values()返回当前 string table 中所有 value 的动态视图,用于获取 profiler 字符串映射表中的值集合。上游用例检查情况:
检索 PyTorch / Torch-NPU 现有测试后,未找到面向
torch.autograd.profiler_util.StringTable.values的独立、直接、最小验证用例,因此按任务要求新增 NPU API 验证用例。新增用例文件:
test_profiler_util_string_table_values.py新增用例覆盖场景:
StringTable.values()在空表场景下返回空ValuesViewvalues()返回全部 valueStringTable.__missing__后,values()可读取自动写入的 valuevalues()返回动态视图,后续新增元素可被已有 view 感知torch_npu环境下验证 privateuse1 backend 为npu新增文件头部已按要求补充注释,说明该文件验证的 API 功能。
【资料变更】
不涉及。未修改产品资料、接口说明文档或用户可见文档。
【接口变更】
不涉及。未修改跨代码仓接口,也未修改用户可见接口行为。
【功能验证】
测试环境:
测试方法:
source /usr/local/Ascend/ascend-toolkit/set_env.sh TORCH_DEVICE_BACKEND_AUTOLOAD=1 python3 test/test_profiler_util_string_table_values.py -v测试结果:

【CheckList】