First, sorry to my short english grammer…
I am trying to learn a CUDA by myself and I am the beginner about CUDA.
These days I tried to practice shared memory to make a convolution.
Below is part of my code…
global void convolutionGPU(unsigned char *d_Result, unsigned char *d_Data, unsigned char *d_filter, int dataW, int dataH)
__shared__ unsigned char data[256+KERNEL_RADIUS][256+KERNEL_RADIUS]; const int gLoc = threadIdx.x + (blockIdx.x*blockDim.x) + (threadIdx.y * 512) + (blockIdx.y*blockDim.y)*512; int x,y; const int x0=threadIdx.x+(blockIdx.x*blockDim.x); const int y0=threadIdx.y+(blockIdx.y*blockDim.y); x=x0-KERNEL_RADIUS; y=y0-KERNEL_RADIUS; if(x<0 || y<0) data[threadIdx.x][threadIdx.y]=0; . . .
When I run the progrram. there’s a error, mentioned like this,
LINK : fatal error LNK1181: ‘.\Debug\convolution.obj’
and it said it is not possible to open the input file.
I don’t know why this things happen…
Is there any one who can let me why this things happen and teach me how to use shared memory?
(That error is come because of data[threadIdx.x][threadIdx.y] parts.)
Thank you for reading until here.