MatmulFixpipeOpti Example Readme
代码组织
├── 46_ascend950_matmul_fixpipe_opti
│ ├── CMakeLists.txt # CMake编译文件
│ ├── README.md
│ ├── 46_ascend950_matmul_fixpipe_opti.md # 设计文档
│ └── matmul_fixpipe_opti.cpp # 主文件
功能介绍
该算子每完成一个基本块的计算,结果数据即通过Fixpipe搬出到UB上。当启用双目标模式控制(dualDstCtrl)时,计算结果矩阵会被分成两部分,并行写入两个Vector核(一个Cube核对应两个Vector核)的专属UB中。每个Vector核的UB支持独立开启Double Buffer以加速流水效率。
使用示例
- 获取代码之后编译相应的算子可执行文件,可参考quickstart,本用例为Ascend 950算子,编译时需加-DCATLASS_ARCH=3510
- 执行算子
# 编译指定用例
bash scripts/build.sh 46_ascend950_matmul_fixpipe_opti -DCATLASS_ARCH=3510
cd output/bin
# 可执行文件名 |矩阵m轴|n轴|k轴|Device ID
# Device ID可选,默认为0
./46_ascend950_matmul_fixpipe_opti 128 128 128 0
执行结果如下,说明精度比对成功。
Compare success.