| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
feat: 全部复数算子接口类型安全改造,彻底回归纯C Co-authored-by: root<1302896824@qq.com> # message auto-generated for no-merge-commit merge: !264 merge feat-all-complex-ops-typed-api into master feat: 全部复数算子接口类型安全改造,彻底回归纯C Created-by: zhanghua145 Commit-by: root Merged-by: cann-robot Description: ## 描述 将所有复数算子接口的 std::complex<float> 替换为 aclblasComplex,uint8_t* 替换为 aclblasComplex*,删除 #include <complex>,使头文件彻底回归纯 C。 ### 改动内容 **1. 类型定义层(cann_ops_blas_common.h)** - 新增 aclblasDoubleComplex(双精度复数 struct) **2. 运算符重载(blas/common/helper/complex_ops.h)** - 新增 C++ 自由函数运算符重载:operator+/-/*//、==、!=、aclblasAbs - 对 aclblasComplex 和 aclblasDoubleComplex 均提供 - C 调用方不可见(#ifdef __cplusplus 隔离) **3. Host API 签名(cann_ops_blas.h)** - 删除 #include <complex> - 所有复数算子标量参数:std::complex<float> → aclblasComplex - 所有复数算子向量/矩阵指针:uint8_t* → aclblasComplex* **4. Host 实现 + 测试同步迁移** 涉及算子(共 10 个): - Caxpy / CgemvBatched / Cgerc / Cscal / Cgemv(标量+向量全改) - Ccopy / Scnrm2 / Csscal / Cswap / ComplexMatDot(仅向量指针) Kernel 代码不动,Host 实现内部通过 reinterpret_cast<uint8_t*> 桥接。 ### 关联 Issue Close #262 ### 已知遗留问题 #290 aclblasCgemvBatched 运行时 segfault 为主分支遗留问题,在原始代码上同样复现,与本次改造无关。 ## 关联的Issue - [#262](https://gitcode.com/cann/ops-blas/issues/262) 复数算子接口类型安全问题 - [#290](https://gitcode.com/cann/ops-blas/issues/290) aclblasCgemvBatched segfault(主分支遗留) ## 测试 - bash build.sh --soc=ascend910b 编译通过 - bash build.sh --soc=ascend910b --ops=caxpy,cscal,cswap,scopy,snrm2,sscal,cgemv,cgerc,cgemv_batched --run 编译并运行 - caxpy/cscal/cswap/ccopy/scnrm2/sscal/cgemv/cgerc 测试通过 - cgemv_batched segfault 为主分支遗留问题(#290) 当前分支: 主分支: ## 文档更新 - blas/axpy/README.md:aclblasCaxpy 函数原型、参数说明、调用示例已同步更新 ## 类型标签 - [x] 新特性 See merge request: cann/ops-blas!264 | 23 小时前 | |
refactor(blas): flatten directory structure and fix README files Co-authored-by: wuyi_huawei<wuyi36@hisilicon.com> # message auto-generated for no-merge-commit merge: !180 merge docs/issue-167-flatten-blas-structure into master refactor(blas): flatten directory structure and fix README files Created-by: zhanghua145 Commit-by: wuyi_huawei Merged-by: cann-robot Description: ## 描述 统一 blas/ 下所有算子的目录结构规范:算子主目录放置 README.md,arch22/arch35 子目录仅存放源码文件。 具体变更: 1. **移除冗余的算子子目录层级**:将 blas/<op>/<variant>/ 扁平化为 blas/<op>/,涉及 35 个算子目录 2. **融合多架构 README**:将 dot、gemv、gemv_batched、scal、swap、trmv 的 s/c 变体 README 合并为统一文档 3. **清理 arch 子目录 README**:删除 dot/arch35、rotm/arch22、sbmv/arch35、spmv/arch22、spmv/arch35、symv/arch35 下的 README.md,将有效内容合并至主目录 README 4. **更新目录结构引用**:修正 29 个算子 README 中的目录结构描述,对齐扁平化后的实际路径 ## 关联的Issue [#167](https://gitcode.com/cann/ops-blas/issues/167) ## 测试 目录结构重构,不涉及功能变更,原有测试用例不受影响。  ## 文档更新 - 融合 6 个算子的多架构 README(dot/gemv/gemv_batched/scal/swap/trmv) - 删除 6 个 arch 子目录 README 并合并内容(dot/rotm/sbmv/spmv/symv) - 更新 29 个算子 README 的目录结构引用 ## 类型标签 - [ ] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [x] 文档更新 - [x] 其他,请描述:目录结构重构 See merge request: cann/ops-blas!180 | 22 天前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 23 小时前 | ||
| 22 天前 |