一、查看計算機對OpenCL異構計算的支持情況
使用 GPU Caps Viewer 查看計算機對OpenCL的支持情況,目前最新的版本是 gpu-caps-viewer-1-32-0, 下載地址:http://www.geeks3d.com/20161107/gpu-caps-viewer-1-32-0-released/
從上面兩個圖可以看到目前的計算機上有2個OpenCL platform,
1、Intel(R) Core(TM) i7-6700K CPU @ 4.0 支持 OpenCL 2.1 full profile
2、 GeForce GTX 1070 支持 OpenCL 1.2 以及 CUDA 8.0.44 full profile
NVIDIA顯卡只對CUDA支持很好,對OpenCL支持的不是很好。
二、下載安裝CUDA 8.0
下載安裝CUDA 8.0, 這個不介紹了,百度都有的,我安裝在C盤,在目錄 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0 下面有OpenCL以及CUDA相關的頭文件以及lib等。
三、OpenCL dll文件
在驅動程序的默認安裝路徑如C:\Program Files\NVIDIA Corporation\OpenCL 找到 OpenCL.dll以及OpenCL64.dll
四、VS2015 工程配置
打開VS2015,新建工程,點擊 [File]->[New]->[Project]打開New project嚮導對話框,建立一個Win32 Console Application 空項目。項目名就叫 clHello, Location選擇 D:\workspace\clHello\, 點擊OK創建工程,如下圖所示:
1、添加代碼文件, clHello.cpp以及 clHello.cl, 編輯好最後的工程如下圖所示:
2、選中新建的解決方案,右鍵點擊解決方案名稱(clHello),選擇屬性選項(Properties)
3、 選中VC++ Directories標籤頁,分別在Include Directories以及Library Directories輸入第二小節提到的CUDA 8.0的 include目錄路徑以及lib目錄路徑,Execute Directories添加 C:\Program Files\NVIDIA Corporation\OpenCL, 即OpenCL的dll目錄,如下圖所示:
4、選中Linker->Input->Additional Dependencies輸入OpenCL.lib
最終的程序運行結果如下圖所示: