麻豆91精品91久久久_91桃色在线观看_精品视频一区二区三区_精品国产96亚洲一区二区三区_国产成人综合亚洲欧美天堂_最新中文字幕在线_亚洲天堂网站_亚洲欧美日韩精品

首頁(yè) 行業(yè)新聞 正文

給CPU直接開掛!從OpenPOWER的CAPI+FPGA看第二代異構(gòu)計(jì)算

 什么是異構(gòu)計(jì)算?可能在很多人看來(lái)感覺(jué)高深莫測(cè),我們可以先用一個(gè)比喻來(lái)簡(jiǎn)單的解釋一下。比如在做簡(jiǎn)單的整數(shù)算數(shù)時(shí),知道算法口訣的人,心算即可,但遇到比較復(fù)雜的算數(shù)問(wèn)題時(shí),就得需要一個(gè)計(jì)算器了,但在這個(gè)運(yùn)算過(guò)程中,一些簡(jiǎn)單的計(jì)算可以提前由心算完成再輸入計(jì)算器,比如計(jì)算“(5+2)÷26”,可能我們直接就輸入“7÷26”了。又或者是完全交給計(jì)算器進(jìn)行計(jì)算,但這也需要人腦控制手指進(jìn)行計(jì)算器的數(shù)值輸入,此時(shí)你的大腦與計(jì)算器就構(gòu)成了完成這道數(shù)學(xué)計(jì)算任務(wù)的“異構(gòu)計(jì)算系統(tǒng)”。
日常生活中最常見的異構(gòu)計(jì)算——人腦+計(jì)算器

日常生活中最常見的異構(gòu)計(jì)算——人腦+計(jì)算器

就像你的大腦的結(jié)構(gòu)與計(jì)算器完全不一樣,異構(gòu)計(jì)算,顧名思義就是在系統(tǒng)內(nèi)參與計(jì)算的執(zhí)行單元在指令集架構(gòu)(ISA, Instruction Set Architectures)層面是不同的。最為典型的例子,就是通用計(jì)算圖形處理器(GPGPU,General-Purpose computing on Graphics Processing Units),與現(xiàn)場(chǎng)可編程門陣列 (FPGA,F(xiàn)ield-Programmable Gate Array)。從嚴(yán)格意義上講,ISA相同,只是處理核心大小同的組合,并不算是異構(gòu)計(jì)算,比如英特爾的x86處理器+MIC(集成眾核加速器),以及ARM處理器的big.LITTLE大小核心的混合設(shè)計(jì)。

異構(gòu)計(jì)算簡(jiǎn)史

為什么要用異構(gòu)計(jì)算,想想開頭的例子就清楚了,如果人腦就是主流的通用處理器的話,那么異構(gòu)計(jì)算就是為這個(gè)處理器額外配備的“計(jì)算器”,用來(lái)執(zhí)行更高復(fù)雜度的計(jì)算或應(yīng)用,而這種復(fù)雜度主要指的就是超大規(guī)模的并行處理,對(duì)于更擅長(zhǎng)串行處理的CPU來(lái)說(shuō)是一個(gè)極大的互補(bǔ)。

異構(gòu)計(jì)算的概念本身其實(shí)并不新鮮,最早可以追溯到30年前(在某些定義中,則是以指令集的處理模式來(lái)區(qū)分異構(gòu),但基本上已并非是主流概念),可要談到異構(gòu)計(jì)算的真正崛起,則要從2001年用GPU實(shí)現(xiàn)通用矩陣計(jì)算開始,而標(biāo)志性事件發(fā)生在2005年,GPU終于在執(zhí)行LU分解(用于解線性方程組)的性能方面戰(zhàn)勝了CPU,從那之后,基于GPU的大規(guī)模并行計(jì)算方案開始嶄露頭角。

CPU+GPGPU是目前最為知名的異構(gòu)計(jì)算組合,也是第一代異構(gòu)計(jì)算的典型代表

CPU+GPGPU是目前最為知名的異構(gòu)計(jì)算組合,也是第一代異構(gòu)計(jì)算的典型代表

2007年,NVIDIA推出了專門用于簡(jiǎn)化GPU應(yīng)用編程的統(tǒng)一計(jì)算設(shè)備架構(gòu)(CUDA,Compute Unified Device Architecture),它標(biāo)志著GPU的通用計(jì)算應(yīng)用開發(fā)開始走向易用、成熟。時(shí)至今日,GPU+CPU的異構(gòu)計(jì)算系統(tǒng)已經(jīng)越來(lái)越多的出現(xiàn)在高性能計(jì)算系統(tǒng)(HPC),大大彌補(bǔ)了CPU在浮點(diǎn)運(yùn)算方面的能力。

當(dāng)然,在GPGPU之前其實(shí)還有多種芯片在向通用計(jì)算領(lǐng)域邁進(jìn),其中之一就是FPGA,它是最可匹敵于GPGPU的異構(gòu)計(jì)算技術(shù)。

2012年英特爾發(fā)布的Atom E6x5C嵌入式處理器,就已經(jīng)在單Socket封裝上整合了Altera的FPGA,但這個(gè)FPGA的主要任務(wù)不是計(jì)算,而是針對(duì)不同應(yīng)用場(chǎng)景的I/O定制化與指定的信號(hào)處理,很難用于通用場(chǎng)合

2012年英特爾發(fā)布的Atom E6x5C嵌入式處理器,就已經(jīng)在單Socket封裝上整合了Altera的FPGA,但這個(gè)FPGA的主要任務(wù)不是計(jì)算,而是針對(duì)不同應(yīng)用場(chǎng)景的I/O定制化與指定的信號(hào)處理,很難用于通用場(chǎng)合

FPGA于1985年誕生,很快就開始嘗試在通用計(jì)算領(lǐng)域的運(yùn)用,可以說(shuō)比GPGPU的出現(xiàn)還要早。GPGPU所擅長(zhǎng)的浮點(diǎn)運(yùn)算,F(xiàn)PGA同樣也在積極參與,但成果遠(yuǎn)沒(méi)有GPGPU顯著(看看超級(jí)計(jì)算機(jī)全球TOP500的排名配置就知道了),而在整數(shù)型運(yùn)算方面,雖然FPGA更有優(yōu)勢(shì),可惜那時(shí)的計(jì)算量除非個(gè)別應(yīng)用,普遍并不大,CPU自己就能搞定,所以FPGA加速更多用于細(xì)分應(yīng)用市場(chǎng),應(yīng)用規(guī)模相對(duì)來(lái)說(shuō)并不大。不過(guò),隨著物聯(lián)網(wǎng)、大數(shù)據(jù)、人工智能、機(jī)器學(xué)習(xí)等新興的大規(guī)模數(shù)據(jù)處理需求的不斷涌現(xiàn),現(xiàn)在它的機(jī)會(huì)要來(lái)了,而且底層互聯(lián) 技術(shù)也比當(dāng)前的異構(gòu)系統(tǒng)更為先進(jìn),它就是由OpenPOWER CAPI所開辟的新一代異構(gòu)計(jì)算平臺(tái),主打CAPI+FPGA的組合。

