NVCC編譯
nvcc 是cuda程序的編譯器。
1. 編譯階段
用於指定編譯階段最基本的編譯參數。
-c
: 同gcc,只預處理、編譯和匯編為.o
文件,不link-lib
:生成一個庫文件,windows上為a.lib
,其他為a.a
后綴-cuda
:編譯所有的.cu
文件為.cu.cpp.ii
-cubin
:編譯所有的.cu/.gpu/.ptx
文件為.cubin
文件
2. 文件 & 路徑配置
-odir
:指定輸出文件的目錄-ccbin
:指定host編譯器的所在路徑,如-ccbin cc
-cudart
:指定CUDA runtime library使用類型(none, shared, static);默認為static-include filename
:添加頭文件filename
3. 編譯器行為
-m
:指定平台結構為32 或者 64
4. 編譯工具內部選項
-Xcompiler
:用於直接指定編譯器或預處理器的選項-Xlinker
:用於直接指定鏈接器的選項-Xarchive
:用於直接指定庫管理器的選項-Xptxas -v
:顯示代碼生成的統計結果-Xptxas -dlcm=cg
:關閉L1 cache