1288 cl_int err = clBuildProgram( program, num_devices, device_list, options,
1289 callback, user_data );
1290 if( err == CL_SUCCESS )
1292 std::string str = std::string(
"Failed to build program: " ) +
name;
1293 if ( err == CL_BUILD_PROGRAM_FAILURE ) {
1294 const opencl_device_list &devices = f.devices();
1295 for (
auto d = devices.begin();
d != devices.end(); ++
d ) {
1296 std::cerr <<
"Build log for device: " << (*d).name() << std::endl;
1298 cl_int query_err = clGetProgramBuildInfo(
1299 program, (*d).my_cl_device_id, CL_PROGRAM_BUILD_LOG, 0, NULL,
1303 std::vector<char> output;
1304 output.resize( log_size );
1305 query_err = clGetProgramBuildInfo(
1306 program, (*d).my_cl_device_id, CL_PROGRAM_BUILD_LOG,
1307 output.size(), output.data(), NULL );
1309 std::cerr << output.data() << std::endl;
1311 std::cerr <<
"No build log available" << std::endl;
void const char const char int ITT_FORMAT __itt_group_sync x void const char ITT_FORMAT __itt_group_sync s void ITT_FORMAT __itt_group_sync p void ITT_FORMAT p void ITT_FORMAT p no args __itt_suppress_mode_t unsigned int void size_t ITT_FORMAT d
void enforce_cl_retcode(cl_int err, std::string msg)
void const char const char int ITT_FORMAT __itt_group_sync x void const char * name