# Dump工具应用—算子执行报错，输入数据值越界

**1. 问题描述**

部分算子在错误的输入下可能会报错，例如Gather算子，获取执行下标的数据，如果下标越界，算子访存越界会执行失败。

**2. 问题分析**

框架默认会开启海思的异常dump，但其支持的算子有限，执行失败后可以先查看当前目录下是否有extra-info目录，如果有数据，即可找海思同事定位。

如果没有数据，需要开启框架的异常Dump保存报错算子输入，查看输入是否异常。

**3. 配置**

配置项：“op\_debug\_mode”: 4

相关配置：不支持指定step（iteration字段不生效），不支持指定算子\(kernels字段不生效\)，不支持执行统计信息/Tensor\(saved\_data默认为Tensor），不支持异步。

```
{
    "common_dump_settings": {
        "op_debug_mode": 4,
        "dump_mode": 0,
        "path": "/absolute_path",
        "net_name": "ResNet50",
        "iteration": "all",
        "saved_data": "tensor",
        "input_output": 0,
        "kernels": ["Default/Conv-op12"],
        "support_device": [0,1,2,3,4,5,6,7]
    },
    "e2e_dump_settings": {
        "enable": true,
        "trans_flag": true
    }
}
```

**性能**：性能膨胀约2倍。

**资源占用**

**磁盘**：只存异常算子输出，占用少；

**显存**：理论上不会增加显存占用；

