| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
Fix: Handle 类型由 void* 改为前向声明结构体指针风格,对齐 cuBLAS/ROCm Co-authored-by: Zitao Wang<wangzitao4@huawei.com> # message auto-generated for no-merge-commit merge: !277 merge issue_110_258 into master Fix: Handle 类型由 void* 改为前向声明结构体指针风格,对齐 cuBLAS/ROCm Created-by: wangzitao_leo Commit-by: Zitao Wang Merged-by: cann-robot Description: ## 描述 将 aclblasHandle_t 和 aclblasLtHandle_t 从 void* 改为前向声明结构体指针(typedef struct _aclblas_handle* aclblasHandle_t),对齐 cuBLAS/ROCm 主流标准,获得编译期类型校验。Descriptor 类型此前已完成结构体指针化改造,本次仅涉及 Handle。清理了所有冗余的 reinterpret_cast 和 trivial 辅助函数。 ### 改动范围 **核心改动(2 个公开头文件):** - include/cann_ops_blas.h:typedef void* aclblasHandle_t → typedef struct _aclblas_handle* aclblasHandle_t - include/cann_ops_blasLt.h:typedef void* aclblasLtHandle_t → typedef struct aclblasLtHandle* aclblasLtHandle_t **清理改动(90 个文件):** - 删除 3 个 trivial 辅助函数(ToInternalHandle、ToInternal x2) - 移除 92 处 reinterpret_cast<_aclblas_handle*>(handle) → 直接用 handle - 移除 3 处 reinterpret_cast<aclblasLtHandle*>(lightHandle) → 直接用 lightHandle - 移除 2 处反向 cast(reinterpret_cast<void*>(h) / reinterpret_cast<aclblasLtHandle_t>(h))→ 直接赋值 - 更新 1 处过时注释 ### ABI 兼容性 指针的二进制表示不变,无 ABI 破坏。 ## 关联的Issue [#110](https://gitcode.com/cann/ops-blas/issues/110) ## 测试 所有 host 侧目标文件(80+ 算子 host、aclblas_auxiliary、blasLt API)零错误编译通过;grep 确认零遗留 reinterpret_cast 和 ToInternalHandle/ToInternal;ABI 无破坏(指针二进制表示不变)。 ## 文档更新 无需文档更新,API 签名不变。 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-blas!277 | 6 天前 | |
Feat: 新增面向arch35的aclblasSspr接口 Co-authored-by: yuyuanfeng<yuyuanfeng1@huawei.com> # message auto-generated for no-merge-commit merge: !164 merge master into master Feat: 新增面向arch35的aclblasSspr接口 Created-by: yuyuanfeng Commit-by: yuyuanfeng Merged-by: cann-robot Description: ## 描述 新增 BLAS Level-2 算子 aclblasSpr 的 arch35 (Ascend 950) 实现。 该算子执行对称矩阵 rank-1 更新:A := alpha * x * x^T + A,数据以 packed 格式存储(列优先),支持 UPPER/LOWER 两种填充模式。 采用双路径架构: - UB-x 快速路径:incx==1 且 128<=n<=8192 时,将 x 向量缓存到 UB,多核按列切分 - GM 回退路径:incx!=1 或 n 超出 UB 容量时,直接从 GM 读写 ## 关联的Issue [#153](https://gitcode.com/cann/ops-blas/issues/153) ## 测试 - Host 参数校验:9 个用例全部通过 - Kernel 计算:16 个用例(覆盖 n=1/4/64/10000、UPPER/LOWER、正/负 incx、UB-x/GM 路径) - 910 全量编译通过,不影响已有算子 ## 文档更新 新增 blas/spr/README.md ## 其他改动 - build.sh / cmake/test.cmake / test/CMakeLists.txt:增加扁平目录结构(无类型子目录)的算子发现与测试构建支持 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-blas!164 | 1 个月前 | |
Feat: 新增面向arch35的aclblasSspr接口 Co-authored-by: yuyuanfeng<yuyuanfeng1@huawei.com> # message auto-generated for no-merge-commit merge: !164 merge master into master Feat: 新增面向arch35的aclblasSspr接口 Created-by: yuyuanfeng Commit-by: yuyuanfeng Merged-by: cann-robot Description: ## 描述 新增 BLAS Level-2 算子 aclblasSpr 的 arch35 (Ascend 950) 实现。 该算子执行对称矩阵 rank-1 更新:A := alpha * x * x^T + A,数据以 packed 格式存储(列优先),支持 UPPER/LOWER 两种填充模式。 采用双路径架构: - UB-x 快速路径:incx==1 且 128<=n<=8192 时,将 x 向量缓存到 UB,多核按列切分 - GM 回退路径:incx!=1 或 n 超出 UB 容量时,直接从 GM 读写 ## 关联的Issue [#153](https://gitcode.com/cann/ops-blas/issues/153) ## 测试 - Host 参数校验:9 个用例全部通过 - Kernel 计算:16 个用例(覆盖 n=1/4/64/10000、UPPER/LOWER、正/负 incx、UB-x/GM 路径) - 910 全量编译通过,不影响已有算子 ## 文档更新 新增 blas/spr/README.md ## 其他改动 - build.sh / cmake/test.cmake / test/CMakeLists.txt:增加扁平目录结构(无类型子目录)的算子发现与测试构建支持 ## 类型标签 - [ ] Bug修复 - [x] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: See merge request: cann/ops-blas!164 | 1 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 6 天前 | ||
| 1 个月前 | ||
| 1 个月前 |