自動駕駛-CUDA與TensorRT部署實戰(zhàn)程
函數(shù)和device函數(shù)。具體如下:
__global__
:在device上執(zhí)行,從host中調用(一些特定的GPU也可以從device上調用),返回類型必須是void,不支持可變參數(shù),不能成為類成員函數(shù)。注意:下文會提到CUDA中的核函數(shù),它就是用__global__
聲明的,并且是異步的,host不會等待kernel執(zhí)行完就執(zhí)行下一步。__device__
:在device上執(zhí)行,從device中調用。__host__
:在host上執(zhí)行,從host中調用,一般省略不寫(默認)。
典型的CUDA程序執(zhí)行流程如下:
1.分配host內存,并進行數(shù)據(jù)初始化;
2.分配device內存,并從host將數(shù)據(jù)拷貝到device上;
3.調用CUDA的核函數(shù)在device上完成指定的運算;
4.將device上的運算結果拷貝到host上;
5.釋放device和host上分配的內存。
?
標簽: