I have a simple kernel, in which I'm allocating some space using malloc, simply as:
__global__ void chainKernel() {
float* __restrict__ boo = (float*)malloc(sizeof(float));
*boo = 0;
*boo = *boo + 100;
return;
}
If I put a breakpoint on *boo = *boo + 100
I can't see the contents of *boo. Instead I get Operation is not valid due to the current state of the object
next to the variable in the debugger window. If I remove the __restrict__
however, the value is shown correctly. Is this normal behavior?
My system: CUDA 5.5.20, Nsight 3.1.0.13141, Windows 7 x64, VS2010, GeForce GTX Titan.