999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于GPU的CUDA應用開發環境構架

2013-09-12 01:49:48陳曉翔林嘉宇
微處理機 2013年1期
關鍵詞:環境

鄧 力,陳曉翔,林嘉宇

(國防科學技術大學電子科學與工程學院,長沙 410073)

1 引言

從1999年NVIDIA公司最早提出圖形處理單元GPU到現在,GPU的應用已經不再局限于3D圖形處理了,并已經演變成為了一個具有強大浮點數編程和計算能力的處理器,以滿足人們進行大規模科學計算的要求。事實也證明,GPU在浮點運算、并行計算等計算方面,可以提供數十倍乃至于上百倍于CPU的性能。因此,選擇具有巨大市場潛力并為開發者提供開源應用開發環境的CUDA作為開發平臺,并對其環境平臺的搭建與應用進行介紹。

2 CUDA+VS2008應用開發環境架構

CUDA是由硬件和軟件架構共同組成的,這個架構可以讓 GPU 執行由 C、C++、Fortran、OpenCL、DirectCompute以及其他語言所編寫的程序。在PC上其應用開發平臺的搭建,總體上分為驅動程序、編譯器和編程環境的安裝三個部分。以操作系統Win7(64位)家庭普通版Service Pack 1的筆記本作為基本平臺,介紹CUDA4.1+VS2008開發環境搭建的步驟及相關事項。

2.1 CUDA 平臺搭建

從NVIDIA官方網站下載以下程序:

1)devdriver_4.1_winvista - win7_64_286.16_notebook.exe

2)cudatoolkit_4.1.28_win_64.msi(CUDA 平臺:版本為4.1.28,操作系統為 windows64位)

3)gpucomputingsdk_4.1.28_win_64.exe(CUDA的軟件開發工具包:版本為4.1.28,操作系統為windows64位)

2.1.1 devdriver安裝

由于使用的顯卡是NVIDIA GeForce GT 540M,因此需要首先安裝驅動程序包,即上面提到的devdriver_4.1_winvista - win7_64_286.16_notebook.exe(驅動程序:版本為4.1,操作系統為winvistawin7-64位,機型為筆記本),注意在從NVIDIA官方網站下載時要選擇與開發應用的PC平臺相對應的版本。

2.1.2 cudatoolkit安裝

接著,安裝 cudatoolkit_4.1.28_win_64.msi(CUDA 平臺:版本為 4.1.28,操作系統為 windows64位),注意下載時選擇對應的版本。

devdriver和cudatoolkit程序最好都執行默認安裝。

2.1.3 gpucomputingsdk 安裝

最后,安裝 gpucomputingsdk_4.1.28_win_64.exe(CUDA 的軟件開發工具包:版本為4.1.28,操作系統為windows64位),注意下載時選擇對應的版本。

建議按照缺省路徑安裝,但若覺得查找路徑麻煩,也可自己指定安裝目錄。

完成上述3步后,其cudatoolkit和 gpucomputingsdk默認路徑分別為:

1)C:Program FilesNVIDIA GPU Computing Toolkit

2)C:ProgramDataNVIDIA CorporationNVIDIA GPU Computing SDK 4.1

下面用SDK_PATH代表C:ProgramDataNVIDIA CorporationNVIDIA GPU Computing SDK 4.1。

2.1.4 安裝檢查

在win7的環境變量中,檢查相關參數是否添加到系統變量里,如表1所示,若沒有則需自行添加。

表1 環境變量

以上步驟完成了對CUDA應用平臺的安裝。

2.2 VS2008 平臺搭建

目前,支持 CUDA的 IDE有 VS2005、VS2008、VS2010等,以 Microsoft Visual Studio Team System 2008 Architecture Edition為例,安裝完成后按下面步驟進行配置和測試。

為運行gpucomputingsdk里的例程,首先得用VS2008生成兩個工具庫文件:

1)使用VS2008打開SDK_PATHCcommoncutil_vs2008.sln,選“生成→批生成→全選→生成”。目的:為生成各配置需要的 cutil32[D].lib和 cutil64[D].lib,lib存放的位置:SDK_PATHccommonlib(win32|X64)。

2)使用 VS2008打開 SDK_PATHsharedshr Utils_vs2008.sln,選“生成→批生成→全選→生成”。目的:為生成各配置需要的 shrUtils32D.lib和 shr Utils64D.lib,lib 存放的位置:SDK_PATH\sharedlib(win32|X64)。

注意:這個項目編譯時有可能會提示有兩個.cpp找不到,直接把他們從項目里移去即可。因為同名的.h文件里已經有完整代碼了。

在VS2008中,選“工具→項目和解決方案→VC++目錄”,在win32|X64的庫文件中添加“C:Program FilesNVIDIA GPU Computing ToolkitCUDAv4.1lib”、“SDK_PATHCcommonlib”兩個路徑;在win32|X64的引用文件和包含文件中添加“C:Program FilesNVIDIA GPU Computing ToolkitCUDAv4.1include”、“SDK_PATHCcommoninc”、“SDK_PATHsharedinc”三個路徑。目的:使VS2008能找到相關頭文件和庫文件。

然后,選“工具→項目和解決方案→VC++目錄項目設置”,將*.cu;*.cuh添加到C/C++文件擴展名中。目的:使VS2008能執行上述類型文件。

最后,選“工具→選項→文本編輯器→文件擴展名”,將.cu和.cuh添加到 Microsoft Visual C++編輯器里。目的:使VS2008識別上述類型文件中C/C++語法。

使用VS2008打開SDK_PATHCsrcandwidthTestandwidthTest_vs2008.sln,按照“編譯”→“生成bandwidthTes”→“調試”→“啟動”,就會出現其結果。

3 CUDA調用GPU的性能測試

