特斯拉K80和OpenCL
我有一台Nvidia Tesla K80放在LINUX机箱中。我知道特斯拉K80内部有两个GPU。当我在那台机器上运行OpenCL程序,在所有设备上循环时,我看到了四台设备(4台特斯拉K80)。你知道为什么会这样吗 以下是主机代码:特斯拉K80和OpenCL,opencl,gpgpu,nvidia,tesla,Opencl,Gpgpu,Nvidia,Tesla,我有一台Nvidia Tesla K80放在LINUX机箱中。我知道特斯拉K80内部有两个GPU。当我在那台机器上运行OpenCL程序,在所有设备上循环时,我看到了四台设备(4台特斯拉K80)。你知道为什么会这样吗 以下是主机代码: ret = clGetPlatformIDs(0, NULL, &platformCount); openclCheck(ret); platforms = (cl_platform_id*) malloc(sizeof(cl_platform_id) *
ret = clGetPlatformIDs(0, NULL, &platformCount); openclCheck(ret);
platforms = (cl_platform_id*) malloc(sizeof(cl_platform_id) * platformCount);
ret = clGetPlatformIDs(platformCount, platforms, NULL); openclCheck(ret);
printf("Detect %d platform available.\n",platformCount);
for (unsigned int i= 0; i < platformCount; i++) {
// get all devices
ret = clGetDeviceIDs(platforms[i], CL_DEVICE_TYPE_GPU, 0, NULL, &deviceCount); openclCheck(ret)
devices = (cl_device_id*) malloc(sizeof(cl_device_id) * deviceCount);
ret = clGetDeviceIDs(platforms[i], CL_DEVICE_TYPE_GPU, deviceCount, devices, NULL); openclCheck(ret)
printf("Platform %d. %d device available.\n", i+1, deviceCount );
// for each device print critical attributes
for (unsigned int j = 0; j < deviceCount; j++) {
// print device name
ret = clGetDeviceInfo(devices[j], CL_DEVICE_NAME, 0, NULL, &valueSize); openclCheck(ret)
value = (char*) malloc(valueSize);
ret = clGetDeviceInfo(devices[j], CL_DEVICE_NAME, valueSize, value, NULL); openclCheck(ret)
printf("\t%d. Device: %s\n", j+1, value);
free(value);
//more code here to print device attributes
最有可能的是2个是32位实现,2个是来自多个驱动程序的64位实现。可能旧的驱动程序需要通过一些显示驱动程序卸载软件进行清理。请检查每个设备实现的位
或者,有虚拟gpu(网格?)服务处于活动状态,导致设备重复,因此您可以停用虚拟gpu来解决此问题 最有可能的是2个是32位实现,2个是来自多个驱动程序的64位实现。可能旧的驱动程序需要通过一些显示驱动程序卸载软件进行清理。请检查每个设备实现的位
或者,有虚拟gpu(网格?)服务处于活动状态,导致设备重复,因此您可以停用虚拟gpu来解决此问题 clinfo还显示4个设备在命令提示下,运行
nvidia smi
并将输出粘贴(编辑)到问题中打印所有设备的所有信息。clinfo还显示4个设备在命令提示下,运行nvidia smi
并将输出粘贴(编辑)到问题中打印所有设备的所有信息。
Detect 1 platform available.
Platform 1. 4 device available.
1. Device: Tesla K80
1.1 Hardware version: OpenCL 1.2 CUDA
1.2 Software version: 352.79
1.3 OpenCL C version: OpenCL C 1.2
1.4 Parallel compute units: 13
2. Device: Tesla K80
2.1 Hardware version: OpenCL 1.2 CUDA
2.2 Software version: 352.79
2.3 OpenCL C version: OpenCL C 1.2
2.4 Parallel compute units: 13
3. Device: Tesla K80
3.1 Hardware version: OpenCL 1.2 CUDA
3.2 Software version: 352.79
3.3 OpenCL C version: OpenCL C 1.2
3.4 Parallel compute units: 13
4. Device: Tesla K80
4.1 Hardware version: OpenCL 1.2 CUDA
4.2 Software version: 352.79
4.3 OpenCL C version: OpenCL C 1.2
4.4 Parallel compute units: 13