CANN/ops-solver算子列表
算子列表
【免费下载链接】ops-solver本项目是CANN提供的高级数值求解算子库,实现矩阵分解、求逆、特征值求解等功能在NPU上的加速计算。项目地址: https://gitcode.com/cann/ops-solver
说明:
- 算子目录:目录名为算子名小写下划线形式,每个目录承载该算子所有交付件,包括代码实现、examples、文档等,目录介绍参见项目目录。
- 算子执行硬件单元:所有算子运行在AI Core。关于AI Core详细介绍参见《Ascend C算子开发》中"概念原理和术语 > 硬件架构与数据处理原理"。
- 算子接口列表:为方便调用算子,CANN提供一套C API执行算子,以aclsolver为前缀,接口风格参考cuSolver。
项目提供的所有算子分类和算子列表如下:
| 算子分类 | 算子目录 | 算子实现 | 算子执行硬件单元 | 说明 | |
|---|---|---|---|---|---|
| op_kernel | op_host | ||||
| solver | cgetrf | ✓ | ✓ | AI Core | 复数矩阵LU分解,计算复数矩阵A的LU分解,A = P * L * U,其中P为置换矩阵,L为下三角矩阵,U为上三角矩阵。 |
| solver | cgetri | ✓ | ✓ | AI Core | 复数矩阵求逆,利用LU分解计算复数矩阵的逆矩阵。 |
| solver | sgetrf | ✓ | ✓ | AI Core | 单精度矩阵LU分解,计算单精度矩阵A的LU分解,A = P * L * U,其中P为置换矩阵,L为下三角矩阵,U为上三角矩阵。 |
| solver | sgetri | ✓ | ✓ | AI Core | 单精度矩阵求逆,利用LU分解计算单精度矩阵的逆矩阵。 |
| solver | cmatinv_batched | ✓ | ✓ | AI Core | 批量复数矩阵求逆,对一批复数矩阵同时进行求逆运算,提高计算效率。 |
算子接口
ops-solver提供类似cuSolver风格的C API接口,通过handle管理上下文:
Handle管理接口
| 接口 | 说明 |
|---|---|
aclsolverCreate | 创建solver handle |
aclsolverDestroy | 销毁solver handle |
aclsolverSetStream | 设置计算流 |
aclsolverGetStream | 获取计算流 |
aclsolverSetWorkspace | 设置工作空间 |
aclsolverGetVersion | 获取版本号 |
算子计算接口
| 接口 | 说明 |
|---|---|
aclsolverCgetrf | 复数矩阵LU分解 |
aclsolverCgetri | 复数矩阵求逆 |
aclsolverSgetrf | 单精度矩阵LU分解 |
aclsolverSgetri | 单精度矩阵求逆 |
aclsolverCmatinvBatched | 批量复数矩阵求逆 |
aclsolverCgetriBatched | 批量复数矩阵求逆 |
【免费下载链接】ops-solver本项目是CANN提供的高级数值求解算子库,实现矩阵分解、求逆、特征值求解等功能在NPU上的加速计算。项目地址: https://gitcode.com/cann/ops-solver
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