用VS2008創建一個空白的win32控制程序,在該項目里添加.cu文件,并編寫了兩個程序,一個直接用CPU計算1-300000的整數平方和并循環100次,另一個調用GPU計算1-300000的整數平方和并循環100次,并通過 QueryPerformanceFrequency函數進行了時間統計,如表2所示。

表2 環境變量

從結果可以看出GPU運算花費的時間幾乎可以不計(約為0.02ms);CPU運算花費的時間(約為63ms)是GPU運算花費時間的3150倍;在初始化設備、開辟空間和向GPU傳入數據上花費的時間(約為(522+1882)=2404ms)是CPU運算花費時間的38倍。上述測試數據表明GPU的科學計算能力明顯強于CPU,但是GPU與CPU進行數據通信是GPU運算的一個“瓶頸”。因此,只有對于可以進行大規模數據并行計算的程序,即當進行并行計算所節約的時間大大超過GPU與CPU相互調用時所浪費的時間時,GPU才能突顯出其強大的科學計算優勢。

4 結 束 語

多核CPU和多核GPU的出現意味著并行系統已成為主流處理器芯片。此外,根據摩爾定律,其并行性將不斷擴展。這就需要開發出可透明地擴展并行性的應用軟件,以便利用日益增加的處理器內核數量。這種情況就像3D圖形應用程序可通過透明地擴展其并行性的方式,以支持配備各種數量內核的多核GPU。CUDA正是基于應對這種挑戰,而提供的一種并行編程模型和軟件環境。同時,保證了熟悉C語言等標準編程語言的程序員能夠快速掌握并使用它。隨著該開發環境構架的不斷發展與成熟,開發者將能夠更加自由地發揮其靈感與創意,使GPU給人們的工作、教育、休閑、娛樂帶來豐富多彩的應用。

[1]Jason Sanders,edward Kandrot.CUDA BY EXAMPLE[M].Addison - Wesley Professional,2011.

[2]科克,胡文美.大規模并行處理器編程實戰[M].北京:清華大學出版社,2010.

[3]NVIDIA CUDA C Programming Guide(Version3.1.1)[EB/OL].NVIDIA Corporation,2010.

[4]NVIDIA CUDA C Programming Best Practices Guide(Version3.1)[EB/OL].NVIDIA Corporation,2010.

[5]張舒,褚艷利,趙開勇,張玉勃.GPU高性能運算之CUDA[M].北京:中國水利水電出版社,2009.

[6]李波,趙華成,張敏芳.CUDA高性能計算并行編程[J].程序員,2009,25(9):55-64.

猜你喜歡
環境
長期鍛煉創造體內抑癌環境
一種用于自主學習的虛擬仿真環境
孕期遠離容易致畸的環境
不能改變環境,那就改變心境
環境與保護
環境
孕期遠離容易致畸的環境
高等院校環境類公選課的實踐和探討
掌握“三個三” 兜底環境信訪百分百
我國環境會計初探
中國商論(2016年33期)2016-03-01 01:59:38
主站蜘蛛池模板: 青青青视频蜜桃一区二区| 亚洲中字无码AV电影在线观看| 亚洲一区精品视频在线| 午夜精品久久久久久久无码软件| 色偷偷男人的天堂亚洲av| 精品国产毛片| 色哟哟国产精品| 精品天海翼一区二区| 啪啪啪亚洲无码| 波多野一区| 欧美中日韩在线| 成人一级黄色毛片| 成人福利在线视频| 亚洲欧美一区二区三区蜜芽| 亚洲日韩精品无码专区| 亚洲精品你懂的| 国产无码网站在线观看| 欧美亚洲国产精品久久蜜芽| 97一区二区在线播放| 国产丝袜一区二区三区视频免下载| 无遮挡国产高潮视频免费观看 | 在线看AV天堂| 2020国产精品视频| 孕妇高潮太爽了在线观看免费| 2020国产精品视频| 亚洲v日韩v欧美在线观看| 精品无码人妻一区二区| 香蕉99国内自产自拍视频| 天天做天天爱天天爽综合区| 国产亚洲欧美在线中文bt天堂| 精品小视频在线观看| 日韩精品一区二区三区视频免费看| 亚洲视频四区| 亚洲精品色AV无码看| 久久久黄色片| 国产色网站| 91久久精品日日躁夜夜躁欧美| 欧美亚洲另类在线观看| 伊人激情综合网| 中文字幕第4页| 国产精品区网红主播在线观看| 国产美女精品一区二区| 久久综合丝袜长腿丝袜| 亚洲自偷自拍另类小说| 国产人成乱码视频免费观看| 国产成人一区免费观看| 亚洲一区毛片| 久久国产V一级毛多内射| 精品精品国产高清A毛片| 亚洲熟女中文字幕男人总站| 国产视频大全| 99ri精品视频在线观看播放| 国产精品福利社| 亚洲无码高清免费视频亚洲| 亚洲成a人片| 午夜精品久久久久久久99热下载| 国产麻豆永久视频| AV不卡国产在线观看| www.亚洲色图.com| 国产精品不卡永久免费| 亚洲水蜜桃久久综合网站| 亚洲国产天堂在线观看| 国产一在线观看| a亚洲视频| 麻豆国产精品一二三在线观看| 三上悠亚一区二区| 91偷拍一区| 福利在线一区| 爱色欧美亚洲综合图区| 91探花在线观看国产最新| 国产成人精品一区二区秒拍1o| 中文字幕2区| 国产成人高清精品免费| 欧美不卡二区| 91久久偷偷做嫩草影院精品| 国产在线98福利播放视频免费| 日本午夜视频在线观看| 又粗又大又爽又紧免费视频| 亚洲精品视频免费看| 老司国产精品视频91| 亚洲男人在线天堂| 9999在线视频|