(Cuda)基礎知識(一)

2021-07-11 01:28:30 字數 1550 閱讀 1436

本部分內容為[1]cuda_c_programming_guide.pdf中筆記

限定符執行

呼叫__device__device

device

__global__device

host(計算能力3.x可device )

__host__host

host

限定符變數位置

device訪問

host訪問

生命週期

__device__device(global memory default)

所有執行緒

通過執行時庫

__constant__constant memory所有執行緒

通過執行時庫

__shared__shared memoryof a thread block

塊內線程

不可訪問

block

基本型別:char, short, int, long, longlong, float, double

向量型別:基於基本型別,如int1,int2,int3,int4,uint4等等,每一維分別由x,y,z,w訪問

維度型別:dim3,基於unit3,未初始化的維度賦值為1

變數型別

說明griddim

dim3

一般用2維

blockdim

dim3

一般用2維

blockidx

uint3

當前grid中block索引

threadidx

uint3

當前block中thread索引

warpsize

intwarp size in threads(1.0:24,>1.0:32)

- warp 執行緒束

kernels為從cpu上呼叫,在gpu上執行的函式。該函式由gpu上的執行緒執行n次。

定義方式為:

__global__ void func(float* parameter);
呼叫方式為:

func<<< dg, db, ns, s >>>(parameter);
其中:

乙個grid -> 多個block -> 多個thread

一 基礎知識

rel file list href file c 5cdocume 7e1 5cadmini 7e1 5clocals 7e1 5ctemp 5cmsohtml1 5c03 5cclip filelist.xml 了解組合語言的機器相關性 機器語言的簡單符號化而已,而不同cpu有不同指令系統 組合...

網路基礎知識 網路基礎知識普及一

網路基礎知識普及一 mp.weixin.qq.com 1 什麼是鏈結?鏈結是指兩個裝置之間的連線。它包括用於乙個裝置能夠與另乙個裝置通訊的電纜型別和協議。2 osi 參考模型的層次是什麼?有 7 個 osi 層 物理層,資料鏈路層,網路層,傳輸層,會話層,表示層和應用層。3 什麼是骨幹網?骨幹網路是...

Ruby 基礎知識(一)

聽說ruby的語法非常簡單,於是這幾天就在見識了 看的書是 ruby programing 向ruby之父學程式設計 據稱,ruby也是一種完全物件導向的語言。一些簡單的語法如下 1顯示字串 print hello,ruby n 由於 表示字串的開始與結束,所以如果要顯示 的話,應該在 前加上 如 ...