请参考环境准备,完成相关环境变量的配置。
不同算子工程添加编译选项的位置不同,下面以内核调用符场景和msOpGen算子工程编译场景准备为例进行介绍:
git clone https://gitee.com/ascend/samples.git -b 8.0.RC2
1 2 3 4 5 6 | target_compile_options(${smoke_testcase}_npu PRIVATE -O2 -std=c++17 --cce-enable-sanitizer -g ) |
增加 --cce-enable-sanitizer 选项代表使能异常检测。
增加 -g 选项使编译器生成定位信息,将会在异常报告输出时显示异常发生的具体位置(文件名、行号以及调用栈等信息)。
1 2 3 4 | target_link_options(${smoke_testcase}_npu PRIVATE --cce-fatobj-link --cce-enable-sanitizer ) |
if(NOT CMAKE_CCE_LINK_EXECUTABLE) set(CMAKE_CCE_LINK_EXECUTABLE "<CMAKE_CCE_COMPILER> ${CMAKE_LIBRARY_CREATE_CCE_FLAGS} ${_CMAKE_COMPILE_AS_CCE_FLAG} <FLAGS> <CMAKE_CCE_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> <LINK_LIBRARIES>${__IMPLICIT_LINKS}") endif()
add_ops_compile_options(ALL OPTIONS -sanitizer)