我希望将生成的CUDA代码保存在文件中以供检查。这可能与OpenAcc和PGI编译器有关吗?
答案 0 :(得分:3)
您应该能够将-ta=nvidia,keepgpu,keepptx
传递给任何PGI GPU编译器,这将在构建期间保留工具链发出的中间代码。
另请参阅命令行帮助,例如:
pgcc -help
请注意,PGI编译器最近已转移到更集成的工具链,这消除了CUDA C中间源文件的生成,因此上述方法可以工作,但是为您提供非C代码的中间文件(它们是llvm和ptx)。如果您需要CUDA C中间代码,还可以添加nollvm
选项:
-ta=nvidia,keepgpu,keepptx,nollvm
“保留”文件通常会为llvm / CUDA C代码添加.gpu
和.h
扩展名,并为PTX提供.ptx
扩展名。