Use clEnqueueWriteBuffer instead of copying the buffer as part of clCreateBuffer. This seems to improve performance drammatically.