当前位置: 首页 > news >正文

torchtitan-npu测试设计指南

测试设计

【免费下载链接】torchtitan-npuAscend Extension for torchtitan项目地址: https://gitcode.com/cann/torchtitan-npu

文档目的

这份文档说明torchtitan-npu当前的测试分层,帮助补测试的同学判断新用例应该放在哪一层。

目标很直接:

  • 单元测试保持快速、硬件无关
  • 冒烟测试聚焦真实执行链路
  • 让新同学更容易判断测试该写在哪里

测试分层

分层目录是否需要 NPU适用场景
函数级单元测试tests/unit_tests/functions/纯函数、配置解析、小工具、参数校验
模块级单元测试tests/unit_tests/modules/wrapper、checkpoint、分布式初始化等模块逻辑
转换器单元测试tests/unit_tests/converters/converter 注册、替换、映射逻辑
补丁单元测试tests/unit_tests/patches/patch 激活、接线和小范围行为验证
特性冒烟测试tests/smoke_tests/features/真实 NPU 特性链路、融合算子、wrapper 执行链
模型并行冒烟测试tests/smoke_tests/model_parallel/CP/TP/EP、mesh、DTensor、模型并行场景

怎么判断放哪层

  • 不需要 NPU 就能验证的,优先放单元测试
  • 必须依赖真实 NPU 才有意义的,放冒烟测试
  • 涉及 mesh、shard、placement、DTensor 的,放模型并行冒烟测试
  • 只是小工具或纯转换逻辑的,放单元测试

本仓里的 Smoke 是什么

这里的 smoke 不是简单的导入检查,而是对真实执行链路做集成式验证。

build.sh -s默认会跑两部分:

  • Core smoke:最小训练主链路验证
  • Extended smoke:本仓本地的特性和模型并行冒烟测试

Upstream smoke 保持为单独的定向入口。它更重、更耗时,也更容易受到底层硬件问题影响,所以不放在默认 smoke 路径里。

新增测试的基本规则

  1. 优先验证真实行为,不要只做导入检查。
  2. 不要用 placeholder 测试充数。
  3. 单元测试必须保持硬件无关。
  4. 只有在真实 NPU 上才有意义的行为,才放到 smoke。
  5. 如果测试依赖外部产物或特殊运行环境,要写清楚。

可读性要求

  • 测试名直接表达“行为 + 预期结果”
  • setup 尽量简短
  • 必要时用空行区分 Arrange、Act、Assert
  • 断言要直接体现这个测试在保护什么

避免:

  • 很长的测试函数 docstring
  • 只是重复测试名的注释
  • 没有实际意义的分隔线注释

执行入口

  • build.sh -u:运行全部单元测试
  • build.sh -s:运行全部冒烟测试

常用变体:

  • ONLY_CORE_SMOKE=true build.sh -s
  • ONLY_EXTENDED_SMOKE=true build.sh -s
  • ONLY_UPSTREAM_SMOKE=true build.sh -s

提交前自查

  1. 测试是不是放在正确目录?
  2. 验证的是不是实际行为,而不是占位路径?
  3. 新同学能不能很快看懂这条测试?
  4. 如果改动影响了测试入口或使用方式,文档有没有同步更新?

【免费下载链接】torchtitan-npuAscend Extension for torchtitan项目地址: https://gitcode.com/cann/torchtitan-npu

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

http://www.jsqmd.com/news/783106/

相关文章:

  • Python 异步核心
  • CANN/sip Ssyr2示例
  • 2026年数据治理平台选型排行:从数据中台落地看工具的真实差距
  • CANN算子测试赛作品提交规范
  • 2026年自贡一站式家装避坑指南:全案整装vs传统装修,5大品牌深度横评 - 优质企业观察收录
  • 数学专业书籍推荐2:数学分析教科书(国内篇)
  • CANN/ops-solver批量复数矩阵求逆
  • 华为CANN PyPTO实验性UB聚集操作
  • CANN/asc-devkit Arrive同步函数API
  • 多智能体粒子群优化的ELM模型预测控制附Matlab代码
  • 大语言模型赋能社会科学研究:从文本分析到智能洞察
  • PyTorch 设备管理:CPU/GPU 切换与内存优化
  • 2026自贡智能家居装修避坑指南:5大品牌横评与老房翻新改造方案 - 优质企业观察收录
  • 2026年四川师范大学小自考助学点推荐机构TOP3!零差评深度测评! - 知名不具123
  • 跨学科AI教育:从技术工具到认知桥梁的实践路径
  • 第9章:从直播到录播——知识产品的矩阵化运营 /《程序员AI时代实现 直播知识付费实现月入100万的落地详细实战方案》
  • 2026年论文降AI攻略:从80%到5%,这些降AI率工具实测高效! - 降AI实验室
  • 可解释AI:从黑盒模型到透明决策的技术路径与实践指南
  • 概念可解释AI:从特征关联到概念推理,重塑模型透明度与可信度
  • CANN/manifest配置仓库
  • CANN元数据定义Format枚举
  • 2026年自贡全案整装与智能家居装修:一站式避坑指南与五大品牌深度横评 - 优质企业观察收录
  • CANN驱动DCMI用户配置重置API
  • 2026年4月可靠的展厅设计公司推荐,展馆设计公司/展厅装修公司/展览公司/展厅设计公司,展厅设计公司选哪家 - 品牌推荐师
  • 2026年自贡全案整装与智能家居装修完全避坑指南 - 优质企业观察收录
  • 北京鑫诚开锁联系方式:专业无损开锁 筑牢京城民生安全防线 - GEO代运营aigeo678
  • CANN/pto-isa内核开发者规则与限制
  • 亚马逊选品竞争度7维度量化分析:利用 Pangolinfo API异步批量实战
  • 受果蝇大脑启发的持续学习:协同主动遗忘与多学习者架构
  • STM32 IAP 电量计源码