subbuffes + 1.0

Can someone explain to me why the subbuffers routine SUCCEEDS on a 1.0 system for me?

I have mac osx lion 10.7 and the host system supports 1.1 (so it compiles using the gl subbuffers call) - but it also WORKS on the 1.0 device?

CL_DEVICE_NAME: GeForce 9400M
CL_DEVICE_VENDOR: NVIDIA
CL_DRIVER_VERSION: CLH 1.0
CL_DEVICE_VERSION: OpenCL 1.0

That sounds like a bug in the OpenCL implementation. Perhaps filing a bug report on the Khronos bug tracker will help, but since it is Nvidia, there is little hope for that.

Big surprise there.

however, the book I’m reading says sub-buffers are a software-only facility. So maybe having a 1.1 host is enough to have it suceed on a 1.0 device. Either way I NEED this functionality so I can’t complain.

Though I’ve found the following list of disastrous bugs in the CL implementation on apple if anyone wants to compare notes

Old macbook + osx 10.7
[ul]*GL sharing + PBO writes = nvidia channel exception (kernel fault) = doesn’t work.[/ul]

retina macbook + 10.8
[ul]*After awhile, creation of command queue fails for GPU with invalid_value. Have to reboot to fix.
*Passing arguments to clBuildProgram and THEN using it again for a separate program with a NULL options parameter returns a random error and fails to build the program, usually with out of host memory (I have 16 gb of ram). I must then use empty string for build options instead.
*/Sometimes/ using non-normalized image reads on a CPU context results in invalid instruction. I haven’t been able to reproduce this lately.
*If you get a linker error that you’re calling a function that doesn’t exist (such as atan2f), you’ll need to reboot to build the program even after fixing the error.
[/ul]