I've read the complete spec opencl-1.0.48.pdf but I couldn't find an imporant info:
The CL_DEVICE_LOCAL_MEM_SIZE of clGetDeviceInfo.... is per compute unit. You should make it very clear because, currently, is not clear at all if it's by device, by compute unit or what.
The description says, it is 'The Size of local memory arena in bytes'. Doesn't that say it is per compute unit?