我正在使用这个教程http://www.obellianne.fr/alexandre/tutorials/OpenCL/tuto_opencl_codeblocks.php我的gpu是radeon hd 6970我的amd app和驱动程序是最新的我的os是windows 8 当我在教程中运行代码时,它只识别我的cpu
答案 0 :(得分:1)
查看该项目的源代码,我看到以下几行:
cl_int result = clGetPlatformIDs(num_entries, platforms, &available);
err = clGetDeviceIDs(platforms[0], CL_DEVICE_TYPE_ALL, maxDevices, deviceIDs, &numDevices);
代码仅查询系统中的一个设备平台。我不知道它是哪个平台,但GPU设备通常与CPU设备不同,平台也会因制造商负责(Intel,AMD,NVidia等)而有所不同。
您需要修改此代码以查询返回的每个平台ID的设备,而不仅仅是第一个平台。
答案 1 :(得分:0)
您确定系统中的GPU驱动程序安装正确吗?我在安装了驱动程序的ubuntu中遇到了这个问题,但由于某些问题,系统无法检测到GPU。您可以尝试查看“clinfo”的输出,以确保系统能够将您的GPU检测为opencl设备