---
title: BatchMatMul2MulFusionPass
description: "网络中存在部分k=1的MatMul/MatMulv2/MatMulV3/BatchMatmul/BatchMatMulV2/BatchMatMulV3算子，性能表现较差。该图融合就是将MatMul/MatMulv2/MatMulV3/BatchMatmul/BatchMatMulV2/BatchMatMulV3转为mul，解决性能问题。"
url: https://www.hiascend.com/document/detail/zh/CANNCommunityEdition/latest/maintenref/graphubfusionref/atlasrr_30_0063.html
sourcePath: /source/zh/CANNCommunityEdition/920beta1/maintenref/graphubfusionref/atlasrr_30_0063.html
indexId: 46460fb1604cf545687e669085997ca54cf74fada297e0b96e9fc994a079a0c589
---
# BatchMatMul2MulFusionPass

#### 融合模式

网络中存在部分k=1的MatMul/MatMulv2/MatMulV3/BatchMatmul/BatchMatMulV2/BatchMatMulV3算子，性能表现较差。该图融合就是将MatMul/MatMulv2/MatMulV3/BatchMatmul/BatchMatMulV2/BatchMatMulV3转为mul，解决性能问题。

Ascend 950PR / Ascend 950DT 仅融合MatMul/MatMulv2/MatMulV3节点，不融合BatchMatmul/BatchMatMulV2/BatchMatMulV3节点。


若输入的对应的adj为true则需要在对应输入前插入reshape算子。


#### 使用约束

- 仅适用于静态场景，输入不带bias。
- DType符合如下条件：

  - 输入输出均为Float32。
  - 输入输出均为Float16，BFloat16。


#### 支持的型号

Atlas A2 训练系列产品 / Atlas A2 推理系列产品

Atlas A3 训练系列产品 / Atlas A3 推理系列产品

Ascend 950PR / Ascend 950DT
