工具概述
用户使用msOpST工具在真实的硬件环境中对算子的功能进行测试后,可根据实际测试情况选择是否使用msSanitizer工具进行异常检测。msSanitizer工具是基于昇腾AI处理器的一个异常检测工具,包含了内存检测和竞争检测两个子工具。
- 内存检测:工具可以在用户开发算子的过程中,协助定位非法读写、多核踩踏、非对齐访问、内存泄漏以及非法释放等内存问题。同时工具也支持对CANN软件栈的内存检测,帮助用户定界软件栈内存异常发生的模块。
- 竞争检测:工具可以协助用户定位由于竞争风险可能导致的数据竞争问题,包含核内竞争和核间竞争问题。
工具特性
msSanitizer通过不同子工具提供了不同类型的检测功能,目前已支持的功能如下:
命令汇总
可以通过运行以下命令来调用msSanitizer工具。
mssanitizer <options> <user_program> <user_options>
参数名称 |
参数描述 |
参数取值 |
是否必选 |
---|---|---|---|
-v,--version |
查询msSanitizer工具版本。 |
- |
否 |
-t,--tool |
指定异常检测的子工具。 |
|
否 |
--log-file |
指定检测报告输出到文件。 |
{file_name},如配置为test_log。 说明:
|
否 |
--log-level |
指定检测报告输出等级。 |
|
否 |
--max-debuglog-size |
指定检测工具调试输出日志中单个文件大小的上限。 |
可设定范围为1~10240之间的整数,单位为mb。 默认值为1024。 说明:
--max-debuglog-size=100就表示单个调试日志的大小上限为100mb。 |
否 |
-h,--help |
输出帮助信息。 |
- |
否 |
调用场景
结果件说明
结果件名称 |
说明 |
---|---|
mssanitizer_{TIMESTAMP}_{PID}.log |
msSanitizer工具运行过程中,在当前路径下生成的工具日志,TIMESTAMP为当前时间戳,PID为当前检测工具的PID。 |
kernel.{PID}.o |
msSanitizer工具运行过程中,在当前路径下生成的算子缓存文件,PID为当前使用的检测工具的PID,该算子缓存文件用于解析异常调用栈。
|
父主题: 异常检测(msSanitizer)