CUDA 學習筆記之函式限制符

洛欣發表於2010-05-07

函式限制符:

__global__:用於主機呼叫,但是是在裝置上執行,cuda稱其為核心,它是cpugpu交流的中介,一般一個程式儘量只用一個核心,也可以有幾個。當然也得具體配置,在核心內不能宣告static變數。它的呼叫是非同步的,因此在使用它所呼叫的引數前要確定資料可用。可以使用cudaThreadSynchronize()來達到目的。

 

__device__:定義執行在gpu上的函式,就是在裝置上呼叫,在裝置上執行。

 

__host__:就像沒有修飾符一樣,由主機呼叫,這是預設的,同時定義__device__,__host__,這樣可就能夠同時在裝置和主機中呼叫。

 

:所有執行在裝置上的函式都不能有遞迴且不能有靜態變數。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22785983/viewspace-662157/,如需轉載,請註明出處,否則將追究法律責任。

相關文章