而在我看來(lái),它們其實(shí)是開啟了第二代異構(gòu)計(jì)算的時(shí)代。

FPGA如何為應(yīng)用加速?

從第一款FPGA芯片于1985年由Xilinx(賽靈思)正式推出至今,已經(jīng)有30年歷史,它是在可編程陣列邏輯(PAL,Programmable Array Logic)、通用陣列邏輯(GAL,Generic Array Logic)、復(fù)雜可編程邏輯器件(CPLD,Complex Programmable Logic Device) 等技術(shù)的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。與CPU不同的是,它的邏輯是硬件可編程的,而CPU則是通過(guò)軟件編程來(lái)執(zhí)行相應(yīng)的計(jì)算,和專用集成電路(ASIC,Application Specific Integrated Circuit)相比,它又相當(dāng)于一種半成品的邏輯芯片,ASIC則是針對(duì)某類應(yīng)用進(jìn)行專門的固化設(shè)計(jì),以達(dá)到最優(yōu)的性能。

從字面意思上就可以想像得到FPGA是一個(gè)可隨意定制內(nèi)部邏輯的陣列,并且可以在用戶現(xiàn)場(chǎng)進(jìn)行即時(shí)編程修改內(nèi)部的硬件邏輯,這一點(diǎn)是CPU和ASIC都無(wú)法做到的。要想明白FPGA的原理,的確需要一定的數(shù)字電路基礎(chǔ),在此只做簡(jiǎn)要的介紹,以解釋為什么FPGA可以在某些工作上比CPU更為出色。

FPGA的內(nèi)部主要是由用于實(shí)現(xiàn)硬件邏輯的邏輯塊(LB,Logic Block)、負(fù)責(zé)LB互聯(lián)的內(nèi)部互聯(lián)交換節(jié)點(diǎn)(IS,Interconnection Switch)以及負(fù)責(zé)輸入輸出的I/O Block組成,它們都是可編程的,而隨著技術(shù)的進(jìn)步,F(xiàn)PGA芯片里也越來(lái)越多的集成相關(guān)的固定器件與硬核(IP)電路,如乘法器、數(shù)字信號(hào)處理器(Digital Signal Processor)等,以進(jìn)一步加速相關(guān)的運(yùn)算,并完善相關(guān)的功能(比如I/O)

FPGA的內(nèi)部主要是由用于實(shí)現(xiàn)硬件邏輯的邏輯塊(LB,Logic Block)、負(fù)責(zé)LB互聯(lián)的內(nèi)部互聯(lián)交換節(jié)點(diǎn)(IS,Interconnection Switch)以及負(fù)責(zé)輸入輸出的I/O Block組成,它們都是可編程的,而隨著技術(shù)的進(jìn)步,F(xiàn)PGA芯片里也越來(lái)越多的集成相關(guān)的固定器件與硬核(IP)電路,如乘法器、數(shù)字信號(hào)處理器(Digital Signal Processor)等,以進(jìn)一步加速相關(guān)的運(yùn)算,并完善相關(guān)的功能(比如I/O)

LB是FPGA內(nèi)的基本邏輯單元,是FPGA可實(shí)現(xiàn)邏輯編程的基礎(chǔ),而在LB中最常用的邏輯編程器件就是查找表(LUT,Look Up Table,又稱直譯表),通過(guò)編程它可以實(shí)現(xiàn)輸入與輸出的直接對(duì)應(yīng)關(guān)系,從而實(shí)現(xiàn)了輸入與輸出的硬邏輯,在應(yīng)用時(shí),直接根據(jù)輸入的值,通過(guò)LUT給出相應(yīng)的輸出值。輸入的組合根據(jù)輸入端口數(shù)量而定,比如4個(gè)端口就可實(shí)現(xiàn)16種輸入組合(2的4次方),而一個(gè)LB可以包含有多個(gè)LUT,實(shí)現(xiàn)更復(fù)雜的邏輯組合

LB是FPGA內(nèi)的基本邏輯單元,是FPGA可實(shí)現(xiàn)邏輯編程的基礎(chǔ),而在LB中最常用的邏輯編程器件就是查找表(LUT,Look Up Table,又稱直譯表),通過(guò)編程它可以實(shí)現(xiàn)輸入與輸出的直接對(duì)應(yīng)關(guān)系,從而實(shí)現(xiàn)了輸入與輸出的硬邏輯,在應(yīng)用時(shí),直接根據(jù)輸入的值,通過(guò)LUT給出相應(yīng)的輸出值。輸入的組合根據(jù)輸入端口數(shù)量而定,比如4個(gè)端口就可實(shí)現(xiàn)16種輸入組合(2的4次方),而一個(gè)LB可以包含有多個(gè)LUT,實(shí)現(xiàn)更復(fù)雜的邏輯組合

FPGA的內(nèi)部總體架構(gòu),主要是由實(shí)現(xiàn)硬件邏輯的邏輯塊(LB)、負(fù)責(zé)LB互聯(lián)的內(nèi)部互聯(lián)交換節(jié)點(diǎn)(IS)以及負(fù)責(zé)輸入輸出的I/O Block組成。由于幾乎所有的邏輯電路都是通過(guò)不同門電路的組合來(lái)實(shí)現(xiàn)的,所以FPGA其實(shí)就是提供了數(shù)量眾多的門電路,讓用戶用硬件描述語(yǔ)言(HDL,Hardware Description Language)自行設(shè)計(jì)它們各自的邏輯狀態(tài)與相互之間的邏輯關(guān)系,從而讓被編程的FPGA變成為某種專用芯片,所以說(shuō)FPGA是ASIC的半成品,不無(wú)道理。

