常用的NVCC指令

1。-deviceemu
   用cpu模擬模式。常用於debug,但是要小心threads數目。單純就是software contral
2。-use_fast_math
   將可以用GPU硬體算數學涵數都用GPU計算
3。-maxrregcount N
   限制每一個threads所用的register大小。if kernel超過了,就會存在local memory
4。--ptxas-options=-v
   回報用的memory量。
5。-arch sm_xx xx是CUDA版本(滿多涵數都要指定版本)
   指定compiler的版本
6。-l + lib名稱 ex:-lcublas
   連結標頭檔
7。-l
   指定尋找的lib路徑
8。-I
   指定尋找的標頭檔路徑

2010/11/27 更新部分
nvcc -g -I/home/zcli/NVIDIA_GPU_Computing_SDK/C/common/inc -L/home/zcli/NVIDIA_GPU_Computing_SDK/C/common/lib/linux cudaapi.cu  -lrt /home/zcli/NVIDIA_GPU_Computing_SDK/C/lib/libcutil_x86_64.a

今天在試cutil.h一些計時的api時,一直undefine reference,一整個快發瘋,不是連結lib path跟header path就好了嗎?看了一個下午的網路,還是搞不懂為什麼...
大概知道就是我沒有連結到lib ,加了-lrt那段,意思好像是靜態連結資料庫的作法,實際作用完全搞不懂。再找機會來研究研究。
另外補充一下,可以直接打-lcutil_x86_64,就編過了....好像是因為cudatookit在3.0版的名稱改變了T_T

其他有用到再打上來>"<

沒有留言:

張貼留言