CL_OUT_OF_RESOURCES moving to 280.13 on linux 64

Hi,

Would anyone have an idea why clFinish would return CL_OUT_OF_RESOURCES with 280.13 on linux 64, when I see no such problem on 270.41.19?

This is the first clFInish after the first clEnqueueNDRangeKernel.

My previous memory allocations are similar and only account for about 2/3 of the available memory on the GPU (unpinned memory).

Thanks you,

Lionel

I can isolate the problem to this part of the code:

This leads to invalid xm4…xp3 values with the 280.13 drivers
xm4 = k2DZSizeIn * ( x & 7);
xm3 = k2DZSizeIn * ((x + 1) & 7);
xm2 = k2DZSizeIn * ((x + 2) & 7);
xm1 = k2DZSizeIn * ((x + 3) & 7);
x0 = k2DZSizeIn * ((x + 4) & 7);
xp1 = k2DZSizeIn * ((x + 5) & 7);
xp2 = k2DZSizeIn * ((x + 6) & 7);
xp3 = k2DZSizeIn * ((x + 7) & 7);

If I replace this with this slower implementation (modulo instead of bit mask) with the 280.13 drivers, the kernel does not fail
xm4 = k2DZSizeIn * ( x % 8);
xm3 = k2DZSizeIn * ((x + 1) % 8);
xm2 = k2DZSizeIn * ((x + 2) % 8);
xm1 = k2DZSizeIn * ((x + 3) % 8);
x0 = k2DZSizeIn * ((x + 4) % 8);
xp1 = k2DZSizeIn * ((x + 5) % 8);
xp2 = k2DZSizeIn * ((x + 6) % 8);
xp3 = k2DZSizeIn * ((x + 7) % 8);

The failure in the first case first occurs for xm1 with x = 5, (8 & 7) does not return 0 and leads to a the code addressing unallocated memory. I have no easy way of knowing what the return value is.