Hello, I have a strange behaviour of the cudaThreadSynchronize() function.
This is my source code and what it happens:
for (t=0;t<10;t++) {
runneus<<<dim3(GRID / TBX, SLICES / TBY),dim3(TBX,TBY)>>>(neus,rnds,100,70,10.0);
printf("%s\n",cudaGetErrorString(cudaGetLastError()));
runsyns<<<dim3(GRID / CHX, SLICES),dim3(CHX ,NPRE)>>>(neus);
printf("%s\n",cudaGetErrorString(cudaGetLastError()));
reduces<<<dim3(GRID / CHX, SLICES),dim3(CHX ,NPRE)>>>(neus);
printf("%s\n",cudaGetErrorString(cudaGetLastError()));
getch();
//cudaThreadSynchronize();
printf("\n");
}
in this way no error is reported by the cudaGetLastError().
When I enable (erase the // remark) this is the output:
no error
no error
no error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
unknown error
does anyone solved this error? What’s happening?
thankyou…