I have an OpenCL kernel with 5 __constant kernel arguments which sum to 34368 bytes total. These are both less than the reported limits of 9 constant arguments, with a maximum size of 65536. If I keep the arguments as __constant, it compiles fine and the call to clEnqueueNDRange succeeds. However, when I try to wait for it with clWaitForEvents, I get the error CL_OUT_OF_RESOURCES and everything fails. If I change the __constant to __global, it works. It also seems that sometimes if I let 1 argument be __constant, it also works, but this doesn’t work for all the arguments.
This was working on a 285 GTX. I now tried it on a 480 GTX, and now I have this problem. This is using OpenCL 1.0, CUDA 3.2.1 with driver 260.19.06 on Ubuntu x86_64. Is anyone else having similar problems?