事實(shí)上,F(xiàn)PGA在早期的一個(gè)重要的用途就是為了更好的設(shè)計(jì)ASIC,畢竟等ASIC生產(chǎn)出來(lái)再實(shí)驗(yàn)的成本太大,而通過(guò)FPGA可以提供進(jìn)行復(fù)雜的邏輯測(cè)試,來(lái)驗(yàn)證ASIC的設(shè)計(jì),并進(jìn)行反復(fù)的優(yōu)化,當(dāng)邏輯優(yōu)化到相當(dāng)水平后,再以更為直接的邏輯實(shí)現(xiàn)方法形成ASIC電路,以達(dá)到更好的性能。但隨著FPGA自身的性能、能力與可實(shí)現(xiàn)邏輯的復(fù)雜度的不斷提升,已經(jīng)逐漸可以直接代替一些中等規(guī)模的ASIC來(lái)使用,并在整體功耗上,保持對(duì)CPU的明顯優(yōu)勢(shì)。

在國(guó)內(nèi)率先開發(fā)CAPI+FPGA加速卡解決方案的恒揚(yáng)科技股份有限公司,大數(shù)據(jù)采集與分析產(chǎn)品經(jīng)理張軍這樣形容FPGA,“FPGA就是一張白紙,(最終的邏輯電路)想畫什么完全由設(shè)計(jì)師決定,而 CPU或者等其他軟件編程的器件就像鉛筆畫素描畫(已經(jīng)有了框架),設(shè)計(jì)師是在上面涂色彩?!?事實(shí)上,F(xiàn)PGA可以實(shí)現(xiàn)怎樣的能力,主要就取決于它所提供的門電路的規(guī)模。

現(xiàn)在主流的FPGA內(nèi)部均采用了SRAM編程方式(SRAM本身就是一個(gè)邏輯部件可用于LUT,而SRAM晶體管可用于內(nèi)部互聯(lián)鏈路的選通組合),可以實(shí)現(xiàn)快速的硬件編程,并能無(wú)限次的重復(fù)使用。雖然SRAM的特性決定了關(guān)機(jī)后內(nèi)部邏輯組合就會(huì)消失,但基于SRAM的編程在每次開機(jī)時(shí)都可以從外部的Flash芯片即時(shí)加載FPGA配置文章,加載(編程)速度為毫秒級(jí),所以完全不影響使用。在處理性能上,由于FPGA的邏輯實(shí)現(xiàn)是通過(guò)硬件編程來(lái)獲得,所以開發(fā)人員可以將指定的算法邏輯,直接以FPGA內(nèi)部不同門電路的硬邏輯組合來(lái)實(shí)現(xiàn),而且現(xiàn)在越來(lái)越多的FPGA內(nèi)部都增加了固化的乘法器、DSP等處理單元,進(jìn)一步加快了相關(guān)運(yùn)算的處理速度。

從某種角度上說(shuō),F(xiàn)PGA內(nèi)部其實(shí)并沒(méi)有所謂的“計(jì)算”,最終結(jié)果幾乎是“電路直給”,因此執(zhí)行效率就大幅提高。當(dāng)然,由于采用的是通用的門電路組合,在某些效率上FPGA仍然不及ASIC極致,但是可重復(fù)更新內(nèi)部邏輯的靈活性,再加上在固定算法上遠(yuǎn)高于CPU的效率,讓FPGA在應(yīng)用領(lǐng)域迅速得到重視。然而需要指出的是,用FPGA的門電路實(shí)現(xiàn)整數(shù)運(yùn)算邏輯,要比實(shí)現(xiàn)浮點(diǎn)運(yùn)算邏輯簡(jiǎn)單得多,所以FPGA的加速優(yōu)勢(shì)也更多的體現(xiàn)在整數(shù)性運(yùn)算,而整數(shù)運(yùn)算正是當(dāng)前主流企業(yè)級(jí)應(yīng)用的主要運(yùn)算方式,而這也是為什么GPGPU更多的用于浮點(diǎn)運(yùn)算領(lǐng)域(如HPC),F(xiàn)PGA更多用于整數(shù)加速領(lǐng)域的一大原因。

賽靈思總結(jié)的,目前FPGA相對(duì)于主流的x86處理器,在某些領(lǐng)域里的加速比,以及目前數(shù)據(jù)中心里可用到FPGA加速的領(lǐng)域,可以說(shuō)80-90%的大規(guī)模并行密集應(yīng)用都可以被FPGA加速,尤其是以整數(shù)應(yīng)用為主。當(dāng)然,并不是說(shuō)FPGA不能用于浮點(diǎn)運(yùn)算,但相對(duì)來(lái)說(shuō),整數(shù)型加速對(duì)于FPGA更容易實(shí)現(xiàn),相對(duì)于GPGPU也有更明顯的優(yōu)勢(shì)。另外,請(qǐng)注意很多IT基礎(chǔ)設(shè)施的底層信息處理方面,如安全、加密、網(wǎng)絡(luò)加速、鍵值存儲(chǔ)也在FPGA的應(yīng)用范疇之內(nèi),其“實(shí)用性”顯然比GPGPU更為廣泛

賽靈思總結(jié)的,目前FPGA相對(duì)于主流的x86處理器,在某些領(lǐng)域里的加速比,以及目前數(shù)據(jù)中心里可用到FPGA加速的領(lǐng)域,可以說(shuō)80-90%的大規(guī)模并行密集應(yīng)用都可以被FPGA加速,尤其是以整數(shù)應(yīng)用為主。當(dāng)然,并不是說(shuō)FPGA不能用于浮點(diǎn)運(yùn)算,但相對(duì)來(lái)說(shuō),整數(shù)型加速對(duì)于FPGA更容易實(shí)現(xiàn),相對(duì)于GPGPU也有更明顯的優(yōu)勢(shì)。另外,請(qǐng)注意很多IT基礎(chǔ)設(shè)施的底層信息處理方面,如安全、加密、網(wǎng)絡(luò)加速、鍵值存儲(chǔ)也在FPGA的應(yīng)用范疇之內(nèi),其“實(shí)用性”顯然比GPGPU更為廣泛

但是,傳統(tǒng)的FPGA加速設(shè)計(jì),均是以I/O總線與CPU平臺(tái)相連,比如常見的PCIe,在系統(tǒng)內(nèi)部以一個(gè)I/O設(shè)備存在,所以在實(shí)際的應(yīng)用中,對(duì)于應(yīng)用開發(fā)者本身來(lái)說(shuō)仍然有較大的難度。這次CAPI的出現(xiàn),則從根本上解決了這個(gè)難題,從而以FPGA的加速優(yōu)勢(shì)得以獲得更充分的發(fā)揮。

