297
297
num_devices = ret_size / sizeof(cl_device_id);
299
for(i = 0; i < num_devices; i++)
301
// err = clGetDeviceInfo(devices[i], CL_DEVICE_TYPE, sizeof(device_type), &device_type, NULL);
304
// if(device_type == CL_DEVICE_TYPE_GPU)
307
err = clBuildProgram(plan->program, 1, &devices[i], "-cl-mad-enable", NULL, NULL);
308
if (err != CL_SUCCESS)
311
char devicename[200];
314
err = clGetProgramBuildInfo(plan->program, devices[i], CL_PROGRAM_BUILD_LOG, 0, NULL, &log_size);
317
build_log = (char *) malloc(log_size + 1);
319
err = clGetProgramBuildInfo(plan->program, devices[i], CL_PROGRAM_BUILD_LOG, log_size, build_log, NULL);
322
err = clGetDeviceInfo(devices[i], CL_DEVICE_NAME, sizeof(devicename), devicename, NULL);
325
fprintf(stdout, "FFT program build log on device %s\n", devicename);
326
fprintf(stdout, "%s\n", build_log);
335
ERR_MACRO(CL_INVALID_CONTEXT);
299
err = clBuildProgram(plan->program, num_devices, devices, "-cl-mad-enable", NULL, NULL);
300
if (err != CL_SUCCESS)
303
char devicename[200];
306
err = clGetProgramBuildInfo(plan->program, devices[i], CL_PROGRAM_BUILD_LOG, 0, NULL, &log_size);
309
build_log = (char *) malloc(log_size + 1);
311
err = clGetProgramBuildInfo(plan->program, devices[i], CL_PROGRAM_BUILD_LOG, log_size, build_log, NULL);
314
err = clGetDeviceInfo(devices[i], CL_DEVICE_NAME, sizeof(devicename), devicename, NULL);
317
fprintf(stdout, "FFT program build log on device %s\n", devicename);
318
fprintf(stdout, "%s\n", build_log);
337
324
err = createKernelList(plan);