README.md

内存对比案例

概述

本案例介绍了内存分析工具msMemScope的内存对比功能,目前主要用于处理Step间发生的显存差异对比。如果训练推理参数一致,但是CANN或框架的版本不配套,那么任务的两个不同Step的内存使用可能存在差异。msMemScope提供了用户对比分析、定位问题的能力。

前期准备

请参见安装指南安装msMemScope工具。

此外,使用对比功能前,需要将环境变量关闭task_queue算子下发队列优化后,再使用msMemScope工具采集两个不同step的数据。

export TASK_QUEUE_ENABLE=0

执行样例

参数说明

以下仅提供本功能样例中使用到的参数解释。其他参数的详细说明请参见API参考

参数 可选/必选 说明
input 必选 指定需要对比的两份文件目录。
level 可选 指定对比的级别,可填写op或者kernel,默认为op级别。

内存对比

样例提供了正常运行和存在泄漏内存的两份落盘文件。运行只需要在命令行执行:

cd ./example/compare
msmemscope --compare --input=baseline.csv,leaks.csv

结果说明

内存对比的数据将落盘于用户指定路径或者默认路径下。其结构形如:

memscopeDumpResults
└── msmemscope_xxxxxx_2025xxxxxxxxxx_ascend
    ├── compare
        └── memory_compare_2025xxxxxxxxxx.csv
    ├── msmemscope_logs
        └── msmemscope_2025xxxxxxxxxx.log
    └── config.json

在compare目录下,对比文件将落盘,其中展示算子之间的内存差异。