cl_context context = clCreateContext(contextProps, 1, new cl_device_id[] { device_id },
null, null, null);
commandQueue = clCreateCommandQueue(context, device_id, 0, null);
String kernelSource = processKernel();
cl_program program = clCreateProgramWithSource(context, 1,
new String[] {kernelSource}, null, null);
clBuildProgram(program, 0, null, "-cl-mad-enable", null, null);
kernel = clCreateKernel(program, "path_trace", null);
sampleBuffer = clCreateBuffer(context, CL_MEM_READ_WRITE,
3 * bufferWidth * bufferHeight * Sizeof.cl_float, null, null);