OpenPOWER CAPI簡(jiǎn)介
OpenPOWER是以IBM、NVIDIA、Mellanox、Google、TYAN為首的5家公司于2013年8月發(fā)起的一個(gè)技術(shù)推廣聯(lián)盟,截止到2015年6月,OpenPOWER會(huì)員數(shù)量超過(guò)了130家,來(lái)自于中國(guó)的廠商就超過(guò)了20家。

OpenPOWER所推廣的技術(shù)就是基于IBM POWER8及以后的處理器與平臺(tái)技術(shù),這其中POWER8處理器所具備的一致性加速處理器接口(CAPI,Coherent Accelerator Processor Interface)就是一個(gè)重要的技術(shù)點(diǎn),也正是它讓FPGA迅速成為了新一代異構(gòu)計(jì)算的亮點(diǎn)。

CAPI的基本原理就是通過(guò)在POWER處理器(從POWER8開始)內(nèi)部設(shè)置一個(gè)一致性加速處理器代理(CAPP,Coherent Accelerator Processor Proxy),而在外置的加速卡上,則內(nèi)置POWER處理器服務(wù)層(PSL,POWER Service Layer),其與CAPP配合,為加速卡在CPU上打通了一個(gè)“后門”。加速卡(PSL)與CPU(CAPP)之間采用成熟的PCIe總線+CAPI協(xié)議進(jìn)行數(shù)據(jù)傳輸,但不用走復(fù)雜的PCIe I/O模式,并獲得了與CPU對(duì)等訪問(wèn)虛擬內(nèi)存地址的能力。目前POWER8內(nèi)部共有兩個(gè)CAPP,單CPU可外接兩個(gè)CAPI加速卡

CAPI的基本原理就是通過(guò)在POWER處理器(從POWER8開始)內(nèi)部設(shè)置一個(gè)一致性加速處理器代理(CAPP,Coherent Accelerator Processor Proxy),而在外置的加速卡上,則內(nèi)置POWER處理器服務(wù)層(PSL,POWER Service Layer),其與CAPP配合,為加速卡在CPU上打通了一個(gè)“后門”。加速卡(PSL)與CPU(CAPP)之間采用成熟的PCIe總線+CAPI協(xié)議進(jìn)行數(shù)據(jù)傳輸,但不用走復(fù)雜的PCIe I/O模式,并獲得了與CPU對(duì)等訪問(wèn)虛擬內(nèi)存地址的能力。目前POWER8內(nèi)部共有兩個(gè)CAPP,單CPU可外接兩個(gè)CAPI加速卡

CAPI最為關(guān)鍵的重點(diǎn)就在于一致性(Coherent),它是能實(shí)現(xiàn)CAPI外設(shè)與CPU對(duì)等訪問(wèn)內(nèi)存的關(guān)鍵,否則在應(yīng)用編程上仍然要有較大的調(diào)整。而之所以能實(shí)現(xiàn)這一設(shè)計(jì),是因?yàn)樵贗BM提供的PSL硬核模塊(可以集成于合作伙伴的芯片,或?qū)懭隖PGA)中包含有256KB的緩存,而在CPU內(nèi)部,CAPP則負(fù)責(zé)維護(hù)CAPI一側(cè)的緩存行目錄,以保證CPU級(jí)的緩存一致性(CC,Cache Coherency )。這就相當(dāng)于在CPU內(nèi)部額外增加了一個(gè)特殊的處理核心(相當(dāng)于給CPU開了一個(gè)外掛),其對(duì)于內(nèi)存的訪問(wèn)與其他“正常的”CPU核心是對(duì)等的,納入到統(tǒng)一的CC范疇,這就與傳統(tǒng)的通過(guò)PCIe插卡實(shí)現(xiàn)加速的方式有了本質(zhì)的不同。

在具體的FPGA加速應(yīng)用中,應(yīng)用透過(guò)CAPP與PSL的連接,掛載加速卡指向已經(jīng)設(shè)置好的內(nèi)存數(shù)據(jù),PSL與CAPP一起協(xié)同,讓FPGA里的加速功能單元(AFU,Accelerator Functional Unit)可以與CPU實(shí)現(xiàn)對(duì)等訪問(wèn)——可直接看到應(yīng)用所指向的虛擬內(nèi)存地址,并通過(guò)PCIe總線與應(yīng)用溝通

在具體的FPGA加速應(yīng)用中,應(yīng)用透過(guò)CAPP與PSL的連接,掛載加速卡指向已經(jīng)設(shè)置好的內(nèi)存數(shù)據(jù),PSL與CAPP一起協(xié)同,讓FPGA里的加速功能單元(AFU,Accelerator Functional Unit)可以與CPU實(shí)現(xiàn)對(duì)等訪問(wèn)——可直接看到應(yīng)用所指向的虛擬內(nèi)存地址,并通過(guò)PCIe總線與應(yīng)用溝通

在CAPI+FPGA的應(yīng)用中,用戶先將相關(guān)應(yīng)用的加速算法,以HDL(目前主要是Verilog HDL和VHDL)寫入FPGA,構(gòu)成加速功能單元(AFU),它就是上文提到的那個(gè)“外掛的特殊CPU核心”。然后再通過(guò)PSL與CAPP的協(xié)同,將AFU“嵌入”到CPU里,被應(yīng)用發(fā)現(xiàn)并直接調(diào)用。由于緩存一致性的保證,AFU可以直接讀寫應(yīng)用所管理的虛擬內(nèi)存空間,以一種嵌入式的外掛處理模式實(shí)現(xiàn)應(yīng)用的加速。從某種意義上說(shuō),“外掛”的AFU的作用有點(diǎn)像CPU的加速指令集(比如SSE、MMX等),但可靈活變換且效率明顯更高。

在非CAPI加速體系中,傳統(tǒng)的加速卡是以一個(gè)I/O設(shè)備存在的,這必然需要虛擬地址的重新影射,從而在內(nèi)存中會(huì)生成3個(gè)數(shù)據(jù)副本,并需要大量的驅(qū)動(dòng)訪問(wèn)指令,后果就是延遲的增加

在非CAPI加速體系中,傳統(tǒng)的加速卡是以一個(gè)I/O設(shè)備存在的,這必然需要虛擬地址的重新影射,從而在內(nèi)存中會(huì)生成3個(gè)數(shù)據(jù)副本,并需要大量的驅(qū)動(dòng)訪問(wèn)指令,后果就是延遲的增加

