文件最后提交记录最后更新时间
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
整改部分examples样例1 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
docs: 统一样例 README 中 SCENARIO_NUM 编译参数示例2 天前
docs: 统一样例 README 中 SCENARIO_NUM 编译参数示例2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
合并产品与CANN版本小节为表格,标注各产品最低版本要求2 天前
修复examples文档的格式问题6 天前
为样例列表表格添加"支持的产品"列19 天前
README.md

Matmul API样例介绍

概述

本样例集介绍了Matmul API不同特性的典型用法,给出了对应的端到端实现。

样例列表

目录名称 功能描述 支持的产品
batch_matmul 批量处理Matmul计算的样例 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
batch_matmul_bias_reuse 批量处理Matmul计算时,每个Batch复用同一个Bias矩阵的Matmul样例 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
batch_matmul_iterate_n_batch 多次批量处理Matmul计算的样例,包括非异步场景和异步场景的实现 Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul 调用Matmul API实现matmul样例 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_a2b2_share 开启 A2(L0A Buffer) 和 B2(L0B Buffer) 全局管理的Matmul样例 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_async_iterate 异步场景下的Matmul样例,实现方式为调用Iterate和GetTensorC输出到VECIN Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_async_iterate_all 异步场景下的Matmul样例,实现方式为调用IterateAll输出到GM Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_callback Matmul API模板参数MatmulCallbackFunc的自定义使用方式 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_channelsplit_output 矩阵乘输出Channel拆分功能的Matmul样例 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_co1_output 用户自主管理CO1(L0C Buffer)的Matmul样例 Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_constant_tiling Tiling常量化的Matmul样例,在tiling参数固定的场景下,减少运行时的Scalar开销 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_format_column_major 输入输出矩阵为COLUMN_MAJOR(列优先)格式排布的Matmul样例 Ascend 950PR/Ascend 950DT
matmul_format_gemv 实现矩阵向量乘GEMV(General Matrix-Vector multiplication)的Matmul样例 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_format_nd_align 在输入矩阵的N方向非对齐场景下,矩阵乘输出时使能N方向对齐的Matmul样例 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_fp8 A、B矩阵为hifloat8、fp8_e4m3fn、fp8_e5m2数据类型输入的Matmul样例 Ascend 950PR/Ascend 950DT
matmul_fused 分核AIC、AIV融合编程实现,主要介绍了Matmul高阶API的MIX模式,Matmul API内部会自动控制AIC、AIV的核间同步 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_fused_mannul 分核AIC、AIV融合编程实现,主要介绍了Matmul高阶API的纯Cube模式,需要调用相关接口实现手动控制AIC、AIV的核间同步 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_ibshareAB 调开启IBShare功能,复用L1 Buffer上相同的A矩阵或者B矩阵数据的样例,本样例为A矩阵和B矩阵同时复用场景 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_ibshareB 调开启IBShare功能,复用L1 Buffer上相同的A矩阵或者B矩阵数据的样例,本样例为仅B矩阵复用场景 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_int4 A、B矩阵为int4b_t数据类型输入的Matmul样例 Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_k_reorder_load 使能K轴错峰加载数据特性的Matmul样例,减少多核对Global Memory地址访问冲突概率 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_l0cache 使能L0缓存特性的Matmul样例,减少MTE1重复搬运 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_l2cache 使能L2 Cache切分特性的Matmul样例,提高L2 Cache的利用率 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_mixdualmaster 使能双主模式(MixDualMaster)的Matmul样例,AIC和AIV独立运行代码,不依赖消息驱动,用于提升性能 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_mn_double_buffer M/N轴方向的流水并行的Matmul样例 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_multi_core_unaligned 多核非对齐切分,即多核切分尾块的实际计算量小于tiling中对应参数的Matmul样例 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_mx 在MXFP4/MXFP8数据格式下的带有量化系数的矩阵乘法,即MxMatmul样例 Ascend 950PR/Ascend 950DT
matmul_mx_scale_cache 在MXFP4/MXFP8数据格式下,量化系数矩阵scale在L1 Buffer上开启多倍缓存的MxMatmul样例 Ascend 950PR/Ascend 950DT
matmul_mx_ub_tscm_nz 在MXFP4/MXFP8数据格式下,使用用户自定义TSCM、VECOUT的输入的MxMatmul样例 Ascend 950PR/Ascend 950DT
matmul_nbuffer33 NBuffer33算法的Matmul样例,实现搬入搬出带宽平衡从而提升效率 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_partial_output Matmul高阶API实现开启Partial Output功能的样例 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_preload M/N方向预加载的Matmul样例,可以减少MET2间隙 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_quant 输出随路反量化的Matmul样例,支持同一系数的反量化模式和向量的反量化模式 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_sparse 4:2稀疏矩阵乘(Sparse Matmul)的Matmul样例,可以减少矩阵乘计算时的内存占用和计算量 Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_splitk 多核切K场景下的Matmul样例,将输入矩阵沿K轴切分后分配到多核上并行处理 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_splitm 多核切M场景下的Matmul样例,将输入矩阵沿M轴切分后分配到多核上并行处理 Ascend 950PR/Ascend 950DT
matmul_triangle TrianUpperMatmulPolicy(上三角模板策略)和TrianLowerMatmulPolicy(下三角模板策略)的Matmul样例 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_tscm 使用数据来源为GM的用户自定义TSCM的输入的Matmul样例,开发者可以自主管理L1 Buffer以高效利用硬件资源 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_tscm_src_vecout 使用数据来源为VECOUT的用户自定义TSCM的输入的Matmul样例,开发者可以自主管理L1 Buffer以高效利用硬件资源 Ascend 950PR/Ascend 950DT
matmul_unitflag 使能UnitFlag功能的Matmul样例,使样例中的CUBE计算流水与FIXPIPE数据搬出流水并行 Ascend 950PR/Ascend 950DT
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品
matmul_vecout 使用用户自定义VECOUT的输入的Matmul样例,开发者可以自主管理Unified Buffer以高效利用硬件资源 Ascend 950PR/Ascend 950DT