现在我正在调用 clGetPlatformInfo 两次。第一次得到结果的大小,第二次得到实际的结果。如果我想获得 20 条信息,这意味着我必须调用 40 次(80 行代码)。有没有更好的方法来做到这一点?
clGetPlatformInfo 示例
char *profile = NULL;
size_t size;
clGetPlatformInfo(platforms[0], CL_PLATFORM_PROFILE, NULL, profile, &size); // get size of profile char array
profile = (char*)malloc(size);
clGetPlatformInfo(platforms[0], CL_PLATFORM_PROFILE,size, profile, NULL); // get profile char array
cout << profile << endl;
clGetDeviceInfo 示例
size_t size;
char *vendor = NULL;
clGetDeviceInfo(devices[0], CL_DEVICE_VENDOR, NULL, NULL, &size);
vendor = (char*)malloc(sizeof(char)*size);
clGetDeviceInfo(devices[0], CL_DEVICE_VENDOR, size, vendor, NULL);
cout << vendor << endl;