amd app sdk官網下(xià)載 最新(xīn)軟件|熱門排行|軟(ruǎn)件分類|軟件專題|廠(chǎng)商大全

您的(de)位置: 首頁編程開發(fā)編(biān)程工具 → amd app sdk v3.0 中(zhōng)文(wén)版

amd app sdk

v3.0 中文版 amd app sdk 網友評分:8

同(tóng)類相關軟件

軟件介紹

軟件(jiàn)標簽: amdappsdk 編程工具

AMD APP SDK是一組高級的軟硬件技術。這款軟件能夠使圖形處理(lǐ)器(AMDGPU)和係統(tǒng)的x86內核(hé)(CPU)共同協作。幫(bāng)助用戶(hù)快而高效的完成任務。歡迎選哦的用戶來下載使用(yòng)。

AMD APP SDK官網介紹

AMD APP,是AMD Accelerated Parallel Processing的縮寫。中文譯作(zuò)AMD加速並行(háng)處理技(jì)術。是AMD針對旗(qí)下圖(tú)形處(chù)理器(GPU)所(suǒ)推出的通用並行(háng)計算(suàn)技術。利用這種技術可以(yǐ)充分發(fā)揮(huī)AMD GPU的並行運算能力,用於對軟(ruǎn)件進(jìn)行(háng)加速運算(suàn)或進行大型(xíng)的科學運算。AMD APP技術的(de)前身稱作ATI Stream。2010年10月,隨著AMD Radeon HD6800係列顯卡的發布,ATI品牌正式被AMD取代。ATI Stream技術也隨著技術(shù)升級並更(gèng)名為AMD APP技術。AMD APP的競爭對手是nVIDIA CUDA。(來(lái)自百度百科)

amd app sdk官方下(xià)載

AMD最(zuì)近發(fā)布了支持最新的OpenCL 2.0標準的最新通用計(jì)算開發包(bāo)AMD APP SDK 3.0。這標誌著(zhe)異構計(jì)算發展道路上(shàng)的(de)一(yī)個新的裏程碑。OpenCL 2.0實施了很多(duō)AMD所倡導的新的異構係統架構。值(zhí)得注意的是(shì),GPU和CPU設備之間的數據結構指針內存共享的(de)概念可以大大地(dì)簡化GPU參與(yǔ)加速計算的步驟。比起利用OpenCL 1.2,GPU設備利用了OpenCL 2.0排隊功能進行計算任務,為計算內核提供(gòng)了一種更(gèng)加強(qiáng)悍的編程模(mó)型。OpenCL 1.2的通用地址空間是一個強大的(de)編程優勢,但是OpenCL 2.0 引(yǐn)用了(le)一種新的(de)內存對象,叫Pipe,這個(gè)在(zài)采用FIFO機製進行數(shù)據(jù)采集時起到重要的(de)作用。OpenCL的這些還有其他優勢將會幫助你利用現(xiàn)代異(yì)構係統性能的巨大潛力。

AMD APP SDK安(ān)裝(zhuāng)方法

安裝過程,我們一般選擇默認(rèn)路徑就行,直接點下一步完成安裝。如果選擇默認自動安裝,那麽會自動(dòng)生成變量

AMDAPPSDKROOT=C:\Program Files\AMD APP SDK\3.0-0-Beta\(32位機)

AMDAPPSDKROOT=C:\Program Files(x86)\AMD APP SDK\3.0-0-Beta\(64位機)。

如果不是(shì)選擇默認安裝路徑,那(nà)麽就需要(yào)人為(wéi)修(xiū)改。

係統(tǒng)環境變量PATH需要作(zuò)如下修改,32位(wèi)機和64位(wèi)機分別添加

$(AMDAPPSDKROOT)\bin\x86,對應的就是(shì)C:\Program Files\AMD APP SDK\3.0-0-Beta\bin\x86

$(AMDAPPSDKROOT)\bin\x86_64,對應(yīng)的就是C:\Program Files(x86)\AMD APP SDK\3.0-0-Beta\bin\x86_64

安裝好AMDAPPSDK之後,在命令行下運(yùn)行clinfo命令,將顯(xiǎn)示出你支(zhī)持OpenCL的(de)硬(yìng)件信息。

AMD APP SDK配(pèi)置(zhì)

 我們(men)先新建一(yī)個簡單(dān)的工程(chéng),不妨(fáng)取(qǔ)名為Simpleproject,然後編譯連接運行。代碼(mǎ)的內容我(wǒ)們(men)先不探討,在下文中(zhōng)會有詳細介(jiè)紹。

#include <Cl/cl.h>

#include <stdio.h>

#define NWITEMS 512

//A simple memset kernel

const char *source = 

"__kernel void memset( __global uint *dst ) \n"

"{ \n"

" dst[get_global_id(0)] = get_global_id(0); \n"

"} \n";

int main(int argc, char ** argv)

