CUDA 學習筆記之儲存器
每一個執行緒都有它自身的register,有時也有local memory,但是我不建議使用local memory, 應由系統自己處理這個問題。放在register中的變數不用任何修飾符。
每一個block內的執行緒共享shared memory(一塊記憶體空間),大小現在是16k。因此在訪問時,可能要同步,使用內建的函式_syncthreads()內建函式來處理同步,在該函式的呼叫處,塊內所有的執行緒都得等待,直至當前block內所有的執行緒都到達此處,如果有的執行緒被中止,就成了永遠等待了,要注意這種情況。用__shared__來修飾放在shared memory中的變數,但是在宣告的時候不能初始化,而且必須在函式內部宣告。
此外還有兩個只讀儲存器,可由所有block的執行緒訪問,一個是常量儲存器,存入其中的變數值不可在kernal中修改,用 __constant__來修飾,但是其值可以進行復制等一些操作,也可以在主機上通過執行時函式訪問,但是必須定義成全域性變數,這不太好。一個是紋理儲存器,它必須繫結到某個資料集,但是它不是可改的。對於一個應用程式啟動的核心而言,所有的儲存器空間都是持久的。
最後就是device memory了,它可以由所有的block的執行緒共享,作用域在於檔案,用__device__來修飾,要定義成全域性變數,儘量不用它。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22785983/viewspace-661686/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【CUDA學習】共享儲存器
- 【CUDA學習】全域性儲存器
- CUDA 學習筆記之程式棧筆記
- CUDA 學習筆記之gpu結構筆記GPU
- CUDA學習筆記之柵欄同步筆記
- CUDA 學習筆記之向量宣告使用筆記
- cuda優化之常量儲存器和紋理儲存器優化
- CUDA 學習筆記之型別轉換筆記型別
- 學習筆記14:模型儲存筆記模型
- CUDA學習筆記之變數限制符筆記變數
- CUDA 學習筆記之函式限制符筆記函式
- CUDA儲存器組織
- GlusterFS分散式儲存學習筆記分散式筆記
- OS學習筆記五:儲存模型筆記模型
- 【C#學習筆記】儲存檔案C#筆記
- HTML5學習筆記 Web儲存HTML筆記Web
- SQL學習筆記(ORACLE內部儲存)SQL筆記Oracle
- CUDA學習筆記-1: CUDA程式設計概覽筆記程式設計
- 【儲存管理】SAN儲存 Storage Area Network 儲存區域網路 學習筆記筆記
- 儲存學習之開源儲存軟體
- spark學習筆記--資料讀取與儲存Spark筆記
- 學習筆記|AS入門(七) 資料儲存篇筆記
- ibm ds4700儲存學習筆記(一)IBM筆記
- ibm ds4700儲存學習筆記(二)IBM筆記
- ibm ds4700儲存學習筆記(三)IBM筆記
- swoft 學習筆記之驗證器筆記
- Swoft 學習筆記之控制器筆記
- 【numpy學習筆記】陣列的儲存和下載筆記陣列
- opencv學習筆記(二)-- 載入、修改和儲存影像OpenCV筆記
- [PyTorch 學習筆記] 7.1 模型儲存與載入PyTorch筆記模型
- Python爬蟲學習筆記(三、儲存資料)Python爬蟲筆記
- 【大話儲存】學習筆記(6章), 磁碟陣列筆記陣列
- 【學習筆記之作業系統原理篇】儲存管理筆記作業系統
- 學習筆記:InnoDB儲存結構及多版本實現筆記
- LOB儲存筆記筆記
- 儲存學習
- 作業系統儲存器管理筆記作業系統筆記
- 大神之路-起始篇 | 第3章.電腦科學導論之【資料儲存】學習筆記筆記