在CAPI體系下,CAPI加速器與CPU實(shí)現(xiàn)了對(duì)等訪問(wèn),共享虛擬地址,數(shù)據(jù)無(wú)需轉(zhuǎn)手,直接在加速器與應(yīng)用之間進(jìn)行溝通。在實(shí)際使用時(shí)也很簡(jiǎn)單,CAPI加速卡可以安裝在任何提供PCIe3.0接口的OpenPOWER Linux服務(wù)器上。應(yīng)用軟件只需要調(diào)用一個(gè)CAPI函數(shù),即可直接利用CAPI加速,而在對(duì)Linux更新驅(qū)動(dòng)后,即可直接調(diào)用原有IM/GM等兼容接口函數(shù)

在CAPI體系下,CAPI加速器與CPU實(shí)現(xiàn)了對(duì)等訪問(wèn),共享虛擬地址,數(shù)據(jù)無(wú)需轉(zhuǎn)手,直接在加速器與應(yīng)用之間進(jìn)行溝通。在實(shí)際使用時(shí)也很簡(jiǎn)單,CAPI加速卡可以安裝在任何提供PCIe3.0接口的OpenPOWER Linux服務(wù)器上。應(yīng)用軟件只需要調(diào)用一個(gè)CAPI函數(shù),即可直接利用CAPI加速,而在對(duì)Linux更新驅(qū)動(dòng)后,即可直接調(diào)用原有IM/GM等兼容接口函數(shù)

由于CAPI接口并非傳統(tǒng)意義上的I/O驅(qū)動(dòng)模式,直接走硬件代理與CPU溝通,所以從應(yīng)用的全局視角,數(shù)據(jù)的訪問(wèn)步驟明顯降低(FPGA與CPU對(duì)等訪問(wèn)),讓數(shù)據(jù)訪問(wèn)效率大幅度提高,總延遲約是傳統(tǒng)模式的1/36,同時(shí)這種應(yīng)用加速設(shè)計(jì),對(duì)于應(yīng)用的編程修改影響最小

由于CAPI接口并非傳統(tǒng)意義上的I/O驅(qū)動(dòng)模式,直接走硬件代理與CPU溝通,所以從應(yīng)用的全局視角,數(shù)據(jù)的訪問(wèn)步驟明顯降低(FPGA與CPU對(duì)等訪問(wèn)),讓數(shù)據(jù)訪問(wèn)效率大幅度提高,總延遲約是傳統(tǒng)模式的1/36,同時(shí)這種應(yīng)用加速設(shè)計(jì),對(duì)于應(yīng)用的編程修改影響最小

一個(gè)典型的CAPI加速器,從準(zhǔn)備加速到完成加速的溝通流程相當(dāng)?shù)暮?jiǎn)潔明了,可以基本總結(jié)為——應(yīng)用:CAPI加速器,我看到你了;CAPI加速器:應(yīng)用,我已經(jīng)為你準(zhǔn)備好了;應(yīng)用:我要處理的數(shù)據(jù)在內(nèi)存地址AddrX處,剩下的工作就交給你了;CAPI加速器:好的,沒(méi)問(wèn)題;(開始循環(huán)加速)……CAPI加速器:報(bào)告應(yīng)用,已經(jīng)處理完畢;應(yīng)用:好的,你先休息吧,有事我再叫你

一個(gè)典型的CAPI加速器,從準(zhǔn)備加速到完成加速的溝通流程相當(dāng)?shù)暮?jiǎn)潔明了,可以基本總結(jié)為——應(yīng)用:CAPI加速器,我看到你了;CAPI加速器:應(yīng)用,我已經(jīng)為你準(zhǔn)備好了;應(yīng)用:我要處理的數(shù)據(jù)在內(nèi)存地址AddrX處,剩下的工作就交給你了;CAPI加速器:好的,沒(méi)問(wèn)題;(開始循環(huán)加速)……CAPI加速器:報(bào)告應(yīng)用,已經(jīng)處理完畢;應(yīng)用:好的,你先休息吧,有事我再叫你

從以上圖片可以看出,由于CC特性的加入,讓CAPI加速卡避開了傳統(tǒng)I/O設(shè)備的驅(qū)動(dòng)模式,直接以“硬件代理”的方式嵌入應(yīng)用的執(zhí)行,因此在總體的命令開銷方面有明顯的減少,這直接帶來(lái)的效果就是延遲大幅降低——總延遲約只有傳統(tǒng)加速模式的1/36,并且?guī)?lái)了更大的好處——由于沒(méi)有了傳統(tǒng)I/O設(shè)備層,應(yīng)用平臺(tái)為了適配加速器的編程修改非常小,應(yīng)用開發(fā)者完全可以將應(yīng)用做成自適應(yīng)模式,在非CAPI平臺(tái)上采用傳統(tǒng)的處理模式,當(dāng)發(fā)現(xiàn)系統(tǒng)有CAPI加速器則自動(dòng)打開CAPI模式,這顯然非常有利于CPAI加速模式在相關(guān)應(yīng)用領(lǐng)域里的普及。

在具體的應(yīng)用環(huán)境中,目前CAPI還不能用于虛擬化平臺(tái)(比如OpenKVM),但完全支持基于Linux核心的Docker容器平臺(tái)(現(xiàn)在的CAPI全面支持Ubuntu 14.10)。按照IBM未來(lái)的發(fā)展規(guī)劃,新一代CAPI正在路上,它將基于PCIe 4.0規(guī)格(也可能會(huì)采用新的總線接口),并稍加改動(dòng),連接帶寬較PCIe 4.0稍微提高,以抵銷CAPI協(xié)議的開銷,從而讓加速器可以充分利用到PCIe的帶寬。另外,CAPI的虛擬化(多個(gè)應(yīng)用可以分時(shí)復(fù)用加速器)也將是必然的,并且單一PSL未來(lái)可以掛載多個(gè)AFU,在FPGA內(nèi)部可以同時(shí)具備4個(gè)AFU,PSL分別為它們保存各自的虛擬空間地址,并與CAPP一起保持緩存一致性,這就相當(dāng)于給系統(tǒng)同時(shí)配備了4個(gè)外掛核心。在操作系統(tǒng)方面,未來(lái)還將支持AIX、RedHat等OS,這將意味著除了PowerLinux平臺(tái),傳統(tǒng)的AIX POWER服務(wù)器上的應(yīng)用也將能享受到CAPI加速。

CAPI+FPGA應(yīng)用實(shí)戰(zhàn)