{

// 1. Get a platform.

cl_platform_id platform;

clGetPlatformIDs( 1, &platform, NULL );

// 2. Find a gpu device.

cl_device_id device;

clGetDeviceIDs( platform, CL_DEVICE_TYPE_GPU,1,&device,NULL);

// 3. Create a context and command queue on that device.

cl_context context = clCreateContext( NULL, 1, &device, NULL, NULL, NULL);

cl_command_queue queue = clCreateCommandQueue( context, device, 0, NULL );

// 4. Perform runtime source compilation, and obtain kernel entry point.

cl_program program = clCreateProgramWithSource( context, 1, &source, NULL, NULL );

clBuildProgram( program, 1, &device, NULL, NULL, NULL );

cl_kernel kernel = clCreateKernel( program, "memset", NULL );

// 5. Create a data buffer.

cl_mem buffer = clCreateBuffer( context, CL_MEM_WRITE_ONLY, NWITEMS*sizeof(cl_float), NULL, NULL);

// 6. Launch the kernel. Let OpenCL pick the local work size.

size_t global_work_size = NWITEMS;

clSetKernelArg(kernel, 0, sizeof(buffer), (void*) &buffer);

clEnqueueNDRangeKernel( queue, kernel, 1, NULL, &global_work_size, NULL, 0, NULL, NULL);

clFinish( queue );

// 7. Look at the results via synchronous buffer map.

cl_uint *ptr;

ptr = (cl_uint *) clEnqueueMapBuffer( queue, buffer, CL_TRUE, CL_MAP_READ, 0, NWITEMS * sizeof(cl_uint), 0, NULL, NULL, NULL );

int i;

for(i=0; i < NWITEMS; i++)

printf("%d %d\n", i, ptr[i]);

return 0;

}

   不出意外的(de)話,編譯(yì)過不了,有下(xià)麵的提示。

fatal error C1083: Cannot open include file: 'Cl/cl.h': No such file or directory

   顯然(rán),這是(shì)因為工(gōng)程需要的頭文件我們的環(huán)境(jìng)並沒有把它包(bāo)含進(jìn)來,所以,要做如下(xià)配置:

   打開項(xiàng)目的Property Pages,在C/C++ -> General  ->Additional Include Directories 中添加(jiā)

$(AMDAPPSDKROOT)/include;


   點擊(jī)Build工程之後,出現了下麵錯誤。這是由於(yú)我們(men)並沒有把(bǎ)工程需要(yào)的連接庫文件(jiàn)添加(jiā)進來的問題。需要作如下配置。

1>SimpleProject.obj : error LNK2019: unresolved external symbol _clGetPlatformIDs@12 referenced in function _main

1>SimpleProject.obj : error LNK2019: unresolved external symbol _clGetDeviceIDs@24 referenced in function _main

1>SimpleProject.obj : error LNK2019: unresolved external symbol _clCreateContext@24 referenced in function _main

1>SimpleProject.obj : error LNK2019: unresolved external symbol _clCreateBuffer@24 referenced in function _main

1>SimpleProject.obj : error LNK2019: unresolved external symbol _clCreateProgramWithSource@20 referenced in function _main

1>SimpleProject.obj : error LNK2019: unresolved external symbol _clBuildProgram@24 referenced in function _main

1>SimpleProject.obj : error LNK2019: unresolved external symbol _clCreateKernel@12 referenced in function _main

1>SimpleProject.obj : error LNK2019: unresolved external symbol _clSetKernelArg@16 referenced in function _main

1>SimpleProject.obj : error LNK2019: unresolved external symbol _clFinish@4 referenced in function _main

1>SimpleProject.obj : error LNK2019: unresolved external symbol _clEnqueueMapBuffer@44 referenced in function _main

1>SimpleProject.obj : error LNK2019: unresolved external symbol _clEnqueueNDRangeKernel@36 referenced in function _main

1>SimpleProject.obj : error LNK2019: unresolved external symbol _clCreateCommandQueue@20 referenced in function _main

   打開項(xiàng)目的Property Pages,在Linker -> General  ->Additional Library Directories 中(zhōng)添加

$(AMDAPPSDKROOT)\lib\x86\;

   在(zài)Linker -> Input  ->Additional Dependencies中選擇(zé)Edit,然後添加

OpenCL.lib

   Inherited values中默認的(de)值應該為:

kernel32.lib

user32.lib

gdi32.lib

winspool.lib

comdlg32.lib

advapi32.lib

shell32.lib

ole32.lib

oleaut32.lib

uuid.lib

odbc32.lib

odbccp32.lib

AMD APP SDK

 程序運行成功。至此(cǐ),AMD APP SDK 3.0的下載安裝(zhuāng)和配置都已經完(wán)成了,不明白之(zhī)處請(qǐng)參閱手(shǒu)冊。

軟件截圖

下載地址 電(diàn)腦版

點擊報(bào)錯 軟件無法下(xià)載(zǎi)或下載(zǎi)後無(wú)法使用,請點擊報(bào)錯,謝謝!

用戶評論

熱(rè)門評論(lùn)

最(zuì)新評論

發表(biǎo)評論 查看(kàn)所(suǒ)有評論(0)

昵稱:
請(qǐng)不要評(píng)論無意(yì)義或髒話,我們所(suǒ)有評(píng)論會有(yǒu)人工審核.
字數: 0/500 (您(nín)的評論需要經過審核才能顯(xiǎn)示)