我正在使用CUDA優化一些代碼。我不知道我是否應該使用裏面cudaMalloc _全球_功能(FUN1)否(不是X已分配基於GPU的內存?):CUDA(嵌套?)內存分配
__global__ void fun2(double *y)
{
int i=blockIdx.x;
y[i]=...;
}
__global__ void fun1(double *x)
{
//should I cudaMalloc() y for fun2 or just use the x which was already allocated in main?
fun2<<<N,1>(x);
...
}
int main(){
double *x;
...
cudaMalloc((void**)&x, N*sizeof(double));
fun1<<<N,1>>>(x);
...
}
不能調用cudaMalloc設備代碼。而且我不確定你是否可以在另一個全局函數中調用全局函數。你只能擁有3.5代GPU。 –
所以我不能優化包含其他功能的功能嗎? –
描述你的問題,請 –