| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
Rs 性能优化 Co-authored-by: yuanjun_li<yuanjun.li@huawei.com> # message auto-generated for no-merge-commit merge: !5602 merge master into master Rs 性能优化 Created-by: yuanjun_li Commit-by: yuanjun_li Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!5602 | 1 个月前 | |
enable aicpu printf by ASCENDC_DUMP Co-authored-by: liuliu876<liuxin429@huawei.com> # message auto-generated for no-merge-commit merge: !5525 merge aicpu_print_switch into master enable aicpu printf by ASCENDC_DUMP Created-by: liuliu876 Commit-by: liuliu876 Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!5525 | 1 个月前 | |
bugfix for 950 basic api loaddata Compatibility interface Co-authored-by: pengcheng1024<pengcheng40@hisilicon.com> # message auto-generated for no-merge-commit merge: !5497 merge doc_update into master bugfix for 950 basic api loaddata Compatibility interface Created-by: pengcheng1024 Commit-by: pengcheng1024 Merged-by: cann-robot Description: ## 描述 该 PR 针对基础 API loaddata 兼容性接口的 bug 进行修复,核心改动位于 impl/basic_api/dav_3510/kernel_operator_mm_impl.h 中的 LoadData2DL12L0BCal 函数。修复主要聚焦于转置(ifTranspose)场景下的数据加载地址计算:修正 load_cbuf_to_cb 调用中源地址、目标地址及步长参数的使用方式,从而保证转置加载时数据搬运位置正确。 主要改动: 新增源 fractal 索引计算:在转置分支中新增 srcFractalIndex,其值为 kStartPosition 加上 i * loadDataParam.srcStride,并使用 static_cast<uint64_t> 防止大偏移量计算溢出。 修正源地址偏移:load_cbuf_to_cb 的源地址由原来的 src 改为 src + srcFractalIndex * VALUE_512 / sizeof(T),使转置场景下源数据按 stride 逐块定位。 修正目标地址计算:目标地址由 dst + i * VALUE_512 / sizeof(T) * dstStride 改为 dst + static_cast<uint64_t>(i) * VALUE_512 / sizeof(T),移除多余的 dstStride 乘法,避免转置时目标位置错位。 调整搬运参数:load_cbuf_to_cb 中的起始位置参数由 i 改为固定 0,并显式传入 srcStride,与新增的源地址偏移逻辑保持一致。 ## 关联的Issue [#1586](https://gitcode.com/cann/asc-devkit/issues/1586) ## 测试 issuse出现的精度失败问题已解决; 对应日志: SUMMARY run_kind=matrix rounds=1 shapes=6 device_modes=3 device_runs=18 golden_runs=6 total_records=24 passed=24 failed=0 errors=0 legacy_failed=0 replacement_failed=0 strict=0 ALL_MODES_PASS legacy, transpose and v2 passed. 对各个参数进行了泛化验证测试,测试通过; | Shape范围 | Shape数量 | repeatTimes范围 | 最大startIndex | 结果 | |---|---:|---:|---:|---| | 16到256,步长16 | 16 | 1到16 | 112 | 16/16 PASS | | 272到512,步长16 | 16 | 17到32 | 224 | 16/16 PASS | | 528到768,步长16 | 16 | 33到48 | 336 | 16/16 PASS | | 784到1024,步长16 | 16 | 49到64 | 448 | 16/16 PASS | | 合计 | 64 | 1到64 | 448 | 64/64 PASS | 已有的测试用例case均已验证通过。 ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!5497 | 1 个月前 | |
优化废弃接口 Co-authored-by: JC1126<jiangchao69@h-partners.com> # message auto-generated for no-merge-commit merge: !5625 merge jc_0903 into master 优化废弃接口 Created-by: JC1126 Commit-by: JC1126 Merged-by: cann-robot Description: ## 描述 优化废弃接口 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [x] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!5625 | 1 个月前 | |
修复bessel函数精度问题 Co-authored-by: shaonaite<shaonaite@huawei.com> # message auto-generated for no-merge-commit merge: !5661 merge bessel into master 修复bessel函数精度问题 Created-by: shaonaite Commit-by: shaonaite Merged-by: cann-robot Description: ## 描述 修复 SIMT Bessel 函数族( j0f/j1f/jnf/y0f/y1f/ynf)的精度问题。原实现在大输入(x ≳ 4e8)和 subnormal/极小 x 区间存在精度缺陷,导致输出完全错误或 ULP 超标。 ### 问题根因 **j0f/j1f/y0f/y1f**:原 >8 段全部压在 __internal_cal_*_x_larger8 一条路径,使用 __internal_trig_red_slowpath_f_fast_mode(uint64 两步 Cody-Waite 相位规约),x > ~4e8 后 a * (2/π) 的 float 舍入把相位低位吃掉,fmaf(q, -π/2_hi, a) 消差后相位全错,sin/cos 多项式喂入大残差 → 输出 1e22~1e28 量级的垃圾值甚至 -inf。>1e13 直接 return 0 放弃精度。特殊值(nan/inf/±0)语义不完整。 **ynf**:__internal_yn_case1(小 x 渐近段)用 powf(2/x, n) 走 exp(n·log(2/x)) 链,subnormal x 下 log 精度有限 + n 次幂放大误差,且 (2/x)^n 易溢出 -inf;__internal_yn_case3(中 x 递推)归一化阈值 >1.0 太晚,小 x 初值巨大时溢出 nan。 ### 修复方案 **j0f/j1f**:三段拆分 <=8 / <=1e13 / >1e13 - <=8:保留原 less8 小 x 多项式 - <=1e13(middle_range):复用 j0/j1 共享的 alpha/pre_coeff,三角规约换用 __internal_bessel_middle_trig_red_slowpath_f_fast_mode(int64 两步 + 负数象限修正) - >1e13(huge_range):Payne-Hanek 精确相位规约 + j0/j1 各自的高阶渐近多项式 - 特殊值:nan → x(标准传播)、±inf → ±0(j1f 保留符号零)、x==0 → 0(j0f)/x==0 → x(j1f) **y0f/y1f**:三段拆分 <=8 / <=1e13 / >1e13 - 小 x 段(<0.5/<2.197/<8 等)保留原 part 多项式 - middle/huge 段复用 j0/j1 的共享 alpha/pre_coeff 与三角规约,huge 段用 y0/y1 各自的 CUDA 精确系数(与 j0/j1 **不同**,因 J/Y 的 μ 和振幅展开不同) - 特殊值:nan → x、x<0 → NaN(domain)、x==0 → -inf(极点)、+inf → 0 **ynf**: - __internal_yn_case1(原 powf 渐近)改为前向递推 Y(k)=(2k/x)·Y(k-1)-Y(k-2) + Newton 精化 2/x + 激进归一化(幅度 >1e30 时缩放)+ inf 保护,覆盖小 x 和中 x 段 - __internal_yn_case3 直接调 case1(复用鲁棒性) - ynf 顶层简化为两段:x > n*10 走 __internal_yn_asymptotic(大 x 渐近),否则走 __internal_yn_recurrence(前向递推) - jnf 不改动,初值 j0f/j1f 自动走新实现 ### 代码结构 - 原版实现用 ASCENDC_USE_LEGACY_PRECISION 宏保留(legacy 段),新实现放 #else 段,便于回退对照 - 共用 helper 改名:__internal_j0j1_middle_* → __internal_bessel_middle_*(j0/j1/y0/y1 四函数共用)、__internal_j0_y0_middle_*/__internal_j1_y1_middle_*(成对共用) ## 关联的Issue [#1637](https://gitcode.com/cann/asc-devkit/issues/1637) ### 用例覆盖 | 用例 | 数据量 | 精度阈值 | |---|---|---| | j0f/j1f lt8 | 16384 | 9 ULP | | j0f/j1f ge8 | 16384 | 2.2e-6 | | jnf | 16384 | 2.2e-6 | | y0f/y1f lt8 | 16384 | 9 ULP | | y0f/y1f ge8 | 16384 | 2.2e-6 | | ynf normal | 8192 | ceil(2+2.5n) ULP / 2.2e-6 atol | | ynf huge_x | 8192 | ceil(2+2.5n) ULP / 2.2e-6 atol | 对于ynf:|x|<n 走 ULP ceil(2+2.5n),否则走 atol 2.2e-6。n=0/n=1 归 y0f/y1f 用例覆盖,ynf 用例 n∈[2,128]。 ### 结果 11 个贝塞尔用例全部通过(Ascend NPU, CANN 9.2.0, --npu-arch=dav-3510, fast_math=false): - j0f lt8/ge8 ✓ - j1f lt8/ge8 ✓ - jnf ✓ - y0f lt8/ge8 ✓ - y1f lt8/ge8 ✓ - ynf normal / huge_x ✓ ## 文档更新 无 ## 类型标签 - [x] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!5661 | 1 个月前 | |
TensorAPI中Call函数兼容 Co-authored-by: ca1kw<caikaiwei@huawei.com> # message auto-generated for no-merge-commit merge: !5630 merge master into master TensorAPI中Call函数兼容 Created-by: ca1kw Commit-by: ca1kw Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 兼容大驼峰CopyAtom.Call()调用方式。 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!5630 | 1 个月前 | |
修复 SIMT 编程场景printf API 打印 half、bfloat16类型编译报错 Co-authored-by: louyuxuan<louyuxuan@huawei.com> # message auto-generated for no-merge-commit merge: !5669 merge master into master 修复 SIMT 编程场景printf API 打印 half、bfloat16类型编译报错 Created-by: louyuxuan Commit-by: louyuxuan Merged-by: cann-robot Description: ## 描述 <!--在这里详细描述你的改动,包括改动的原因和所采取的方法。--> 修复 SIMT 编程场景printf API 打印 half、bfloat16类型编译报错 SIMT编程场景中使用 half、bfloat16_t 类型的API需单独 include 编译器相应的头文件 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> 二级冒烟、手动验证  ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [x] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [ ] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!5669 | 1 个月前 | |
adapt cmake 4.2.3 Co-authored-by: pengcheng1024<pengcheng40@hisilicon.com> # message auto-generated for no-merge-commit merge: !3120 merge master into master adapt cmake 4.2.3 Created-by: pengcheng1024 Commit-by: pengcheng1024 Merged-by: cann-robot Description: ## 描述 适配cmake4.2.3 确保tiling_directory.cmake路径配置正确 ## 关联的Issue <!-- 如果这个PR是为了解决特定的Issue,请在这里提供Issue链接。例如:关联Issue #xxx--> ## 测试 <!--描述进行了哪些测试来验证你的改动。包括但不限于二级冒烟、算子泛化等。--> ## 文档更新 <!--如果这个PR包含文档的更新,请在这里指出。例如:更新了README.md文件。--> ## 类型标签 <!-- [x] 表示选中 --> - [ ] 🐛 fix: Bug 修复 - [ ] ✨ feat: 新功能 - [ ] ⚡ perf: 性能优化 - [ ] ♻️ refactor: 代码重构 - [ ] 🧪 test: 新增或修改测试 - [ ] 📝 docs: 文档更新 - [x] 🔧 ci: CI/CD 配置修改 - [ ] ↩️ revert: 回退 - [ ] 🧹 chore: 其他,请具体描述 See merge request: cann/asc-devkit!3120 | 4 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 4 个月前 |