Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
OpenCL Nvidia和Intel平台在一台机器上_Opencl_Nvidia_Intel - Fatal编程技术网

OpenCL Nvidia和Intel平台在一台机器上

OpenCL Nvidia和Intel平台在一台机器上,opencl,nvidia,intel,Opencl,Nvidia,Intel,我使用的服务器有一个CPU Intel Xeon(E5-2620)、一个Intel麦克风(5110P)和一个GPU Nvidia K20m。 我的OpenCL代码能够看到每个平台(Nvidia和Intel)的每个设备。 由于某些原因,我现在只能看到Intel设备。 我无法理解的是我使用Nvidia OpenCL库编译代码。 /etc/OpenCL/vendors/nvidia.icd文件的内容正确。 在我的代码中,我显式指定了OpenCL的英伟达库。 似乎我们的管理员重新安装或更新了驱动程序,从

我使用的服务器有一个CPU Intel Xeon(E5-2620)、一个Intel麦克风(5110P)和一个GPU Nvidia K20m。 我的OpenCL代码能够看到每个平台(Nvidia和Intel)的每个设备。
由于某些原因,我现在只能看到Intel设备。
我无法理解的是我使用Nvidia OpenCL库编译代码。
/etc/OpenCL/vendors/nvidia.icd文件的内容正确。
在我的代码中,我显式指定了OpenCL的英伟达库。 似乎我们的管理员重新安装或更新了驱动程序,从那时起它就不再工作了

我还尝试了测试代码clInfo.c,但也遇到了同样的问题

下面是我如何构建它的:

gcc -w -lOpenCL clInfo.c
输出如下所示:

./a.out: /usr/lib64/nvidia/libOpenCL.so.1: no version information available (required by ./a.out)
Found 1 platform(s).
platform[0xa69cc0]: profile: FULL_PROFILE
platform[0xa69cc0]: version: OpenCL 1.2 LINUX
platform[0xa69cc0]: name: Intel(R) OpenCL
platform[0xa69cc0]: vendor: Intel(R) Corporation
... 
有人能解释一下吗?

谢谢。

实际上,我卸载了驱动程序,并意识到存在一些冲突。
然后我安装了最新版本,现在一切正常。

谢谢大家的帮助

您如何在
clInfo.c
中扫描平台?你的配置发生了什么变化,导致它自动停止工作?它应该通过ICD机制工作,你让它工作过一次。某些驱动程序安装可能会踩在ICD上。尝试安装丢失的系统驱动程序,看看它是否修补了ICD表。@Tom我使用CLGetPlatformID和CLGetDeviceID。我不知道到底发生了什么,我想管理员重新安装了驱动程序。“他现在不在,我得想想办法了。”迪瑟马斯特:谢谢,如何检查ICD的状态。你是说重新安装英伟达驱动程序吗?@ Eric Sorry,我不知道ICD表是如何在Linux下工作的。在Windows下,条目存储在注册表中。由于缺少NVIDIA,我会尝试安装它。在ArchLinux上也有同样的问题。我安装了CUDA和OpenCL nvidia。pacman-R cuda,现在一切都好了。