文件最后提交记录最后更新时间
compressor算子修改参数数据类型 Co-authored-by: 莫允扬<moyunyang@huawei.com> Co-authored-by: guigui_jzh<jinzhonghao@huawei.com> # message auto-generated for no-merge-commit merge: !5980 merge cpfp32 into master compressor算子修改参数数据类型 Created-by: myy268 Commit-by: 莫允扬;guigui_jzh Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> compressor算子,normweight、ropesin、ropecos参数数据类型从bf16/fp16更改为float32。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [x] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!59805 天前
新增稀疏Attention等高效融合算子支持DeepSeekV4 Co-authored-by: wangzhe123456789<wangzhe92@huawei.com> # message auto-generated for no-merge-commit merge: !4596 merge publish_dsv4 into master 新增稀疏Attention等高效融合算子支持DeepSeekV4 Created-by: songjionghui Commit-by: wangzhe123456789 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 针对DeepSeek V4新网络结构,在experimental目录下新增稀疏Attention等高效融合算子 新增算子包括: SparseAttnSharedkv KvQuantSparseAttnSharedkv Compressor KvQuantSparseAttnSharedkvMetadata QuantLightningIndexerMetadata SparseAttnSharedkvMetadata 适配算子包括: QuantLightningIndexer ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联Issue [#2059](https://gitcode.com/cann/ops-transformer/issues/2059) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!45961 个月前
compressor算子修改参数数据类型 Co-authored-by: 莫允扬<moyunyang@huawei.com> Co-authored-by: guigui_jzh<jinzhonghao@huawei.com> # message auto-generated for no-merge-commit merge: !5980 merge cpfp32 into master compressor算子修改参数数据类型 Created-by: myy268 Commit-by: 莫允扬;guigui_jzh Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> compressor算子,normweight、ropesin、ropecos参数数据类型从bf16/fp16更改为float32。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [x] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!59805 天前
新增稀疏Attention等高效融合算子支持DeepSeekV4 Co-authored-by: wangzhe123456789<wangzhe92@huawei.com> # message auto-generated for no-merge-commit merge: !4596 merge publish_dsv4 into master 新增稀疏Attention等高效融合算子支持DeepSeekV4 Created-by: songjionghui Commit-by: wangzhe123456789 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 针对DeepSeek V4新网络结构,在experimental目录下新增稀疏Attention等高效融合算子 新增算子包括: SparseAttnSharedkv KvQuantSparseAttnSharedkv Compressor KvQuantSparseAttnSharedkvMetadata QuantLightningIndexerMetadata SparseAttnSharedkvMetadata 适配算子包括: QuantLightningIndexer ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联Issue [#2059](https://gitcode.com/cann/ops-transformer/issues/2059) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!45961 个月前
新增稀疏Attention等高效融合算子支持DeepSeekV4 Co-authored-by: wangzhe123456789<wangzhe92@huawei.com> # message auto-generated for no-merge-commit merge: !4596 merge publish_dsv4 into master 新增稀疏Attention等高效融合算子支持DeepSeekV4 Created-by: songjionghui Commit-by: wangzhe123456789 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 针对DeepSeek V4新网络结构,在experimental目录下新增稀疏Attention等高效融合算子 新增算子包括: SparseAttnSharedkv KvQuantSparseAttnSharedkv Compressor KvQuantSparseAttnSharedkvMetadata QuantLightningIndexerMetadata SparseAttnSharedkvMetadata 适配算子包括: QuantLightningIndexer ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联Issue [#2059](https://gitcode.com/cann/ops-transformer/issues/2059) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!45961 个月前
compressor修改语法错误 Co-authored-by: Le_666<yuanle2@huawei.com> # message auto-generated for no-merge-commit merge: !5536 merge master into master compressor修改语法错误 Created-by: Le_666 Commit-by: Le_666 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 问题单,pytest脚本中存在语法错误,修复该问题 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 本地执行 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 Bug 修复 - [ ] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!553614 天前
新增稀疏Attention等高效融合算子支持DeepSeekV4 Co-authored-by: wangzhe123456789<wangzhe92@huawei.com> # message auto-generated for no-merge-commit merge: !4596 merge publish_dsv4 into master 新增稀疏Attention等高效融合算子支持DeepSeekV4 Created-by: songjionghui Commit-by: wangzhe123456789 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 针对DeepSeek V4新网络结构,在experimental目录下新增稀疏Attention等高效融合算子 新增算子包括: SparseAttnSharedkv KvQuantSparseAttnSharedkv Compressor KvQuantSparseAttnSharedkvMetadata QuantLightningIndexerMetadata SparseAttnSharedkvMetadata 适配算子包括: QuantLightningIndexer ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联Issue [#2059](https://gitcode.com/cann/ops-transformer/issues/2059) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!45961 个月前
新增稀疏Attention等高效融合算子支持DeepSeekV4 Co-authored-by: wangzhe123456789<wangzhe92@huawei.com> # message auto-generated for no-merge-commit merge: !4596 merge publish_dsv4 into master 新增稀疏Attention等高效融合算子支持DeepSeekV4 Created-by: songjionghui Commit-by: wangzhe123456789 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 针对DeepSeek V4新网络结构,在experimental目录下新增稀疏Attention等高效融合算子 新增算子包括: SparseAttnSharedkv KvQuantSparseAttnSharedkv Compressor KvQuantSparseAttnSharedkvMetadata QuantLightningIndexerMetadata SparseAttnSharedkvMetadata 适配算子包括: QuantLightningIndexer ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联Issue [#2059](https://gitcode.com/cann/ops-transformer/issues/2059) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!45961 个月前
新增稀疏Attention等高效融合算子支持DeepSeekV4 Co-authored-by: wangzhe123456789<wangzhe92@huawei.com> # message auto-generated for no-merge-commit merge: !4596 merge publish_dsv4 into master 新增稀疏Attention等高效融合算子支持DeepSeekV4 Created-by: songjionghui Commit-by: wangzhe123456789 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 针对DeepSeek V4新网络结构,在experimental目录下新增稀疏Attention等高效融合算子 新增算子包括: SparseAttnSharedkv KvQuantSparseAttnSharedkv Compressor KvQuantSparseAttnSharedkvMetadata QuantLightningIndexerMetadata SparseAttnSharedkvMetadata 适配算子包括: QuantLightningIndexer ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #000--> <!-- 如果这个PR是为了解决特定的问题单,请在这里描述问题单单号。--> 关联Issue [#2059](https://gitcode.com/cann/ops-transformer/issues/2059) ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 Bug 修复 - [x] ✨ 新特性 - [ ] ⚡ 性能优化 - [ ] ♻️ 重构 - [ ] 🧪 测试 - [ ] 📦 构建/CI - [ ] 🔧 配置变更 - [ ] 📝 文档更新 - [ ] ⬆️ 依赖升级 - [ ] 🔒 安全修复 - [ ] 🧹 代码清理 - [ ] ❓ 其他,请描述: See merge request: cann/ops-transformer!45961 个月前
README.md

