# acl_config.json 配置文件说明

当 PyTorch 场景 level 取"L2"时，须配置 acl_config 参数，并指定 acl_config.json 文件（用于指定 L2 kernel 级 dump 的配置），此时 **config.json** 文件配置示例如下：

## 1 前向 kernel dump 配置示例

"scope"配置为前向 API 名称，仅支持配置一个 API。

```json
{
	"task": "tensor",
	"dump_path": "/home/data_dump",
	"level": "L2",
	"rank": [0],
	"step": [0],
	"is_deterministic": false,

	"tensor": {
		"scope": ["Tensor.__mul__.10.forward"],
		"list":[],
		"data_mode": ["all"],
		"backward_input": [""],
		"file_format": "npy"
		},
	"acl_config": "acl_config.json"
}
```

## 2 反向 kernel dump 配置示例

执行反向 kernel dump 前需要先使用工具 dump 该 API 的反向输入，保存 pt 文件，"backward_input"参数中传入该 pt 文件路径。

"scope"配置为反向 API 名称，仅支持配置一个 API。

```json
{
	"task": "tensor",
	"dump_path": "/home/data_dump",
	"level": "L2",
	"rank": [0],
	"step": [0],
	"is_deterministic": false,

	"tensor": {
		"scope": ["Tensor.__mul__.10.backward"],
		"list":[],
		"data_mode": ["all"],
		"backward_input": ["Tensor.__mul__.10.backward.input.0.pt"],
		"file_format": "npy"
		},
	"acl_config": "acl_config.json"
}
```

## 3 acl_config.json 配置示例

该文件须自行创建，配置示例如下：

```json
{
	"dump":
	{
		"dump_list":[],
		"dump_path":"./dump/output",
		"dump_mode":"all",
		"dump_op_switch":"on"
		}
}
```

**acl_config.json 参数说明**

| 字段名         | 解释                                                         |
| -------------- | ------------------------------------------------------------ |
| dump_list      | 待 dump 数据的 API 模型。为空，无需配置。                        |
| dump_path      | dump 数据文件存储到运行环境的目录，主要配置的是 kernel 级数据的存放路径。支持配置绝对路径或相对路径。dump_path 须为已存在目录。 |
| dump_mode      | dump 数据模式，可取值，<br/> output：dump API 的输出数据，默认值；<br/> input：dump API 的输入数据；<br/> all：dump API 的输入、输出数据。 |
| dump_op_switch | 单 API 模型 dump 数据开关，可取值，<br>        off：关闭单 API 模型 dump，默认值；<br>        on：开启单 API 模型 dump。 |
