OpenCL在Win7下的安裝與配置


1:在http://developer.amd.com/tools-and-sdks/heterogeneous-computing/amd-accelerated-parallel-processing-app-sdk/downloads/根據相應的操作系統,下載最新的 AMD APP SDK。在AMD APP SDK目前支持Windows VISTA[32][64]bit,Windows 7[32][64]bit操作系統。

在http://support.amd.com/cn/gpudownload/windows/Pages/auto_detect.aspx下載AMD驅動安裝程序,會檢測系統的顯卡,自動下載驅動

2:如果已經安裝了低版本的 SDK,需要先進行卸載操作。然后,用戶依次安裝AMD driver和AMD APP SDK. AMD APP SDK目前支持VS2008和VS2010開發環境。在安裝過程中會自動添加一部分環境變量。

3:在運行->cmd中鍵入clinfo,查看輸出信息,如果所有計算設備都能找到,說明安裝成功。

4.創建空的工程文件

  • 文件 -> 新建 -> 項目...
  • Visual C++ -> Win32 -> Win32控制台程序
  • 輸入你的工程文件名

5.配置一些工程屬性

  • Right click on the project-> "屬性"
  • Select "所有配置" in [配置] at左上角
  • Configuration Porperties -> "C/C++" ->"常規" -> "附件包含目錄"
  • 添加"$(AMDAPPSDKROOT)include"
  • Configuration Porperties ->"C/C++"->"預編譯頭" -> "附件依賴項"
  • 使用"不添加預編譯頭"
  • Configuration Porperties -> "鏈接器"->"常規"  -> "附件庫目錄"
  • 添加 "$(AMDAPPSDKROOT)lib\x86"
  • Configuration Porperties ->"鏈接器"->"輸入" -> "附件依賴項"
  • 添加 "OpenCL.lib"

6.輸出結果

補充

-------------------------------------------------------------

注釋1:C語言頭文件#include<unistd.h>的作用 unistd.h不是c語言的東西,是linux/unix的系統調用,包含了許多 U N I X系統服務的函數原型,例如 r e a d,w r i t e和getpid函數。 unistd.h在unix中類似於window中的windows.h!

#ifdef WIN32
#include <windows.h>

#else #include <unistd.h>
#endif

注釋2:
浮點數不可能完全相等,因為寄存器的長度是有限制的,32bit和64bit,32位只能保留1位符號位,8位階,23位尾數。64位為1位符號位,11位階,52位尾數。所以浮點數不是精確的數(同理,double也是),一般來說,對於float x和float y,如果這兩個浮點數相等,就是abs(x-y) < 0.000001這樣判斷一般是沒有什么問題的。

 for(i = 0; i < count; i++)
    {
        if(abs(results[i] - data[i] * data[i] ))
            correct++;
    }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM