文件最后提交记录最后更新时间
fix docs bug Co-authored-by: hulida<hulida@huawei.com> Co-authored-by: fu-hao-huawei<fuhao16@huawei.com> Co-authored-by: chenweiheng<chenweiheng1@hisilicon.com> Co-authored-by: SunYaping<sunyaping4@huawei.com> Co-authored-by: Achilles_d<duanchengyuan@huawei.com> Co-authored-by: zhukkk<zhuke11@huawei.com> Co-authored-by: tangjie66<tangjie66@huawei.com> # message auto-generated for no-merge-commit merge: !2811 merge ass into master fix docs bug Created-by: Sunyp01 Commit-by: Sunyp01;Achilles_d;fu-hao-huawei;chenweiheng;hulida;tangjie66;zhukkk;SunYaping Merged-by: ascend-robot Description: fix doc bug See merge request: Ascend/torchair!28112 个月前
update smoke Co-authored-by: guanlongfeng<guanlongfeng1@huawei.com> # message auto-generated for no-merge-commit merge: !2924 merge update_smk into master update smoke Created-by: glf2016 Commit-by: guanlongfeng Merged-by: ascend-robot Description: update smoke See merge request: Ascend/torchair!29241 个月前
update smoke Co-authored-by: guanlongfeng<guanlongfeng1@huawei.com> # message auto-generated for no-merge-commit merge: !3002 merge smoke_update into master update smoke Created-by: glf2016 Commit-by: guanlongfeng Merged-by: ascend-robot Description: update smoke See merge request: Ascend/torchair!30021 个月前
适配triton场景下传入参数的valuepack处理 Co-authored-by: panweicheng<panweicheng@huawei.com> # message auto-generated for no-merge-commit merge: !2575 merge master into master 适配triton场景下传入参数的valuepack处理 Created-by: pwc10490 Commit-by: panweicheng Merged-by: ascend-robot Description: 适配triton场景下传入参数的valuepack处理 See merge request: Ascend/torchair!25753 个月前
pre-commit by rule=trailing-whitespace Co-authored-by: guanlongfeng<guanlongfeng1@huawei.com> # message auto-generated for no-merge-commit merge: !2931 merge clean_code into master pre-commit by rule=trailing-whitespace Created-by: glf2016 Commit-by: guanlongfeng Merged-by: ascend-robot Description: pre-commit-clean-code-rule=trailing-whitespace See merge request: Ascend/torchair!29311 个月前
_optimize_and_convert处理动态符号 Co-authored-by: panweicheng<panweicheng@huawei.com> # message auto-generated for no-merge-commit merge: !3121 merge master into master _optimize_and_convert处理动态符号 Created-by: pwc10490 Commit-by: panweicheng Merged-by: ascend-robot Description: 动态场景下torch.compile和ep的fx图有差异,从ep中提取符号构建fakemode+placeholder,以适配原converter流程,当前_optimize_and_convert流程: 1. decomposition(npu_decomps + custom_decompositions) 2. optimize_fx 3. 从 range_constraints 创建活 ShapeEnv + FakeTensorMode 4. 提取 SymInt,重建 symbolic 输入,构造与 torch.compile 一致的输入 5. GE Graph 转换(record_ascend_ir=True),使用临时图 + 符号化输入 + new FakeTensorMode [fix] preserve symbolic meta when detect_fake_mode returns None [fix] use symbolic inputs + FakeTensorMode activation for epair dynamic shape conversion feat: enable epair dynamic shape conversion with SymInt placeholder reconstruction fix: backwrite torch_fn from temp_gm to optimized_ep for writer lookup fix: use node.hint instead of int(SymInt) to avoid ShapeEnv specialization ... See merge request: Ascend/torchair!31219 小时前
pre-commit by rule=trailing-whitespace Co-authored-by: guanlongfeng<guanlongfeng1@huawei.com> # message auto-generated for no-merge-commit merge: !2931 merge clean_code into master pre-commit by rule=trailing-whitespace Created-by: glf2016 Commit-by: guanlongfeng Merged-by: ascend-robot Description: pre-commit-clean-code-rule=trailing-whitespace See merge request: Ascend/torchair!29311 个月前
unify compiler processing for npu_backend and cachebackend Co-authored-by: wangjiacheng<wangjiacheng13@huawei.com> # message auto-generated for no-merge-commit merge: !2529 merge refactor_cache_compiler into master unify compiler processing for npu_backend and cachebackend Created-by: wang-pierre-jiacheng Commit-by: wangjiacheng Merged-by: ascend-robot Description: unify compiler processing for npu_backend and cachebackend See merge request: Ascend/torchair!25294 个月前
!1006 rename ge_concrete_graph as _ge_concrete_graph && hcom patch Merge pull request !1006 from yangxiaorun/move_ge_concrete_graph 1 年前
broadcast support groupsrc Co-authored-by: yuanjun_li<yuanjun.li@huawei.com> # message auto-generated for no-merge-commit merge: !3029 merge master into master broadcast support groupsrc Created-by: yuanjun_li Commit-by: yuanjun_li Merged-by: ascend-robot Description: broadcast support groupsrc See merge request: Ascend/torchair!302923 天前
pre-commit by rule=trailing-whitespace Co-authored-by: guanlongfeng<guanlongfeng1@huawei.com> # message auto-generated for no-merge-commit merge: !2931 merge clean_code into master pre-commit by rule=trailing-whitespace Created-by: glf2016 Commit-by: guanlongfeng Merged-by: ascend-robot Description: pre-commit-clean-code-rule=trailing-whitespace See merge request: Ascend/torchair!29311 个月前
[feat] 静态编译支持黑名单 Co-authored-by: fu-hao-huawei<fuhao16@huawei.com> # message auto-generated for no-merge-commit merge: !2865 merge master into master [feat] 静态编译支持黑名单 Created-by: fu-hao-huawei Commit-by: fu-hao-huawei Merged-by: ascend-robot Description: [feat] 静态编译支持黑名单 See merge request: Ascend/torchair!28651 个月前
README.md

Smoke test介绍

本章节提供torchair冒烟测试的介绍与demo,旨在帮助开发人员自测converter的功能及精度问题。


1. converter_st.py

在converter实现的函数上方,通过定义converter支持的场景,可以自动生成对应的测试用例。

图模式用例torch.compie参数设置:dynamic=None(静态图场景), fullgraph=False。

以torch.ops.aten.add.Tensor为例,以下代码生成了7个对应用例,支持不同场景的测试。

    @declare_supported([
        Support(F32(2, 2), F32(2, 2)), # 支持基础的torch.add()
        Support(F32(2, 2), F32(2, 1)), # 支持f32类型间的广播
        Support(F32(2, 2), F16(2, 1)), # 支持f32与f16类型的广播
        Support(F32(2, 2), F16(2, 2), alpha=2), # 支持带alpha入参场景
        Support(F32(2, 2), 2.0), # 支持与浮点常量的加法
        Support(F32(2, 2), 2), # 支持f32类型与整型常量的加法
        Support(F32(2, 2), 2, alpha=2.0), # 支持带alpha入参场景
    ])

执行测试用例的方式有2种:

1. 批量运行所有注册了declare_supported的算子测试用例

python3 smoke/converter_test.py

使用约束: npu_define的集合通信算子不会主动导入converter,因此无法自动生成用例,在此方式下无法生效,可通过本章节的hcom_st.py测试。

2. 测试满足某个前缀的算子用例

python3 smoke/converter_test.py aten.add.Tensor

使用约束:当传参指定了具体算子时,会尝试加载自定义算子converter,如果未实现对应的@declare_supported场景注册则会报错RuntimeError:Cannot find testcase match prefix。 npu_define的集合通信算子限制仍然存在,无法直接测试对应convereter,可通过本章节的hcom_st.py测试。

2. hcom_st.py

本脚本测试集合通信算子在图模式下是否能正确入图,可通过两种方式验证:

1. 验证所有的集合通信算子patch到自定义算子如torch.ops.npu_define.all_gather.default之后,能正确入图且精度与eager mode一致

python3 smoke/hcom_st.py

此方式会执行所有的用例,耗时较长。当测试某个算子时开销较大,此时推荐使用第2种方式。

2. 验证某个通信算子,如torch.distributed.all_gather patch到自定义算子torch.ops.npu_define.all_gather.default之后入图功能OK且精度正常

cd smoke
python3 -m unittest -v hcom_st.HcomTest.test_allgather