在英特尔CPU上运行OpenCL代码

在英特尔CPU上运行OpenCL代码,opencl,intel,Opencl,Intel,现在我正在测试在英特尔cpu上运行OpenCL源代码 我使用了这个页面上的源代码() 我选择了2.4版本,当然使用了位于../opencl/NW/的NW算法源代码 我的环境是Windows 7 64位操作系统/英特尔(R)至强(R)CPU W3530/NVIDIA Quadro 600 我安装了visual studio 2013和NVIDIA 6.0 CUDA tookit 首先,我可以在我的gpu上运行这个源代码。它运行得很好 但当我设置use_gpu=0(这意味着CL_设备类型CPU)时,

现在我正在测试在英特尔cpu上运行OpenCL源代码

我使用了这个页面上的源代码()

我选择了2.4版本,当然使用了位于../opencl/NW/的NW算法源代码

我的环境是Windows 7 64位操作系统/英特尔(R)至强(R)CPU W3530/NVIDIA Quadro 600

我安装了visual studio 2013和NVIDIA 6.0 CUDA tookit

首先,我可以在我的gpu上运行这个源代码。它运行得很好

但当我设置use_gpu=0(这意味着CL_设备类型CPU)时,程序在openclapi函数行的第一行停止。(可能是clGetPlatformIDs)

因此,我在()上安装了64位纯CPU运行时,在()上安装了英特尔SDK for OpenCL Applications 2014测试版

但是当我再次运行这个文件时,我得到了

'OpenCLProject2.exe' (Win32): Loaded 'C:\Windows\System32\ntmarta.dll'. Symbols loaded.
'OpenCLProject2.exe' (Win32): Loaded 'C:\Windows\System32\Wldap32.dll'. Symbols loaded.
'OpenCLProject2.exe' (Win32): Loaded 'C:\Program Files (x86)\Common Files\Intel\OpenCL\bin\x64\cpu_device64.dll'. Cannot find or open the PDB file.
'OpenCLProject2.exe' (Win32): Loaded 'C:\Program Files (x86)\Common Files\Intel\OpenCL\bin\x64\tbb\tbb.dll'. Cannot find or open the PDB file.
The thread 0x1438 has exited with code -1 (0xffffffff).
The program '[4480] OpenCLProject2.exe' has exited with code -1 (0xffffffff).
此消息和clCreateContextFromType API返回错误

现在我不能继续工作了

我想知道为什么错误行包括(Win32)或(x86)或System32,尽管我安装了windows7 64位操作系统和64位版本的纯CPU运行时


给我一些建议。Thx.

“无法找到或打开PDB文件”表示加载DLL时没有调试信息(PDB)。应用程序错误与这些消息无关。。。。与应用程序错误相关的是失败的OpenCL API调用的返回值-那么
clCreateContextFromType
究竟返回了什么呢?我使用printf函数来确定错误是什么。错误代码为-1,这意味着找不到OpenCL设备。我认为intel CPU仍然不能被识别为设备。请尝试Geeks3D的GPU Caps Viewer之类的工具。它有一个OpenCL选项卡,列出了所有可用的平台和设备,允许您查看是否列出了您的CPU。我怀疑您的特定Xeon CPU可能不受OpenCL CPU运行时的支持。如果是这样的话,那么您可能会在AMD应用程序SDK的CPU运行时(适用于更多来自Intel和AMD的CPU)上获得更大的成功。您可能还想查看Intel OpenCL SDK版本之间的[比较],因为有些版本只适用于Xeon处理器。