AMD APP SDK安裝
官方提供的Installation Guide給出了Windows,Linux,OS-X的OpenCL安裝配置。
此處按照自己的環(huán)境進行介紹。筆者的電腦比較老,配置為
i5 2450M的CPU,AMD Radeon HD 7400M的GPU
軟件環(huán)境為Windows 7 64bit + VS2013
從AMD官方網(wǎng)站下載顯卡驅(qū)動程序安裝,再下載AMD APP SDK 3.0安裝包(如找不到下載鏈接,可聯(lián)系作者提供),安裝的默認(rèn)路徑為:
C:\Program Files (x86)\AMD APP SDK\3.0
安裝完畢后會自動生成環(huán)境變量(如果沒有的話,自己在環(huán)境變量里新建即可)
AMDAPPSDKROOT = C:\Program Files (x86)\AMD APP SDK\3.0
在系統(tǒng)環(huán)境變量PATH中添加
$(AMDAPPSDKROOT)\bin\x86_64
安裝好AMDAPPSDK之后,打開cmd,輸入clinfo命令,將顯示出支持OpenCL的硬件信息,如下圖(只截取了部分)

VS2013工程配置
以下以一個例子說明VS2013環(huán)境下OpenCL的配置
- 新建解決方案,命名為cl_add
- 解決方案上右鍵點擊屬性,彈出屬性頁窗口。依次選擇“C/C++” -> “常規(guī)” -> “附加包含目錄” -> “編輯”,在彈出的界面中輸入 C:\Program Files %28x86%29\AMD APP SDK\3.0\include (根據(jù)各自的SDK安裝目錄做相應(yīng)修改),如下圖所示

- 依次選擇“鏈接器” -> “常規(guī)” -> “附加庫目錄” -> “編輯”,輸入 C:\Program Files %28x86%29\AMD APP SDK\3.0\lib\x86 (x86還是x86_64與操作系統(tǒng)是32位還是64位無關(guān),只有VS的編譯器有關(guān),32位編譯器則選x86),如下圖所示

- 依次選擇“鏈接器” -> “輸入” -> “附加依賴項” -> “編輯”,輸入OpenCL.lib,如下圖

通過以上4步即可完成VS2013下OpenCL環(huán)境的配置。可以將此時配置好的屬性頁保存下來,以后新建項目時在屬性管理器中直接添加即可,以下保存下來的屬性信息(OpenCL.props),為xml格式
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets" />
<PropertyGroup Label="UserMacros" />
<PropertyGroup />
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>C:\Program Files %28x86%29\AMD APP SDK\3.0\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<AdditionalLibraryDirectories>C:\Program Files %28x86%29\AMD APP SDK\3.0\lib\x86;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalDependencies>OpenCL.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemGroup />
</Project>
此處提供一個測試代碼,cl_add.cpp,主機端程序和內(nèi)核程序放在了一起。如果環(huán)境配置沒問題的話,加入新建工程即可運行,輸入結(jié)果如下:
