ariável global em CUDA
Como posso criar variáveis globais em CUDA ?? Você poderia me dar um exemplo?
Como criar matrizes dentro de uma função CUDA, por exemplo
__global__ void test()
{
int *a = new int[10];
}
omo criar uma matriz global e acessá-la a partir desta função. por exempl
__device__ int *a;
__global__ void test()
{
a[0] = 2;
}
Or Como posso usar como o seguinte ..
__global__ void ProcessData(int img)
{
int *neighborhood = new int[8];
getNeighbourhood(img, neighbourhood);
}
Ainda tenho algum problema com isso. Eu achei que comparar com
__device__
se eu definir
"__device__ __constant__" (read only)
melhorará o acesso à memória. Mas meu problema é que tenho uma matriz na memória do host, digamos
float *arr = new float[sizeOfTheArray];
Quero torná-lo como uma matriz variável no dispositivo e preciso modificá-lo na memória do dispositivo e copiá-lo novamente para o host. Como eu posso fazer isso?