Compressor算子测试框架

功能说明

基于pytest测试框架,实现Compressor算子的功能验证:

  • CPU侧:复现算子功能用以生成golden数据
  • NPU侧:通过torch_npu进行算子直调获取实际数据
  • 精度对比:进行CPU与NPU结果的精度对比验证算子功能

当前实现范围

参数限制

  • 支持D为128/512。
  • 支持H为1K~10K,512对齐。
  • 支持cmp_ratio为4/128。支持如下三种情况:
    • C4A: D=512, coff=2, cmp_ratio=4;
    • C4Li: D=128, coff=2, cmp_ratio=4;
    • C128A: D=512, coff=1, cmp_ratio=128。
  • 支持rotary_mode为2,Rope计算模式为interleave。

环境配置

前置要求

1、 确认torch_npu为最新版本
2、 参考Attention融合算子Experimental使用说明激活CANN包和自定义算子包

custom包调用

支持custom包调用

文件结构

pytest文件结构说明

  • test_run.sh # 执行脚本
  • compressor_golden.py # cpu侧算子golden实现以及cpu golden与npu结果精度对比
  • pytest.ini # 创建ci单算子和graph图模式的测试标记

单用例测试:

  • test_compressor_single.py # 测试单用例运行主程序
  • compressor_operator_single.py # CPU侧算子逻辑实现获取golden与npu算子直调
  • test_compressor_paramset.py # 单用例入参配置

批量用例测试:

  • test_compressor_batch.py # 用例批量测试主程序并生成excel文件保存结果
  • ./batch/compressor_pt_loadprocess.py # 读取pt文件并调用算子获取npu输出
  • ./batch/compressor_pt_save.py # 读取excel表格批量生成用例pt文件

使用方法

在pytest文件夹路径下执行:

运行测试用例

单用例调测

1、手动配置test_compressor_paramset.py的参数

2、执行指令:

bash test_run.sh single

用例的批量生成与测试

1、excel路径下存放用例excel表格

2、test_run.sh中设置读取的用例excel表格路径和pt文件存放路径

3、执行指令:

bash test_run.sh batch