---
title: SetBType
description: "设置B矩阵的位置，数据格式，数据类型，是否转置等信息，这些信息需要和kernel侧的设置保持一致。"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/API/ascendcopapi/atlasascendc_api_07_0675.html
sourcePath: /source/zh/canncommercial/900/API/ascendcopapi/atlasascendc_api_07_0675.html
indexId: a3a033fdc174e6461b7037de8d561108a6fe9ec19528f6b6caffd77e567f815376
---
# SetBType

#### 功能说明

设置B矩阵的位置，数据格式，数据类型，是否转置等信息，这些信息需要和kernel侧的设置保持一致。


#### 函数原型

```
int32_t SetBType(TPosition pos, CubeFormat type, DataType dataType, bool isTrans = false)
```


#### 参数说明


**表1 参数说明**

| 参数名 | 输入/输出 | 描述 |
| --- | --- | --- |
| pos | 输入 | B矩阵所在的buffer位置，可设置为：TPosition::GM, TPosition::VECOUT, TPosition::TSCM。 |
| type | 输入 | B矩阵的数据格式，可设置为：CubeFormat::ND，CubeFormat::NZ。 |
| dataType | 输入 | B矩阵的数据类型，可设置为：DataType::DT\_FLOAT/DataType::DT\_FLOAT16/DataType::DT\_BFLOAT16 /DataType::DT\_INT8/DataType::DT\_INT4/DataType::DT\_FLOAT8\_E4M3FN/DataType::DT\_FLOAT8\_E5M2/DataType::DT\_HIFLOAT8。 |
| isTrans | 输入 | B矩阵是否转置。 参数取值： true：B矩阵转置； false：B矩阵不转置。 |


#### 返回值说明

-1表示设置失败；0表示设置成功。


#### 约束说明

无


#### 调用示例

```
auto ascendcPlatform = platform_ascendc::PlatformAscendC(context->GetPlatformInfo());
matmul_tiling::MatmulApiTiling tiling(ascendcPlatform); 
// 设置B矩阵，buffer位置为GM，数据格式为ND，数据类型为bfloat16，默认不转置
tiling.SetBType(matmul_tiling::TPosition::GM, matmul_tiling::CubeFormat::ND, matmul_tiling::DataType::DT_FLOAT16);
```
