Gemm/Kernel 类模板概述【免费下载链接】ops-tensorops-tensor 是 CANN Compute Architecture for Neural Networks算子库中提供张量类计算的基础算子库采用模块化设计支持灵活的算子开发和管理。项目地址: https://gitcode.com/cann/ops-tensorAPI 清单组件名描述kernel_matmul_basic基础矩阵乘 Kernel仅 AIC 计算无 workspacekernel_qbmm_mx_basicMX 量化 Batch Matmul支持 MxFP4/MxFP8 量化kernel_matmul_streamkStreamK 矩阵乘 KernelAICAIV 双核计算支持 workspace公共框架所有 Kernel 组件基于 kernel.md 公共框架实现包含统一的模板参数数据结构Params、Arguments核心方法Init、operator详见kernel.md核心组件关系KernelMatmul ├── BlockScheduler (任务调度) │ ├── Tile 切分策略 │ ├── Block 分配 │ └── HF32/L2Cache 配置 ├── BlockMmad (矩阵乘计算) │ ├── GM → L1 → L0 数据搬运 │ ├── Mmad 计算 │ └── L0C → GM 结果搬出 └── BlockEpilogue (后处理) └── Empty 或 StreamK 实现实现差异对比Kernel 类型计算模式量化支持Scale 支持BlockEpilogueWorkspaceBatch 支持BlockSchedulerAIC-AIV 同步适用场景KernelMatmulBasic仅 AIC不支持不支持BlockEpilogueEmpty不需要单 batchMatmulBasic无通用 MatmulKernelQbmmMx仅 AICMX FP4/MX FP8ScaleA ScaleB无不需要多 batchBlockSchedulerQbmm无量化 Batch MatmulKernelMatmulStreamKAIC AIV 双核不支持不支持BlockEpilogueStreamK需要单 batchStreamK Scheduler有切 K 场景 Matmul使用流程查看公共框架了解模板参数和核心接口 → kernel.md选择具体实现根据场景选择 Basic、QBMM MX 或 StreamK查看特殊约束了解各实现的特有约束和方法组装组件定义 ProblemShape、BlockMmad、BlockEpilogue、BlockScheduler准备参数构造 Params 结构体执行 Kernel实例化并调用 operator()【免费下载链接】ops-tensorops-tensor 是 CANN Compute Architecture for Neural Networks算子库中提供张量类计算的基础算子库采用模块化设计支持灵活的算子开发和管理。项目地址: https://gitcode.com/cann/ops-tensor创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
CANN/ops-tensor Kernel API 概述
发布时间:2026/5/21 23:14:18
Gemm/Kernel 类模板概述【免费下载链接】ops-tensorops-tensor 是 CANN Compute Architecture for Neural Networks算子库中提供张量类计算的基础算子库采用模块化设计支持灵活的算子开发和管理。项目地址: https://gitcode.com/cann/ops-tensorAPI 清单组件名描述kernel_matmul_basic基础矩阵乘 Kernel仅 AIC 计算无 workspacekernel_qbmm_mx_basicMX 量化 Batch Matmul支持 MxFP4/MxFP8 量化kernel_matmul_streamkStreamK 矩阵乘 KernelAICAIV 双核计算支持 workspace公共框架所有 Kernel 组件基于 kernel.md 公共框架实现包含统一的模板参数数据结构Params、Arguments核心方法Init、operator详见kernel.md核心组件关系KernelMatmul ├── BlockScheduler (任务调度) │ ├── Tile 切分策略 │ ├── Block 分配 │ └── HF32/L2Cache 配置 ├── BlockMmad (矩阵乘计算) │ ├── GM → L1 → L0 数据搬运 │ ├── Mmad 计算 │ └── L0C → GM 结果搬出 └── BlockEpilogue (后处理) └── Empty 或 StreamK 实现实现差异对比Kernel 类型计算模式量化支持Scale 支持BlockEpilogueWorkspaceBatch 支持BlockSchedulerAIC-AIV 同步适用场景KernelMatmulBasic仅 AIC不支持不支持BlockEpilogueEmpty不需要单 batchMatmulBasic无通用 MatmulKernelQbmmMx仅 AICMX FP4/MX FP8ScaleA ScaleB无不需要多 batchBlockSchedulerQbmm无量化 Batch MatmulKernelMatmulStreamKAIC AIV 双核不支持不支持BlockEpilogueStreamK需要单 batchStreamK Scheduler有切 K 场景 Matmul使用流程查看公共框架了解模板参数和核心接口 → kernel.md选择具体实现根据场景选择 Basic、QBMM MX 或 StreamK查看特殊约束了解各实现的特有约束和方法组装组件定义 ProblemShape、BlockMmad、BlockEpilogue、BlockScheduler准备参数构造 Params 结构体执行 Kernel实例化并调用 operator()【免费下载链接】ops-tensorops-tensor 是 CANN Compute Architecture for Neural Networks算子库中提供张量类计算的基础算子库采用模块化设计支持灵活的算子开发和管理。项目地址: https://gitcode.com/cann/ops-tensor创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考