借助于OpenPOWER聯(lián)盟,很多廠商都投入到了CAPI+FPGA的加速卡設(shè)計(jì)中,中國(guó)的恒揚(yáng)科技股份有限公司(Semptian)即是其中之一,其最新推出的Semptian NSA-120是一款基于XILINX Kintex UltraScale FPGA的CAPI PCIe板卡,采用PCIE x8 Gen3 接口規(guī)格,支持兩路DDR3 1600 SODIMM(容量為2x8GB),而首先投入的AFU,是針對(duì)大數(shù)據(jù)存儲(chǔ)中常用的糾刪碼(Erasure Code)的編/解碼加速。

糾刪碼是應(yīng)對(duì)降低海量分布式存儲(chǔ)占用空間的常用手段,相對(duì)于傳統(tǒng)的3復(fù)本冗余的存儲(chǔ)模式(相當(dāng)于3x容量占用),糾刪碼冗余的存儲(chǔ)容量只相當(dāng)于原數(shù)據(jù)量的1.4x,降低了超過(guò)50%的存儲(chǔ)空間需求,但在大規(guī)模數(shù)據(jù)讀寫過(guò)程中,糾刪碼的實(shí)時(shí)編/解碼運(yùn)算對(duì)于服務(wù)器CPU來(lái)說(shuō)將是一個(gè)比較大的占用,在分布式應(yīng)用架構(gòu)中,這意味著將影響應(yīng)用本身的性能

糾刪碼是應(yīng)對(duì)降低海量分布式存儲(chǔ)占用空間的常用手段,相對(duì)于傳統(tǒng)的3復(fù)本冗余的存儲(chǔ)模式(相當(dāng)于3x容量占用),糾刪碼冗余的存儲(chǔ)容量只相當(dāng)于原數(shù)據(jù)量的1.4x,降低了超過(guò)50%的存儲(chǔ)空間需求,但在大規(guī)模數(shù)據(jù)讀寫過(guò)程中,糾刪碼的實(shí)時(shí)編/解碼運(yùn)算對(duì)于服務(wù)器CPU來(lái)說(shuō)將是一個(gè)比較大的占用,在分布式應(yīng)用架構(gòu)中,這意味著將影響應(yīng)用本身的性能

通過(guò)Semptian NSA-120的加速,獲得了明顯的糾刪碼的性能提升,如果再多加一塊Semptian NSA-120(雙CPU配置時(shí)最多可插4塊),性能還會(huì)進(jìn)一步提高

通過(guò)Semptian NSA-120的加速,獲得了明顯的糾刪碼的性能提升,如果再多加一塊Semptian NSA-120(雙CPU配置時(shí)最多可插4塊),性能還會(huì)進(jìn)一步提高

為了進(jìn)一步方便ISV與AFU的開發(fā)者,恒揚(yáng)科技專門提供了NPL(NSA Platform Layer),即FPGA基礎(chǔ)平臺(tái),幫助AFU開發(fā)者硬件無(wú)感知的開發(fā)AFU算法單元

為了進(jìn)一步方便ISV與AFU的開發(fā)者,恒揚(yáng)科技專門提供了NPL(NSA Platform Layer),即FPGA基礎(chǔ)平臺(tái),幫助AFU開發(fā)者硬件無(wú)感知的開發(fā)AFU算法單元

根據(jù)恒揚(yáng)科技大數(shù)據(jù)采集與分析產(chǎn)品經(jīng)理張軍的介紹,目前FPGA的編程環(huán)境已經(jīng)有了很大的改善,這其中OpenCL開發(fā)平臺(tái)的發(fā)展直到了重要的推進(jìn)作用。雖然現(xiàn)在仍然很初級(jí),但對(duì)于傳統(tǒng)的應(yīng)用開發(fā)者來(lái)說(shuō),借助OpenCL開放的標(biāo)準(zhǔn)化平臺(tái),已經(jīng)可以相對(duì)較為容易的上手,而在底層編程部分,仍然會(huì)通過(guò)FPGA廠商的專用工具進(jìn)行HDL編譯,再寫入FPGA。此外,F(xiàn)PGA廠商也在像NVIDIA那樣,提供自己的集成開發(fā)環(huán)境(IDE),它的作用相當(dāng)于CUDA之于GPGPU,為開發(fā)者提供更完整的工具包,加速FPGA的編程。比如賽靈思的 SDAccel開發(fā)環(huán)境,就可為賽靈思的FPGA加速OpenCL、C和C++內(nèi)核的開發(fā)與部署。相應(yīng)的CAPI-FPGA加速卡廠商,也會(huì)提供底層平臺(tái),方便開發(fā)者基于自己的板卡進(jìn)行AFU開發(fā)。比如恒揚(yáng)科技就提供了NPL和相關(guān)的SDK,可以讓開發(fā)者專心于AFU的算法實(shí)現(xiàn)。

另一個(gè)典型的CAPI加速實(shí)例則是外置存儲(chǔ)加速,IBM基于CAPI控制卡+自己的FlashSystem全閃存陣列,提供了一套NoSQL數(shù)據(jù)引擎,由于CAPI將傳統(tǒng)的PCIe控制卡的I/O開銷省去,大大降低了系統(tǒng)延遲,成為KVS數(shù)據(jù)平臺(tái)更好的選擇。

IBM基于支持CAPI+全閃存陣列而推出NoSQL數(shù)據(jù)加速引擎,配套全閃存陣列可以通過(guò)CAPI加速卡直接訪問(wèn)應(yīng)用內(nèi)存空間,大大降低了數(shù)據(jù)傳輸?shù)难舆t,非常有利于單筆數(shù)據(jù)訪問(wèn)量少,但I(xiàn)O密集的鍵值存儲(chǔ)(KVS,Key-Value Store)平臺(tái)

IBM基于支持CAPI+全閃存陣列而推出NoSQL數(shù)據(jù)加速引擎,配套全閃存陣列可以通過(guò)CAPI加速卡直接訪問(wèn)應(yīng)用內(nèi)存空間,大大降低了數(shù)據(jù)傳輸?shù)难舆t,非常有利于單筆數(shù)據(jù)訪問(wèn)量少,但I(xiàn)O密集的鍵值存儲(chǔ)(KVS,Key-Value Store)平臺(tái)

通過(guò)與非CAPI控制卡連接的性能相對(duì)比,可以看出由于CAPI連接并不是傳統(tǒng)的I/O驅(qū)動(dòng)模式,而近似于CPU直聯(lián),所以在IOPS性能與延遲性能上較傳統(tǒng)的PCIe控制卡有明顯的提升,不過(guò)如果是大數(shù)據(jù)塊傳輸,CAPI控制卡在總帶寬上可能會(huì)有一定劣勢(shì),但到下一代CAPI這將不再是問(wèn)題

