新聞中心
助力GPU高性能計(jì)算 OpenCL標(biāo)準(zhǔn)發(fā)布
作者:無(wú)名 2009-04-22 18:26:55
服務(wù)器
服務(wù)器產(chǎn)品
云計(jì)算 OpenCL是首個(gè)開(kāi)放的免費(fèi)通用并行計(jì)算標(biāo)準(zhǔn),將統(tǒng)一管理一臺(tái)主機(jī)的所有計(jì)算資源,比如你的多核CPU、GPU等,OpenCL將這些資源統(tǒng)一看作計(jì)算單元,共同發(fā)揮運(yùn)算能力完成各類(lèi)計(jì)算任務(wù)。

創(chuàng)新互聯(lián)專(zhuān)注于阜寧企業(yè)網(wǎng)站建設(shè),自適應(yīng)網(wǎng)站建設(shè),成都做商城網(wǎng)站。阜寧網(wǎng)站建設(shè)公司,為阜寧等地區(qū)提供建站服務(wù)。全流程按需求定制設(shè)計(jì),專(zhuān)業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專(zhuān)業(yè)和態(tài)度為您提供的服務(wù)
OpenCL是***開(kāi)放的免費(fèi)通用并行計(jì)算標(biāo)準(zhǔn),將統(tǒng)一管理一臺(tái)主機(jī)的所有計(jì)算資源,比如你的多核CPU、GPU等,OpenCL將這些資源統(tǒng)一看作計(jì)算單元,共同發(fā)揮運(yùn)算能力完成各類(lèi)計(jì)算任務(wù)。OpenCL統(tǒng)一編程環(huán)境,開(kāi)發(fā)者能輕松利用異構(gòu)平臺(tái)寫(xiě)出高效的程序來(lái)。OpenCL將在服務(wù)器、PC和手持設(shè)置等上得到廣泛應(yīng)用。
OpenCL開(kāi)發(fā)歷程
OpenCL最早由Apple在六月提交到了Khronos Group,這是一個(gè)業(yè)界的標(biāo)準(zhǔn)化組織,旨在提供一個(gè)通用的開(kāi)放API,在此基礎(chǔ)上開(kāi)發(fā)GPU通用計(jì)算軟件,隨后Khronos成立“OpenCL工作組”負(fù)責(zé)標(biāo)準(zhǔn)的制訂工作,在短短的幾個(gè)月時(shí)間內(nèi),OpenCL就完成了從無(wú)到有的蛻變。
OpenCL工作組成員
OpenCL工作組的成員包括:3Dlabs、AMD、蘋(píng)果、ARM、Codeplay、愛(ài)立信、飛思卡爾、Graphic Remedy、IBM、Imagination Technologies、Intel、諾基亞、NVIDIA、摩托羅拉、QNX、高通、三星、Seaweed、德州儀器和瑞典Ume大學(xué)等。像Intel、NVIDIA和AMD都是這個(gè)標(biāo)準(zhǔn)的支持者,不過(guò)微軟并不在其列。
作為倡導(dǎo)者蘋(píng)果已經(jīng)宣布其明年發(fā)布的Mac OS X 10.6 Snow Leopard操作系統(tǒng)將集成OpenCL標(biāo)準(zhǔn),實(shí)際上這也是促成OpenCL標(biāo)準(zhǔn)發(fā)布的重要條件之一。
NVIDIA和AMD宣布采用OpenCL 1.0標(biāo)準(zhǔn)
作為圖形芯片的兩大巨頭,NVIDIA擁有自己的CUDA架構(gòu),AMD有自己的Stream Acceleration,同時(shí)他們又是OpenCL的支持者。在OpenCL標(biāo)準(zhǔn)發(fā)布之后,AMD和NVIDIA立即表態(tài),宣布即將采用OpenCL 1.0編程規(guī)范。
AMD會(huì)將合適的編譯器和運(yùn)行庫(kù)整合進(jìn)免費(fèi)的ATI Stream軟件開(kāi)發(fā)包(SDK),作為OpenCL的創(chuàng)始人之一,AMD一直以來(lái)都極力推崇OpenCL,并盡力趕在2009年上半年開(kāi)發(fā)出ATI Stream SDK的開(kāi)發(fā)者版本,實(shí)現(xiàn)對(duì)OpenCL 1.0的支持。而NVIDIA則會(huì)把它加入GPU計(jì)算工具包,因此,這兩家的顯卡都將支持OpenCL 1.0。從長(zhǎng)遠(yuǎn)來(lái)看,這兩家廠商共享同一個(gè)開(kāi)放型的規(guī)格對(duì)于消費(fèi)者來(lái)說(shuō)是件好事。
OpenCL不會(huì)取代CUDA
CUDA作為NVIDIA最近力推的并行計(jì)算架構(gòu),目前已取得非常不錯(cuò)的成就。顯然大多數(shù)的讀者都有一個(gè)疑問(wèn),開(kāi)放式的OpenCL標(biāo)準(zhǔn)的出臺(tái),CUDA將何去何從?
作為OpenCL標(biāo)準(zhǔn)的制定者之一,NVIDIA肯定不會(huì)蠢到作自掘墳?zāi)沟氖隆?shí)際上現(xiàn)在OpenCL工作組的主席就是NVIDIA的一位副總裁任職,引導(dǎo)很多OpenCL的開(kāi)發(fā),NVIDIA公司不少員工都在參與這項(xiàng)工作,當(dāng)然還有很多其他公司的開(kāi)發(fā)人員。從OpenCL一開(kāi)始NVIDIA就和Apple公司進(jìn)行非常緊密的合作,OpenCL開(kāi)發(fā)的過(guò)程中,它的技術(shù)平臺(tái)都是NVIDIA的GPU,換而言之OpenCL是在NVIDIA GPU的平臺(tái)進(jìn)行開(kāi)發(fā)的。OpenCL在大概兩個(gè)多月以前進(jìn)行的***次演示平臺(tái)也是NVIDIA的GPU,可以說(shuō)NVIDIA是***家展示運(yùn)行中OpenCL程序的公司。從這個(gè)角度看,NVIDIA和OpenCL之間在關(guān)系十分密切。
CUDA架構(gòu),支持C、OpenCL等
對(duì)于CUDA而言,最主要的包含兩個(gè)方面:一個(gè)是ISA指令集架構(gòu),另一個(gè)是硬件計(jì)算引擎,這兩個(gè)方面是CUDA的架構(gòu)。CUDA到目前為止,它包含了一個(gè)C語(yǔ)言的編譯器,不僅如此,還可以支持其他的API,包括OpenCL或者DirectX,以后還將有其他語(yǔ)言的接口,包括Fortran、Java、Python等??梢哉f(shuō)這種架構(gòu)是原生的,專(zhuān)門(mén)為計(jì)算接口而建造的一個(gè)架構(gòu)。
有了CUDA指令集,有了支持CUDA的硬件,就可以利用不同的途徑來(lái)進(jìn)行開(kāi)發(fā)調(diào)用GPU的計(jì)算能力,你可以用OpenCL或者DirectX這樣的API來(lái)進(jìn)行開(kāi)發(fā),也可以用C語(yǔ)言或者Fortran或者Java開(kāi)發(fā),最終的結(jié)果是殊途同歸。
針對(duì)CUDA的OpenCL和C的編程模式
當(dāng)然API和C語(yǔ)言進(jìn)行開(kāi)發(fā)是有些不同的,API作為編程接口,它的核心是函數(shù)庫(kù)和應(yīng)用程序開(kāi)發(fā)的一個(gè)硬件接口,它有一個(gè)好處就是可以訪問(wèn)比較低層次的硬件,對(duì)于硬件有比較好的控制權(quán),很多的東西特別是像內(nèi)存的管理,是需要開(kāi)發(fā)者自己來(lái)進(jìn)行管理的。而在利用CUDA C語(yǔ)言來(lái)編程的時(shí)候,很多東西是由開(kāi)發(fā)環(huán)境來(lái)進(jìn)行管理的,比如內(nèi)存他是用runtime進(jìn)行管理的,相對(duì)來(lái)說(shuō)要容易得多。兩者的關(guān)系有點(diǎn)像低級(jí)語(yǔ)言和高級(jí)語(yǔ)言間的關(guān)系。
不管是用OpenCL還是用CUDA C語(yǔ)言來(lái)編程,最終它們都是需要通過(guò)一個(gè)驅(qū)動(dòng)程序來(lái)變成一個(gè)PTX的代碼,PTX相當(dāng)于CUDA指令集,然后交給圖形處理其或者交給硬件來(lái)進(jìn)行執(zhí)行。
OpenCL對(duì)開(kāi)發(fā)者、業(yè)界人員和消費(fèi)者來(lái)說(shuō)都是一個(gè)非常好的API,它可以使得開(kāi)發(fā)者很容易的開(kāi)發(fā)出跨平臺(tái)的GPU計(jì)算程序,充分利用GPU強(qiáng)大的計(jì)算能力然后應(yīng)用在各種領(lǐng)域。對(duì)于NVIDIA來(lái)說(shuō),在CUDA架構(gòu)上除了C語(yǔ)言以外,現(xiàn)在新增加了OpenCL或者DX11這樣的API,提供了更多的GPU計(jì)算開(kāi)發(fā)環(huán)境選擇。如果開(kāi)發(fā)者對(duì)API很熟悉的話,肯定會(huì)樂(lè)意看到OpenCL或者新的API的加入,對(duì)于他們來(lái)說(shuō)很容易利用這些API開(kāi)發(fā)出各種各樣GPU計(jì)算程序。
簡(jiǎn)單的說(shuō),OpenCL只是一個(gè)API,一個(gè)編程接口,它是對(duì)CUDA架構(gòu)的有益補(bǔ)充,實(shí)際上OpenCL是利用CUDA驅(qū)動(dòng)程序堆棧來(lái)在NVIDIA GPU上實(shí)現(xiàn)高性能計(jì)算,OpenCL標(biāo)準(zhǔn)的出臺(tái),CUDA更是如虎添翼。
【編輯推薦】
- 青蓮AOS演繹多核風(fēng)暴
- 曙光天闊I650-H 征戰(zhàn)多核服務(wù)器市場(chǎng)
- 啟明星辰突破性能瓶頸 推出萬(wàn)兆多核UTM平臺(tái)
本文題目:助力GPU高性能計(jì)算OpenCL標(biāo)準(zhǔn)發(fā)布
網(wǎng)站路徑:http://m.fisionsoft.com.cn/article/dhehich.html


咨詢
建站咨詢
