出现以下报错:
[ 33%] Building CCE object cmake/npu/CMakeFiles/reduce_sum_custom_npu.dir///reduce_sum_custom.cpp.o error: stack frame size (16024) exceeds limit (16000) in function '_ZN7AscendC9ReduceSumIDhEEvRKNS_11LocalTensorIT_EES5_S5_i' error: stack frame size (16024) exceeds limit (16000) in function '_ZN7AscendC9ReduceSumIDhEEvRKNS_11LocalTensorIT_EES5_S5_i' 2 errors generated.
可通过修改编译选项扩大使能的栈空间进行解决。如下是msopgen工程的修改方法。
# 文件位置:cmake/Modules/CMakeDetermineCCECompiler.cmake set(_CMAKE_CCE_COMPILE_OPTIONS "-mllvm -cce-aicore-function-stack-size=0x8000 \ -mllvm -cce-aicore-record-overflow=false \ -mllvm -cce-aicore-addr-transform \ -mllvm -cce-aicore-jump-expand=true \ -mllvm -cce-aicore-stack-size=0x8000" # 此处完成修改 )
非msopgen工程中需修改编译选项的文件位置,需要用户根据实际的工程实现自行确定。