opencl: work and buffers implementation