1

我的控制台应用程序中需要全局布尔变量,那么如何声明它?

4

1 回答 1

7

为了声明将驻留在 CUDA 全局内存中的变量,您需要将__device__关键字放在它前面,例如

__device__ bool myGlobalBoolVar;

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

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

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

于 2013-02-16T08:37:42.713 回答