CUDA中所有线程的全局变量

时间:2013-02-16 01:16:08

标签: cuda boolean global-variables

我的控制台应用程序中需要全局bool变量,所以如何声明它?

1 个答案:

答案 0 :(得分:6)

为了声明一个驻留在CUDA全局内存中的变量,您需要在其前面加上__device__个关键字,例如

__device__ bool myGlobalBoolVar;

或者,您可以使用cudaMalloc在全局内存空间中分配内存,例如

bool* myGlobalBoolVarPtr;
cudaMalloc(&myGlobalBoolVarPtr, sizeof(bool));

然后您可以将指针作为参数传递给内核。注意,指针参数本身将驻留在常量或共享内存空间中(取决于体系结构),但它将指向全局内存。