# imas **Repository Path**: stevenaw/imas ## Basic Information - **Project Name**: imas - **Description**: No description available - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 0 - **Created**: 2024-05-28 - **Last Updated**: 2026-05-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # imas 1 IMAS工具使用说明 IMAS:Intelligent memory analysis system(理想还是要有的) 当前GE的内存维测日志和分析工具能够解决如下问题: 1、GE为每个图分配的总内存大小 2、GE为每个算子分配的内存大小和偏移量 3、GE内存分配算法的复用率 4、GE为每个图分配的真实内存基址 5、GE为每个算子分配的真实内存地址及合法性校验 6、GE执行内存拷贝的合法性校验 尚未解决的问题: 1、算子执行时使用的实际内存地址 2、算子执行时使用的实际内存大小 说明:1,2需要算子侧来实现 1.1 使用方法: ./make_imas 首次下载后,使用该命令编译生成可执行文件 1.2 命令行简介: ./imas report test.log // 生成内存报告,支持静态图内存分配和rt2.0的动态图内存分配报告 ./imas total test.log // 查看内存总大小,包括静态图、内存池、从rts实际申请内存大小 // test.log为模型生成和加载阶段日志,Info级别, // 如果有多个日志文件,如plog目录下的日志文件,使用如下格式: ./imas total /root/ascend/log/debug/plog/plog* slog日志开关:环境变量 export ASCEND_GLOBAL_LOG_LEVEL=1;atc参数 --log=info export ASCEND_HOST_LOG_FILE_NUM=1000 修改日志最大文件数 在mem_report目录下会生成4个csv文件,下载到windows下可以用excel打开分析。 [root@localhost bert-cloud-npu--20191113-r172]# ls -l mem_report/ total 2156 -rw------- 1 root root 12000 Jan 4 06:54 imas_mem_addr.csv //内存地址报告 -rw------- 1 root root 70041 Jan 4 06:54 imas_mem_graph.csv //静态图内存复用报告 -rw------- 1 root root 38961 Jan 4 06:54 imas_mem_variable.csv //变量内存复用报告 -rw------- 1 root root 28801 Jan 4 06:54 imas_mem_pool.csv //动态图内存复用报告 打开imas_mem_graph.csv,筛选出要分析的graph。 memoffset:实际分配内存大小(内存分配完后的最大偏移量) realsize_total:采用SUM方法计算出所有算子realsize的大小 注:复用率越大越好,可以作为内存分配算法评价指标。