Привет, я получаю сообщение об ошибке доступа .....
В чем может быть проблема в моем коде ??Когда я изменяю W и H на 10, он отлично работает.
#define W 100
#define H 100
#define MAX 100000
int** GetImage()
{
int **img = new int*[W];
for(size_t i = 0 ; i < W ; i++ )
img[i] = new int[H];
for(int i=0;i<W;i++)
for(int j=0;j<H;j++)
img[i][j]=255;
return img;
}
int main()
{
int **image = GetImage();
float **dtr = initDistances(image);
//cuda memory allocation
int **devImage;
float **devDt;
int sizei = W*H*sizeof(int);
int sizef = W*H*sizeof(float);
cudaMalloc((void**)&devImage, sizei);
cudaMalloc((void**)&devDt, sizef);
//copy to GPU
cudaMemcpy(devImage, image, sizei, cudaMemcpyHostToDevice); <-- access violation here
cudaMemcpy(devDt, dtr, sizef, cudaMemcpyHostToDevice);
return 0;
}