不久前的IDF(英特爾開發(fā)者論壇)大會(huì)上主流市場(chǎng)芯片和開發(fā)商消息漫天飛舞,筆者與同事卻注意到幾個(gè)不那么耀眼、但卻同樣緊迫的話題。雖然這些事情可能無(wú)法與電腦和消費(fèi)市場(chǎng)相提并論,因其不是那么吸引公眾的眼球,我們關(guān)注的話題事關(guān)未來(lái)幾年里整個(gè)服務(wù)器空間的設(shè)計(jì)方向。
就數(shù)據(jù)中心而言,今年的IDF上最熱門的話題有兩個(gè),一是對(duì)Optane 3D XPoint內(nèi)存的更深刻認(rèn)識(shí),網(wǎng)上可以找到更詳細(xì)的資料。另一個(gè)熱門話題是與會(huì)者可以搜集到英特爾和Altera FPGA關(guān)系的新興技術(shù)和市場(chǎng)前沿的信息。具體來(lái)說(shuō),從英特爾院士Al Gara和Altera公司策略總監(jiān)Mike Strickland那里,我們對(duì)新興力量朝什么方向推動(dòng)整個(gè)局面發(fā)展有了那么一點(diǎn)點(diǎn)更深的體會(huì),先是序幕,只是受金融好奇心的驅(qū)使,目前進(jìn)入了有著一種廣泛支持的研究現(xiàn)狀,而下一步是實(shí)際產(chǎn)品,期望在各種潛在范圍內(nèi)適應(yīng)未來(lái)數(shù)據(jù)中心的需求。
至于坊間傳出的關(guān)于FPGA和Xeon的結(jié)合說(shuō)法,背后兩個(gè)頭之間的洽談可以用兩個(gè)字概括:信心?;镜母杏X是,他們知道一些各方讀者和分析師不知道的事。說(shuō)到底,如果英特爾分出167億美元給一個(gè)一直在喊著要走自己的路的公司,那整件事不會(huì)只是局外人表面上看那么簡(jiǎn)單,對(duì)吧?
回到我們自己提出的問(wèn)題,初步的猜測(cè)是,一些領(lǐng)域的新應(yīng)用可能利用FPGA的優(yōu)勢(shì),從而謀求大規(guī)模增長(zhǎng)的潛力,又或者,由FPGA驅(qū)動(dòng)的交換市場(chǎng)爆炸性發(fā)展,又或者,市場(chǎng)甚至對(duì)一種特別的(針對(duì)GPU或高測(cè)試CPU)加速有極大、無(wú)法滿足的需求,比如大型云供應(yīng)商可以用得上這種加速。如果Stickland和Gara給出的提示沒(méi)有被理解錯(cuò)的話,那所有這些東西都是真的,而且,其規(guī)模是我們所預(yù)料不到的,是些即便是短期內(nèi)服務(wù)器市場(chǎng)都無(wú)法切入的東西。
這里的重點(diǎn)并不完全在實(shí)用上以及FPGA和英特爾處理器的技術(shù)結(jié)合上,重點(diǎn)更多的在于該項(xiàng)宏大的挑戰(zhàn)本身。顯然,性能上的限制在往前發(fā)展時(shí)是存在的,有摩爾定律的限制,除此以外,功率限制也越來(lái)越大。這才是此項(xiàng)交易的關(guān)鍵所在。Gara在IDF上告訴筆者,“當(dāng)功率受到限制時(shí),要實(shí)現(xiàn)一些功能就要找一些特別的方法,以追求性能和平均每瓦的性能,這樣做是非常有益的,能夠提供不同層次的性能。”
Gara表示,“我們認(rèn)識(shí)到我們能夠?qū)⒋罅抗δ苷系轿覀兊男酒?,我們也就有了加入更多特別功能的機(jī)會(huì),利用FPGA,我們有機(jī)會(huì)做到這一點(diǎn),而且是以一個(gè)更普遍的方法,一個(gè)獨(dú)特的特定功能不僅僅只是為了一個(gè)客戶,它可以為我們提供更多的共性。”
上述說(shuō)法頗為激勵(lì)人心,但算不上未來(lái)的路線圖,Gara表示,他認(rèn)為FPGA功能大致可以朝多方面發(fā)展。“就是說(shuō),可以向離散和外部設(shè)備方面發(fā)展,就目前外部設(shè)備的狀況而言,F(xiàn)PGA可以進(jìn)入包裝,甚至存在向處理器核心方面發(fā)展的潛力。這一塊的機(jī)會(huì)一大把,我不是說(shuō)我們對(duì)于所有這些已經(jīng)搞透徹了,我們確切地知道我們要去哪,但卻也是一個(gè)大機(jī)會(huì)。”
從下圖中可以看到上述各點(diǎn),其中的QPI鏈接通過(guò)PCIe卡提供高帶寬和高速度。有了這個(gè)以后,假定其編程模式用的此處所給出,那么稍微想想即不難猜出,英特爾和Altera心里想的模型將會(huì)遵循一個(gè)一致性模型(Coherency model)。這樣的做法可能會(huì)延伸到未來(lái)時(shí)代,屆時(shí),一切都是在統(tǒng)一的芯片上完成,芯片上類似于我們現(xiàn)在用的CPU和GPU一類的共享內(nèi)存架構(gòu)可以讓一切出現(xiàn)在一個(gè)地方。FPGA似乎也可以擁有自己的PCI-Express適配器插槽,即是說(shuō),別的東西可以直接與其連接,或是通過(guò)至強(qiáng)E5芯片連接。
Gara在IDF討論會(huì)上談話的關(guān)鍵是關(guān)于工作負(fù)載加速的概念。當(dāng)然這不是什么新概念;事實(shí)上,它是處理器發(fā)展的一部分(曾記否,浮點(diǎn)單元也被視作加速器,直到后來(lái)被整合,現(xiàn)在到了到處都是浮點(diǎn)單元的地步)。對(duì)于英特爾來(lái)說(shuō),其演變花了一段時(shí)間,目前的例子是Xeon Phi,Xeon Phi整合了高吞吐量組件,這些組件經(jīng)優(yōu)化后成為高性能計(jì)算的關(guān)鍵工作負(fù)載。關(guān)鍵的一點(diǎn)是,工作負(fù)載加速的下一步是FPGA元素,從市場(chǎng)的角度來(lái)看,工作負(fù)載加速是多樣化的,具有無(wú)限的可能性。其應(yīng)用區(qū)域包括超大規(guī)模和云細(xì)分市場(chǎng),二者極有可能成為英特爾與Altera的FPGA大實(shí)驗(yàn)場(chǎng),用于實(shí)驗(yàn)應(yīng)用程序和節(jié)點(diǎn)級(jí)別的加速。
用于大型云的快速數(shù)據(jù)包
目前還很難確定的說(shuō)大型云供應(yīng)商是如何看待FPGA潛力的,但可以保險(xiǎn)地說(shuō),他們很可能也非常了解加速可以在諸如機(jī)器學(xué)習(xí)和其他應(yīng)用程序中不同的工作負(fù)載方面發(fā)揮作用,在節(jié)點(diǎn)上也有用。例如,我們?cè)缇椭牢④浽陉P(guān)注FPGA,特別是他們的Bing搜索引擎也使用加速。不久前,微軟Azure集團(tuán)首席技術(shù)官M(fèi)ark Russinovich談到Azure可以采用FPGA提升智能網(wǎng)卡性能以加強(qiáng)數(shù)據(jù)包的處理。
Russinovich在今年6月的開放網(wǎng)絡(luò)峰會(huì)上就其他大型云服務(wù)提供商的方向或許頗為一針見血地指出,“擴(kuò)展到40 Gbps或以上需要對(duì)數(shù)據(jù)包處理進(jìn)行非常大量的計(jì)算。微軟正在Azure SmartNICs上構(gòu)建網(wǎng)絡(luò)接口控制器(NIC)轉(zhuǎn)移,無(wú)需消耗CPU資源但可以幫助我們擴(kuò)展,如此,這些CPU資源就可以提供給客戶虛擬機(jī)用。”這位云計(jì)算CTO表示,盡管FPGA中還沒(méi)有在服務(wù)器上廣泛用于計(jì)算加速,但他的團(tuán)隊(duì)正在積極地利用FPGA“和SDN的可編程性達(dá)成快速規(guī)?;瑢S糜布男阅茉跇I(yè)界是獨(dú)特的。”
對(duì)于大云供應(yīng)商來(lái)說(shuō),關(guān)鍵是可編程性、可移植性和靈活性,當(dāng)然,對(duì)于其他通用用戶來(lái)說(shuō)也是這樣。人們一般不會(huì)很自然地選這幾條來(lái)形容FPGA,但英特爾(主要是旗下的芯片業(yè)務(wù)和HDL經(jīng)驗(yàn))多年來(lái)在這一塊做了大量的工作,Altera公司也在許多相同的問(wèn)題上辛勤地耕耘著。
當(dāng)然,F(xiàn)PGA和加速器前沿的發(fā)展受益的不單單是云供應(yīng)商。Gara和Stickland均引用了一些諸如高頻交易、科學(xué)計(jì)算、網(wǎng)絡(luò)壓縮、存儲(chǔ)加、媒體轉(zhuǎn)碼的應(yīng)用例子以及其他領(lǐng)域里未來(lái)重點(diǎn)發(fā)展的例子,這些有一部分是來(lái)自現(xiàn)存的工具軟件,如英特爾的數(shù)據(jù)平面開發(fā)工具包、加密和壓縮用的基于硬件加速的QuickAssist工具等等。
在一系列的發(fā)言里,Altera公司Mike Strickland是個(gè)中心話題,他圍繞FPGA利用OpenCL到HDL轉(zhuǎn)換器而推動(dòng)編程方法概述了一些新的和有意思的資料。關(guān)于這一點(diǎn),如果翻一翻那個(gè)幻燈片就可以很明顯地看到,編程環(huán)境正在發(fā)展。筆者以前曾介紹過(guò),現(xiàn)存的OpenCL編譯器可以處理大量繁重的后端工作。Strickland表示,F(xiàn)PGA因此可以在OpenCL以外擁有更廣泛的基礎(chǔ),例如和OpenMP結(jié)合。 他稱,“我們的一些用戶用慣了HDL,他們?nèi)匀豢梢岳^續(xù)用,但可以配合OpenCL內(nèi)核混合用(最終要發(fā)展到OpenMP內(nèi)核)。這里多了一個(gè)新的靈活性。”