When running my application, I get the following error:
../../../cpucommand.cpp:260: ShouldNotReachHere()
Please provide your system configuration:CPU,GPU,SDK,Driver,OS.
Have you tried debugging your code using GDB?
Originally posted by: himanshu.gautam Please provide your system configuration:CPU,GPU,SDK,Driver,OS.
Have you tried debugging your code using GDB?
I'm using an Intel processor with SDK 2.4, which I know is an unsupported configuration, but I'm pretty sure the error will appear on an AMD processor as well. I'm using Ubuntu 10.10.
Using GDB and commenting stuff out, I found this error is caused by a single barrier() call after doing a massive loop. In fact, if I comment out any of the barriers in my main loop, the code runs to completion (though, not necessarily correctly). I'm working on a repro to try to isolate the cause.
I'd buy that. The looping code is very complicated with lots of branching and such. I tried to ensure that each thread enters every loop and conditionally executes real code while hitting every barrier, but I think I might have missed a few. Thanks Micah!
In 2.5, would it be possible to detect this problem and report it less ambiguously?
So, this is definitely the issue. I replaced all my barriers with __BARRIER(type) where:
#define __BARRIER(type) \
printf("\t__BARRIER hit by thread %d\n", get_local_id(0));\
barrier(type);