通過(guò)與非CAPI控制卡連接的性能相對(duì)比,可以看出由于CAPI連接并不是傳統(tǒng)的I/O驅(qū)動(dòng)模式,而近似于CPU直聯(lián),所以在IOPS性能與延遲性能上較傳統(tǒng)的PCIe控制卡有明顯的提升,不過(guò)如果是大數(shù)據(jù)塊傳輸,CAPI控制卡在總帶寬上可能會(huì)有一定劣勢(shì),但到下一代CAPI這將不再是問(wèn)題

第二代異構(gòu)計(jì)算與未來(lái)應(yīng)用愿景

如果說(shuō)以GPGPU為主,大幅度提高系統(tǒng)浮點(diǎn)運(yùn)算能力是第一代異構(gòu)加速計(jì)算的典型特征的話,我們現(xiàn)在可以基本總體出以FPGA為主,所謂的第二代異構(gòu)計(jì)算的一些重要特征:第一:具備緩存一致性的內(nèi)存訪問(wèn)能力,這是最為重要的特征,與第一代異構(gòu)計(jì)算有了本質(zhì)的不同,并對(duì)應(yīng)用編程具備了明顯的友好性;第二:基于FPGA可靈活配置加速模塊,毫無(wú)疑問(wèn),在第二代異構(gòu)計(jì)算中,F(xiàn)PGA將是一大主角,它本身靈活的可編程性為應(yīng)用加速提供了豐富的應(yīng)用場(chǎng)景;第三、它將隆重開啟整數(shù)運(yùn)算加速的大門,隨著FPGA編程的便利性進(jìn)一步提高,F(xiàn)PGA的整數(shù)型加速將會(huì)迅速普及(當(dāng)然絕不是說(shuō)FPGA不能用于浮點(diǎn)加速,只是看應(yīng)用比例),這對(duì)于當(dāng)前的大數(shù)據(jù)、海量視頻處理、圖像匹配等新興需求不謀而合,就像當(dāng)初GPGPU與科學(xué)計(jì)算的發(fā)展相得益彰一樣,第二代異構(gòu)計(jì)算將把相應(yīng)的整數(shù)型應(yīng)用的性能帶到新的高度。

當(dāng)然,看到這一趨勢(shì)的不僅僅是IBM與OpenPOWER,CPU巨頭英特爾以167億美元收購(gòu)FPGA第二大廠Altera的用意也不言自明。在不久前結(jié)束的IDF15上(英特爾信息技術(shù)峰會(huì)2015美國(guó)站),英特爾正式發(fā)布了CPU通過(guò)QPI直聯(lián)FPGA的方案設(shè)計(jì)。

采用QPI接口與CPU互聯(lián),明擺著是沖著緩存一致性而來(lái),這與CAPI的思路異曲同工,并且在服務(wù)器的配置上給出了新的可能(比如FPGA芯片Socket化或直接板載),這與CAPI有了明顯的不同,可謂各有利弊,但共同點(diǎn)都是開啟了第二代異構(gòu)計(jì)算的時(shí)代

采用QPI接口與CPU互聯(lián),明擺著是沖著緩存一致性而來(lái),這與CAPI的思路異曲同工,并且在服務(wù)器的配置上給出了新的可能(比如FPGA芯片Socket化或直接板載),這與CAPI有了明顯的不同,可謂各有利弊,但共同點(diǎn)都是開啟了第二代異構(gòu)計(jì)算的時(shí)代

當(dāng)越來(lái)越多的FPGA加速芯片以各種緩存一致性的方式接入系統(tǒng)之后,由于FPGA的SRAM高速編程模式,理論上講FPGA可以迅速的且無(wú)限次的更新內(nèi)置的AFU,以應(yīng)對(duì)不同的應(yīng)用加速需求。這就給我們打開了一個(gè)想像空間——能否像Docker管理容器鏡像那樣,基于云+端的概念建立起一個(gè)AFU鏡像的集散中心呢?事實(shí)上,OpenPOWER聯(lián)盟也正在為此而努力——建立AFU鏡像商店。

OpenPOWER CAPI-FPGA加速卡AFU鏡像商店的更新流程(筆者猜想繪制,謹(jǐn)供參考)

OpenPOWER CAPI-FPGA加速卡AFU鏡像商店的更新流程(筆者猜想繪制,謹(jǐn)供參考)

屆時(shí),任何相關(guān)的開發(fā)者、ISV都可以將自己針對(duì)某些具體的FPGA卡(經(jīng)CAPI認(rèn)證)所編寫的AFU鏡像(其實(shí)就是FPGA的編程配置文件),上傳至AFU商店供其他用戶免費(fèi)或有償使用。相關(guān)的AFU用戶則可以像Docker那樣,根據(jù)自己應(yīng)用加速的需求與FPGA加速卡的型號(hào),免費(fèi)或付費(fèi)下載相應(yīng)的AFU鏡像,通過(guò)全局的管理平臺(tái),分發(fā)給指定服務(wù)器上的CAPI更新控制器,由后者與指定的FPGA加速卡(一臺(tái)服務(wù)器可以有多塊加速卡,選擇更新)PSL內(nèi)的AFU更新模塊一起加載AFU鏡像。加載的方式有兩種,一種是完整的FPGA重寫(所有的門電路重寫,包括PSL),另一種則是AFU單獨(dú)更新。前者需要重起服務(wù)器,而后者則可以在線動(dòng)態(tài)更新。目前100萬(wàn)門的FPGA的配置文件容量也就在50MB左右,由于是基于SRAM的硬件編程,100ms內(nèi)即可更新完畢,用戶幾乎沒(méi)有察覺(jué),但服務(wù)器的加速功能就已經(jīng)完全改變了。

我們可以試想一下這樣的場(chǎng)景,對(duì)于某個(gè)內(nèi)置CAPI+FPGA加速器的服務(wù)器集群,可以靈活的根據(jù)工作負(fù)載的需求改變FPGA中的AFU模塊,讓這個(gè)集群迅速具備針對(duì)新負(fù)載的加速能力,這對(duì)于集群高效的多場(chǎng)景靈活復(fù)用顯然是很有幫助的,而這種模式也是GPGPU、DSP、ASIC等加速方式很難做到的。

展望未來(lái),從某種角度上講,GPGPU與FPGA在未來(lái)的應(yīng)用系統(tǒng)中,將根據(jù)自身的特長(zhǎng)有所側(cè)重。如果將CPU比作人的話,GPGPU更像是高級(jí)計(jì)算器,為人類提供強(qiáng)大的科學(xué)計(jì)算的能力,做好學(xué)術(shù)研究,而FPGA更像是為某類工作定制的效率工具,執(zhí)行大量的固定而高度重復(fù)化的工作,大幅度提高人類的日常生活與工作效率(比如洗衣機(jī)、生產(chǎn)機(jī)器人),而人在未來(lái)更多的就是負(fù)責(zé)管理,用好計(jì)算器與效率工具——CPU的角色相信也會(huì)如此,隨著技術(shù)的不斷發(fā)展,更多的浮點(diǎn)與整數(shù)運(yùn)算任務(wù)將會(huì)被GPGPU、FPGA、DSP、ASIC等不同的加速器所分擔(dān)。

從第二代異構(gòu)計(jì)算至第二代分布式計(jì)算?

基于上文所分析的CAPI+FPGA所展現(xiàn)出來(lái)的能力,我們進(jìn)一步從單服務(wù)器延展至整個(gè)分布式計(jì)算的架構(gòu),這就需要我們從一個(gè)更為廣闊的全局視角來(lái)看待第二代異構(gòu)計(jì)算所帶來(lái)的關(guān)鍵影響。不久前,IBM提出的“第二代分布式計(jì)算”理念也正是基于這一全局的層次來(lái)建立的(據(jù)說(shuō)在9月16日會(huì)召開發(fā)布會(huì)進(jìn)行專門的闡述 )。

IBM中國(guó)研究院的高級(jí)研究員陳飛表示,IBM提出的第二代分布式計(jì)算要有四個(gè)重要的特征,第一個(gè)特征:加速器的軟硬件接口有統(tǒng)一的接口規(guī)范,以便于更好的協(xié)同管理與普適(第一代分布式計(jì)算的接口標(biāo)準(zhǔn)較為統(tǒng)一,畢竟只有CPU本身,相對(duì)更標(biāo)準(zhǔn)化),這方面CAPI就是一個(gè)標(biāo)準(zhǔn)化接口的嘗試。第二個(gè)特征:加速器可以被動(dòng)態(tài)的在線被設(shè)備發(fā)現(xiàn)以及加載。比如不需要要求系統(tǒng)的重啟,但現(xiàn)在的加速器如果要改變功能,一般都要要求重啟,或者是重啟一些軟件服務(wù),但CAPI+FPGA則沒(méi)有這個(gè)顧慮。第三個(gè)特征:分布式的系統(tǒng)要具備全局異構(gòu)資源的調(diào)度能力,也就是說(shuō)它能決定哪些應(yīng)用運(yùn)行在一個(gè)具有這種加速硬件的計(jì)算節(jié)點(diǎn)上,還是跑在一個(gè)普通的純CPU的計(jì)算節(jié)點(diǎn)上。第四個(gè)特征:應(yīng)該軟件本身,具備兼容CPU運(yùn)行模式和異構(gòu)硬件運(yùn)行模式的能力。

NVIDIA推出NVLINK互聯(lián)總線,除了可作為GPU之間的互聯(lián)外,還可用于CPU與GPU的互聯(lián),并也將具備緩存一致性的內(nèi)存訪問(wèn)能力,IBM的POWER9處理器(預(yù)計(jì)2017年下半年發(fā)布)將具備這一接口,這就意味著在POWER9平臺(tái)上NVIDIA的GPU也會(huì)獲得與CAPI同樣的對(duì)等訪問(wèn)能力,這樣的GPGPU加速能力也將是POWER9獨(dú)有的(在英特爾x86平臺(tái)上,與CPU的互聯(lián)連接仍然是傳統(tǒng)的PCIe模式,NVLINK僅用于NVIDIA GPU之間的互聯(lián)),對(duì)IBM所提出的第二代分布式計(jì)算理念無(wú)疑是一個(gè)有力支撐

NVIDIA推出NVLINK互聯(lián)總線,除了可作為GPU之間的互聯(lián)外,還可用于CPU與GPU的互聯(lián),并也將具備緩存一致性的內(nèi)存訪問(wèn)能力,IBM的POWER9處理器(預(yù)計(jì)2017年下半年發(fā)布)將具備這一接口,這就意味著在POWER9平臺(tái)上NVIDIA的GPU也會(huì)獲得與CAPI同樣的對(duì)等訪問(wèn)能力,這樣的GPGPU加速能力也將是POWER9獨(dú)有的(在英特爾x86平臺(tái)上,與CPU的互聯(lián)連接仍然是傳統(tǒng)的PCIe模式,NVLINK僅用于NVIDIA GPU之間的互聯(lián)),對(duì)IBM所提出的第二代分布式計(jì)算理念無(wú)疑是一個(gè)有力支撐

從以上定義中,我們可以看出,正是CAPI+FPGA所具備的一些關(guān)鍵特性(緩存一致性、在線更新性、AFU替換能力等)為IBM所提出的第二代分布式計(jì)算打下了理論基礎(chǔ)。當(dāng)然,對(duì)于這個(gè)定義,我仍然有一些異議,畢竟從總體上講,這個(gè)分布式處理的基礎(chǔ)架構(gòu)與應(yīng)用分布處理的模式,和第一代相比并沒(méi)有本質(zhì)的不同,更多是分布式節(jié)點(diǎn)上處理模式的創(chuàng)新,并且由于加速體系標(biāo)準(zhǔn)的更加多樣化,也讓其普適性受到懷疑,除非有非常強(qiáng)大的全局管理平臺(tái)來(lái)屏蔽掉底層的硬件差異性,否則全局上的“加速孤島”現(xiàn)象不可避免(雖然對(duì)于具體的用戶來(lái)說(shuō),這可能不是問(wèn)題)。

但是,不管怎樣,第二代異構(gòu)計(jì)算的模式,的確打開了我們的想像空間,它是否真的帶來(lái)理想中的第二代分布式計(jì)算體系,還要看IBM、英特爾以及加速器、方案集成等前沿廠商的共同努力!不過(guò),可以肯定的是,不管這種新興的處理模式將如何稱謂,它對(duì)于新時(shí)代下的信息處理平臺(tái)(大數(shù)據(jù)分析、物聯(lián)網(wǎng)、人工智能、機(jī)器學(xué)習(xí)等)所帶來(lái)的明顯幫助,以及為最終用戶創(chuàng)造的巨大價(jià)值,都將是毋庸置疑的!

發(fā)布日期: 2015-9-10

文章來(lái)源: ZD至頂網(wǎng)服務(wù)器頻道

出處: 趙效民

整合編輯: 國(guó)芯網(wǎng)