FPGA的過(guò)去,現在和未來(lái)
自Xilinx在1984年創(chuàng )造出FPGA以來(lái),這種可編程邏輯器件憑借性能、上市時(shí)間、成本、穩定性和長(cháng)期維護方面的優(yōu)勢,在通信、醫療、工控和安防等領(lǐng)域占有一席之地,在過(guò)去幾年也有極高的增長(cháng)率。而進(jìn)入了最近兩年,由于云計算、高性能計算和人工智能的繁榮,擁有先天優(yōu)勢的FPGA的關(guān)注度更是到達了前所未有的高度。本文從基礎出發(fā)談及FPGA的過(guò)去、現在與未來(lái)。
本文引用地址:http://dyxdggzs.com/article/201710/365572.htm我們知道,相對于專(zhuān)業(yè)的ASIC,FPGA有上市時(shí)間和成本上的優(yōu)勢。另外,在大多數情況下,FPGA執行某些功能較之CPU上的軟件操作更高效。這就是為什么我們認為它不但會(huì )運用在數據中心的服務(wù)器、交換器、存儲層的各個(gè)角落,并且具有加速整個(gè)工作流程的功能。
然而我們不能過(guò)分樂(lè )觀(guān),尤其是在2015年12月,Intel以167億美元收購了FPGA生產(chǎn)商Altera之后。
在2014年年底,當時(shí)還處于獨立的Altera公司高層盯上了基于CPU+FPGA的數據中心并行計算的發(fā)展前景——這個(gè)當時(shí)價(jià)值大約10億美元的市場(chǎng)。而并非數據中心里約2.5億美元的CPU-GPU市場(chǎng)和直接應用CPU處理器的90億美元市場(chǎng)。
Altera做出這個(gè)決定的原因在于他們認為這個(gè)組合較之另外兩個(gè)方案,有編程的簡(jiǎn)便性和能效優(yōu)勢。人們對CPU非常熟悉,并發(fā)現尋找C程序員也不會(huì )太難。因此對大部分開(kāi)發(fā)者來(lái)說(shuō),在執行運算任務(wù)的時(shí)候,持續使用這種方案不需要冒太大的風(fēng)險,但是能源效率相對比較低,尤其是在密集的計算和固有的并行工作負載的情況底下。
至于CPU+GPU的方案,程序員并不是很熟悉,但是擁有很高的效率。
根據Altera的估計,使用OpenCL對混合CPU-FPGA系統進(jìn)行編程比使用Nvidia的CUDA環(huán)境對于程序員來(lái)說(shuō)更容易(某些方面肯定是有爭議的),但用HDL來(lái)硬編程FPGA是相當困難的,因此需要OpenCL或者通過(guò)其他抽象層來(lái)將CPU中的負載轉移到FPGA上。
Intel收購Altera改變FPGA格局
這個(gè)十億美元的數據中心市場(chǎng)被Altera、Xilinx和其他FPGA供應商瓜分。在Intel于2015年6月收購了Altera之后,這個(gè)市場(chǎng)變得更加復雜。
在收購之前的2014年,Altera的19億美元收入中,有16%來(lái)自于與數據中心相關(guān)的計算、網(wǎng)絡(luò )和存儲業(yè)務(wù),其總值達到3.04億美元。那些在這個(gè)領(lǐng)域深耕十幾二十年的通信和無(wú)線(xiàn)設備系統制造商想要有更高的能源效率,更低的成本和更高的擴展性,這些都是FPGA所擅長(cháng)的領(lǐng)域。另外有一點(diǎn)需要提一下,那就是在執行這些功能的時(shí)候,使用FPGA并不需要像使用CPU那樣需要操作系統和相應的軟件。這部分的營(yíng)收占了Altera營(yíng)收的44%,總額為8.35億美元。
Altera另外的22%收入,即4.18億美元,來(lái)自工業(yè)控制、軍事設備和汽車(chē)制造等領(lǐng)域。他們面對相同的困境,因此選擇FPGA來(lái)處理他們的一些工作負載。
其實(shí)早在2014年,英特爾看中了價(jià)值1150億美元的各種類(lèi)型的芯片潛在市場(chǎng)。當中可編輯邏輯設備(以FPGA為主)約占4%,ASIC占18%,其余為ASSP的大雜燴。
在可編輯邏輯設備的領(lǐng)域中,英特爾預估Altera占有48億美元市場(chǎng)中的39%,Xilinx占有49%,剩下供應商則占據剩下的12%。
當時(shí)英特爾沒(méi)有收購Altera的原因是因為FPGA業(yè)務(wù)的增長(cháng)速度幾乎與其數據中心集團(為服務(wù)器,存儲和交換機制造商提供芯片,芯片組和主板)的速度一樣快。
再者,英特爾沒(méi)有這樣做也是因為摩爾定律逐漸緩慢下來(lái)的腳步,給FPGA帶來(lái)了日益增長(cháng)的競爭威脅。
實(shí)際上,如果應用的話(huà),在數據中心里不止安裝一個(gè)FPGA、GPU或DSP加速器,但不需要安裝多個(gè)Xeon CPU。由于英特爾不能繼續為Xeons提供更多的核心和加速器,所以他們得出了將FPGA當做加速器的結論。
除非FPGA能在數據中心創(chuàng )造5億美元的收益,或者幾年后創(chuàng )造10億美元或更多的收入。不然英特爾寧愿犧牲兩至三倍的Xeon收入,也不會(huì )把Xeon的收入拱手相讓。
深度學(xué)習加持,FPGA前景可人
根據英特爾的預測,他們計劃從現在到2023年以接近直線(xiàn)增長(cháng)率來(lái)提升FPGA的業(yè)務(wù)。對此我們總是抱有懷疑的態(tài)度。但FPGA業(yè)務(wù)隨著(zhù)時(shí)間的推移或多或少地在增長(cháng)(比15年前增長(cháng)約2.5倍)。
英特爾還預計,FPGA的營(yíng)收在2014年到2023年之間將會(huì )再翻一倍。按照英特爾預測,從2014年到2023年間其復合年增長(cháng)率為7%,其收入應該略低于預測的89億美元。有趣的是,由于英特爾的預測并沒(méi)有把來(lái)自數據計算中心(服務(wù)器,交換和網(wǎng)絡(luò ))的FPGA收入份額納入計劃中,這將會(huì )發(fā)生很大變化。讓我們分析一下:
如果Altera和Xilinx的市場(chǎng)份額沒(méi)有發(fā)生改變,且假設Altera的收入在網(wǎng)絡(luò ),計算和存儲的部分保持不變,那么Altera這一部分的業(yè)務(wù)收入到2023年將會(huì )達到5.6億美元左右。我們認為Intel這樣的數據低估了數據中心在提供更有效和靈活計算所面對的壓力。不給過(guò)我們認為FPGA的前景遠遠優(yōu)于這個(gè)預測。也就是說(shuō),許多FPGA技術(shù)的支持者一直期待FPGA在數據中心中獲得計算合法化的那天很快到來(lái)。
諷刺的是,英特爾本身作為FPGA的編程專(zhuān)家,硬件描述語(yǔ)言的使用者,以及知名的ASIC制造商,竟成為推動(dòng)FPGA成為加速器優(yōu)先選擇的主要參與者。這樣的加速器既能作為獨立的離散計算元件,又可以作為混合 CPU-FPGA器件。
這也是為什么從2016年以來(lái),我們看到所有關(guān)于A(yíng)ltera的新聞都是昭示FPGA將會(huì )有的大規模增的增長(cháng)。所以至少在短期,他們除了為其他的FPGA制造商作嫁衣裳,幾乎別無(wú)他法。
這次收購不僅是FPGA發(fā)展的里程碑,也是英特爾對FPGA巨大的潛力的承認。FPGA作為未來(lái)強大的計算加速器,不但影響主要企業(yè)的決策和市場(chǎng)趨勢,而且加速企業(yè)中的工作負載,促進(jìn)超大規模數據中心的內部搜索,以及提高高性能計算模擬的地位。
在跨越2017年之際,FPGA在應用程序中等級中新增了機器學(xué)習和深度學(xué)習,這給FPGA產(chǎn)業(yè)敲下了又一重錘。
為什么大家都青睞FPGA
首先,編程FPGA的軟件棧已經(jīng)演進(jìn)了,尤其是在A(yíng)ltera的幫助下,FPGA增加了對OpenCL開(kāi)發(fā)環(huán)境的支持。但不是每個(gè)人都是OpenCL的狂熱粉絲。
先有Nvidia為其Tesla GPU加速器創(chuàng )建了自己的CUDA并行編程環(huán)境。再有SRC計算機公司不但早在2002年就為國防和智能領(lǐng)域提供混合CPU-FPGA系統,到了2016年年中,進(jìn)一步將自己研發(fā)的Carte編程環(huán)境進(jìn)入了商業(yè)市場(chǎng),這個(gè)編程環(huán)境可以使C和Fortran程序自動(dòng)轉換為FPGA的硬件描述語(yǔ)言(HDL)。
另一個(gè)推動(dòng)FPGA被采用的因素是隨著(zhù)芯片制造技術(shù)難以持續縮進(jìn),多核CPU性能的提高越來(lái)越艱難。 雖然CPU的性能獲得了大跳躍,但主要用于擴展CPU的性能吞吐量,而不是單個(gè)CPU內核的個(gè)體性能。(我們知道架構增強是有難度的)。但是FPGA和GPU加速器的每瓦性能都有了令人信服的改進(jìn)。
根據微軟的運行測試,在執行深度學(xué)習算法的時(shí)候,CPU-FPGA和CPU-GPU混合計算在的每瓦性能也不相伯仲。GPU在運行中更熱和有類(lèi)似的每瓦性能表現,但是同時(shí)他們也帶來(lái)了更強的工作能力。
提高了每瓦性能解析了為什么世界上最強大的超級計算機在20世紀90年代后期轉移到并行集群,并且解析了為什么現在他們轉向了混合機器,而不是英特爾的下一個(gè)以 CPU-GPU為混合主力的Xeon Phi的處理器“Knights Landing (簡(jiǎn)稱(chēng)KNL)。
在A(yíng)ltera FPGA協(xié)處理器和Xeon Phi處理器Knights Landing的幫助下,英特爾不但可以保持自己的在高端的競爭優(yōu)勢。并且在與Nvidia 、IBM和 Mellanox組成的Open power聯(lián)盟競爭中繼續領(lǐng)先。
英特爾堅信超大規模計算,云端和HPC市場(chǎng)的工作負載會(huì )快速成長(cháng)。為促進(jìn)其計算業(yè)務(wù)繼續蓬勃發(fā)展。這情況下只能成為FPGA的賣(mài)家,否則別人就會(huì )搶去這唯一的出路。
但英特爾并不是這樣跟大家說(shuō)。他們說(shuō):“我們不認為這是一種防守戰或者其他,”英特爾的CEO Brian Krzanich在A(yíng)ltera收購消息后的新聞發(fā)布會(huì )上說(shuō)。
“我們認為物聯(lián)網(wǎng)和數據中心都是龐大的。這些也是我們的客戶(hù)想要構建的產(chǎn)品。我們30%的云端工作負載將在這些產(chǎn)品上,這是基于我們對如何看待趨勢變化以及市場(chǎng)發(fā)展的預測。
這是用來(lái)證明這些工作負載能以一種或另一種方式轉移到硅中。我們認為最好的做法是使用有業(yè)界最佳性能和成本優(yōu)勢的Xeon處理器和FPGA組合。這將給工業(yè)領(lǐng)域帶來(lái)更好的產(chǎn)品和性能。而在IoT中,這將擴展到潛在市場(chǎng)對抗ASIC和ASSP;而在數據中心中,則會(huì )將workload轉移到硅,推動(dòng)云的快速增長(cháng)。
Krzanich解釋道:“你可以把FPGA想象成一堆gate,且能夠隨時(shí)編程。根據他們的想法,其算法會(huì )隨著(zhù)時(shí)間的推移和學(xué)習變得更聰明。FPGA可以用作多個(gè)領(lǐng)域的加速器,可以在進(jìn)行加密的同時(shí)進(jìn)行面部搜索,而且能在基本上在微秒內重新編程FPGA。這比大規模的單個(gè)定制部件的成本低得多且具備更高的靈活性。”
英特爾看到了更大的機會(huì )
英特爾看到了比這更大的機會(huì )。
Intel首席執行官Brian Krzanich在收購完成后宣布,到2020年,將有高達三分之一的云端服務(wù)提供商使用混合的CPU-FPGA服務(wù)器節點(diǎn),這是一個(gè)令人震驚的消息。這也給從2014年底就開(kāi)始瞄準的數據中心的Altera帶來(lái)大約10億美元的FPGA的機會(huì )。這數目大概是Nvidia目前流行的Tesla計算引擎營(yíng)收的三倍。
在2014年初,英特爾展示了一個(gè)相同封裝的Xeon-FPGA芯片原型,并且打算在2017年推出這個(gè)芯片。這是基于當時(shí)數據中心集團GM Diane Bryant提出的一個(gè)帶有FPGA電路的Xeon設想不久之后推出的。
在宣布Altera交易的電話(huà)會(huì )議上,Krzanich沒(méi)有說(shuō)明退出這款Xeon-FPGA設備的時(shí)間,但是他表示英特爾將創(chuàng )建一個(gè)面向物聯(lián)網(wǎng)市場(chǎng)的單die混合Atom-FPGA設備。英特爾正在考究在混合過(guò)渡階段,是否需要為Atom和Altera FPGA做單一封裝混合。
在2016年的初太平洋頂峰證券的電話(huà)會(huì )議中,英特爾的云端基礎設施集團總經(jīng)理Jason Waxman與研究分析師討論關(guān)于英特爾數據中心業(yè)務(wù)時(shí)表示,FPGA已經(jīng)成為了熱門(mén)話(huà)題。
首先,雖然他沒(méi)有指名道姓哪家廠(chǎng)商或者任何設備的規格,但是Waxman確定英特爾已經(jīng)為某些客戶(hù)提供了Xeon加FPGA的混合計算引擎樣品。
在會(huì )議期間,Waxman更是暢談了驅動(dòng)英特爾收購Altera和插足可編程計算設備的原因。 英特爾顯然希望讓FPGA成為主流,即使這可能會(huì )在數據中心中蠶食Xeon的某些業(yè)務(wù)。 (我們認為,因為英特爾認為這種自相殘殺是不可避免的,控制它的最好方法是使FPGA成為Xeon陣容的一部分。)
Waxman說(shuō):“我認為這項收購可能涉及許多事情,而且其中一些已經(jīng)超越數據中心集團的范圍。”
首先,一個(gè)潛在的核心業(yè)務(wù)往往是由制造領(lǐng)先優(yōu)勢驅動(dòng)。在這方面我們能很好的掌控,而且這樣做還有良好的協(xié)同作用。
再者,還有物聯(lián)網(wǎng)“集團”對此也有很強的興趣。
據我們所知,某些大規模工作負載的擴展(如機器學(xué)習,某些網(wǎng)絡(luò )功能)吸引了越來(lái)越多的人關(guān)注。我們才意識到我們或者可以在性能方面取得一些突破,這將是一個(gè)把FPGA從數據中心應用程序中移植到更多適合的、廣泛發(fā)展領(lǐng)域的良好機會(huì )。
但是在數據中心集團里的協(xié)作,FPGA不過(guò)是給CPU做個(gè)伴,幫助解決云端服務(wù)提供商和其他類(lèi)型的大規模應用程序的問(wèn)題。
英特爾認為對FPGA加速有優(yōu)先和大量需求的關(guān)鍵應用包括機器學(xué)習,搜索引擎索引,加密和數據壓縮。正如Waxman指出,這些往往是很有針對性的,且沒(méi)有統一的使用案例。這就是Krzanich斬釘截鐵說(shuō)三分之一的云端服務(wù)提供商將在五年內使用FPGA加速的依據。
跨越FPGA的障礙
雖然每個(gè)人都抱怨編程FPGA有多難,但英特爾并不為此退縮。雖然沒(méi)有透露太多相關(guān)計劃的情況下,Waxman提出了一些方法讓FPGA更容易被運用和理解。
Waxman說(shuō):“我們所擁有的是獨一無(wú)二的,這是其他人不能給的。那就是我們能夠了解這些工作負載和能夠推動(dòng)加速的能力。
“我們看到一條促進(jìn)機器學(xué)習,加速存儲加密,加速網(wǎng)絡(luò )功能的捷徑”,Waxman強調。這是基于我們對這些工作負載的深入了解,所以才讓我們看到了這樣的機會(huì )。
但現在FPGA還需要面對一些困難,因為現在人們是寫(xiě)RTL的。我們是一家寫(xiě)RTL的公司,所以我們可以解決這個(gè)問(wèn)題。首先我們使它運作,然后我們可以降低進(jìn)入的門(mén)檻。第三步是真正的規模經(jīng)濟學(xué),而這全部是靠集成和制造的實(shí)力。
為了解決這些障礙,我們提供了一系列的方法。
X86+FPGA?
對于那些英特爾打算用FPGA來(lái)代替Xeons的猜測,Waxman表示這是一派胡言。
Waxman表示,對于那些對高速率和重復性有強烈需求的算法,具有先天優(yōu)勢的FPGA就是其最好的選擇。而那些對延遲有極高需求的數據操作和轉換,FPGA也是候選人。
考慮到Altera已經(jīng)在一個(gè)SoC上集成了ARM處理器和FPGA,這很自然地會(huì )想到英特爾會(huì )試圖用X86內核全面替換ARM內核來(lái)做類(lèi)似的設備。但它看起來(lái)不像這會(huì )發(fā)生。
首先,在2016年第二季度英特爾財務(wù)聲明會(huì )上,Krzanich承諾,英特爾將加強對目前使用Altera的ARM-FPGA芯片客戶(hù)的支持。
Waxman進(jìn)一步澄清:“我們的觀(guān)點(diǎn)是會(huì )以某種形式把FPGA集成到Xeon里。我們已經(jīng)公開(kāi)宣布將會(huì )打造第一代使用這種單一封裝的設備,但是我們將根據進(jìn)展情況調整方向,甚至可能會(huì )在同一個(gè)die上實(shí)現。我們將根據客戶(hù)的反饋了解什么是正確的組合。
順便說(shuō)一下,我仍然期待看到?jīng)]有集成的系統,保持他們會(huì )做系統級的協(xié)同。我們不會(huì )將Xeon與FPGA以多種方式組合集成,反之我們會(huì )在市場(chǎng)上找到正確的目標和平衡。”
編程問(wèn)題首當其沖
雖然Altera的工具集利用OpenCL編程模型獲得應用程序代碼,并將其轉換為RTL(FPGA的原生語(yǔ)言),但是有趣的是,英特爾并不認為FPGA在數據中心的未來(lái)成功是基于OpenCL與RTL工具集成的改進(jìn)或更廣泛地采用OpenCL。
Waxman也強調地說(shuō):“這并不是以OpenCL為基礎的。”雖然我們確實(shí)把OpenCL看作是進(jìn)一步擴大FPGA應用范圍的一個(gè)途徑,但目前FPGA的初始云端部署可能由更具能力的公司完成,但他們并沒(méi)有要求我們提供OpenCL。Waxman補充說(shuō)。
Waxman在不能“自由”地談?wù)摰那闆r下,暗示英特爾有計劃使FPGA更容易編程。他表示Intel將會(huì )為程序員提供RTL庫,方便他們調用在FPGA上部署的例程,并推動(dòng)在其上執行應用程序的gate的形成,來(lái)實(shí)現應用程序例程的gate,而不是讓他們自己創(chuàng )建例程。這有一定的意義,與Convey(現在是美光科技的一個(gè)部門(mén))幾年前用FPGA加速系統處理的方案一樣。
Waxman說(shuō):“我認為有一個(gè)連續的加速。在一開(kāi)始,你可能不知道你正在試圖加速什么,只是做了一些嘗試,因此在這個(gè)階段加速,你想要的是一個(gè)更通用的目的。當你開(kāi)始真正地想要加速的時(shí)候,你會(huì )想要更高效的,更低的功耗和更少的空間,這時(shí)你就會(huì )把焦點(diǎn)移到FPGA上。”
Waxman還引用了Microsoft在其“Catapult”系統上使用FPGA加速的方案來(lái)說(shuō)明。
該系統采用其Open Cloud Server并添加FPGA夾層卡作為加速器。我們在3月份研究了這個(gè)項目,將這些加速器應用在Google上執行相同的圖像識別訓練算法,得出的結果顯示,25瓦的FPGA器件相對于使用Nvidia Tesla K20 GPU加速器(235瓦特)的服務(wù)器,提高了更好的性能/瓦特。
正如我們所說(shuō),我們對于微軟和Google發(fā)布的性能數據毫無(wú)疑問(wèn)。但是對分立的GPU或FPGA執行應用性能和對自身的熱配置文件進(jìn)行測量都是不公平的。你必須在服務(wù)器節點(diǎn)級別上看到這一點(diǎn)。
如果意識到這點(diǎn),得到FPGA輔助的Microsoft服務(wù)器在系統級只稍稍領(lǐng)先于用Tesla K20s的Google服務(wù)器。(這些只是我們基于每秒每瓦特圖像處理性能的估計)。在這個(gè)對比中,Microsoft應該不考慮成本。而且坦白說(shuō),不同于什么都配備的Tesla GPU,微軟開(kāi)放云端服務(wù)器并沒(méi)有使用Juice或Cooling。真正的評測怎么都會(huì )使用GPU夾層卡,同時(shí)還需要考慮熱量,性能和價(jià)格等因素。
但是Waxman討論的重點(diǎn)仍然是那個(gè)。“在某個(gè)時(shí)候,你真的很想要那個(gè)能給你驚喜,并且能做到更低功耗的方案。而這就是我們的FPGA方案所擅長(cháng)的方面。”
云端業(yè)務(wù)
最后要考慮的是英特爾的云端業(yè)務(wù)。這些客戶(hù)現在占據了他們數據中心集團收入的25%。
整體來(lái)看,他們的購買(mǎi)量每年增長(cháng)約25%。預計從2016年開(kāi)始,未來(lái)幾年整體數據中心集團業(yè)務(wù)都將增長(cháng)15%。讓我們做一些計算。
如果英特爾的計劃如期實(shí)施,他的數據中心集團2016年收益將會(huì )達到166億美元。云端服務(wù)提供商(其中包括在The Next Platform上使用我們的語(yǔ)言的云端構建者和超大規模計算者)占大約41億美元,其余歸屬于英特爾數據中心,銷(xiāo)售數據大約為125億美元。因此,英特爾數據中心的業(yè)務(wù)增長(cháng)在12%左右(除云端外),是云端速率的一半。英特爾需要以任何方式來(lái)滿(mǎn)足云端的增長(cháng)和明顯的FPGA需求,即使它只占用Xeon容量的一點(diǎn)點(diǎn)。對于英特爾來(lái)說(shuō)是這個(gè)的選擇比讓GPU加速持續增長(cháng)的方案要好。
編程方面可能是阻礙FPGA被廣泛采用的一個(gè)主因(不像其他加速器,具有豐富的開(kāi)發(fā)生態(tài)系統,如Nvidia GPU的CUDA)。這就驅動(dòng)程序員去基于C語(yǔ)言去做擴展設計,或使用OpenCL,而不是用過(guò)去困擾FPGA開(kāi)發(fā)的低級模型。但即使在應用的過(guò)程中有這么多里程碑,FPGA仍然不被主流青睞。我們將會(huì )探索解決編程問(wèn)題的方法和機會(huì )。
雖然我們已經(jīng)與這個(gè)相對較小的生態(tài)系統中的許多供應商(包括Altera和Xilinx,兩個(gè)主要供應商)進(jìn)行了交流,但按照FPGA長(cháng)期研究員Russell Tessier所說(shuō),FPGA在更廣闊的市場(chǎng)上大展拳腳的日子還在前面,新的發(fā)展意味著(zhù)更廣泛的采用。
他在馬薩諸塞大學(xué)(他還在A(yíng)ltera工作,并且Mentor Graphics收購的虛擬機工程的創(chuàng )始人)研究了FPGA二十多年,他認為FPGA從科學(xué)項目到企業(yè)應用的形勢正式緩變化。他認為其中的關(guān)鍵是來(lái)自于設計工具的改進(jìn),設計人員不斷提高他們設計高水平。除此與外,工具vendor可以更好地引導芯片發(fā)展。他補充說(shuō),設備內的大量邏輯量意味著(zhù)用戶(hù)能夠實(shí)現更多的功能,這使得FPGA對更多領(lǐng)域更廣泛的吸引力。
Tessier說(shuō):“在過(guò)去幾年里,FPGA的一個(gè)明顯趨勢就是這些設備更容易“程序化”。
Xilinx目前鼓勵使用其Vivado產(chǎn)品的時(shí)候,用C語(yǔ)言進(jìn)行設計。Altera還有一個(gè)已經(jīng)開(kāi)發(fā)的OpenCL環(huán)境。關(guān)鍵是兩家公司都在試圖創(chuàng )建一個(gè)環(huán)境,讓用戶(hù)可以使用更熟悉的編程(如C和OpenCL),而不必是使用RTL設計專(zhuān)家所擅長(cháng)的Verilog或VHDL。雖然在過(guò)去幾年里取得不錯的成績(jì),但這仍然處于推進(jìn)的階段,不過(guò)這將有助于把更多的事情地移入主流。
其中一個(gè)對FPGA真正有利的因素就是如果將其和芯片搭配使用,建立一個(gè)快速的內部互聯(lián),它能解決memory和數據移動(dòng)中的限制。這種優(yōu)勢就是吸引Intel收購Altera的主要誘因。另外,如果像英特爾和IBM這樣的大公司能夠積極推動(dòng)FPGA的軟件生態(tài)系統的建設,其應用市場(chǎng)將會(huì )迅速擴張。FPGA的主流化(至少現在沒(méi)有GPU那么重要,)可能會(huì )更快地出現。
Tessier解釋?zhuān)?ldquo;標準核心處理器集成的增加肯定是關(guān)鍵所在。過(guò)去的障礙是語(yǔ)言和工具,隨著(zhù)這些障礙越來(lái)越少,為芯片供應商新的合作機會(huì )打開(kāi)了一扇門(mén)。由于這些和其他“主流化”趨勢出現,不斷做出的改變的FPGA的應用領(lǐng)域將繼續增長(cháng)。例如,金融服務(wù)商店是第一個(gè)使用FPGA進(jìn)行財務(wù)趨勢和股票選擇分析的用戶(hù),但使用案例正在擴大?,F在有更強的設備可以解決更大的問(wèn)題。
更廣泛的應用領(lǐng)域
除此之外,FPGA通過(guò)的其他新領(lǐng)域發(fā)現新用途,包括DNA測序,安全性,加密和一些關(guān)鍵的機器學(xué)習任務(wù)。
當然,我們希望FPGA變得強大,并“進(jìn)入”世界上最大的云端和超大規模數據中心,Xilnix數據中心部門(mén)副總裁Hamant Dhulla對此表示強烈贊同。他在2016年初,他告訴The Next Platform, “異構計算已經(jīng)不再是一種趨勢,而是現實(shí)”,也就是在那個(gè)時(shí)候,微軟推出了使用FPGA的Catapult案例(現在就很多或以后會(huì )很多),英特爾收購了Altera以及看到了更多FPGA將廣泛應用在數據中心的聲明。
從機器學(xué)習,高性能計算,數據分析等領(lǐng)域,FPGA在更多樣化的應用領(lǐng)域中嶄露頭角。這些都與FPGA上嵌入了越來(lái)越多可用的on-chip存儲器有關(guān),這些都是FPGA制造商和潛在終端用戶(hù)所期待的。 Dhulla表示,市場(chǎng)潛力足夠大,讓Xilinx能夠調整其業(yè)務(wù)的方式。 過(guò)去幾年,存儲和網(wǎng)絡(luò )主導了FPGA用戶(hù)群。但未來(lái)五年內,計算端的需求將遠遠超過(guò)存儲和網(wǎng)絡(luò ),并都將沿著(zhù)穩定的增長(cháng)線(xiàn)繼續發(fā)展。
在FPGA其他的熱門(mén)領(lǐng)域(包括機器學(xué)習),它們的更像是一個(gè)帶有GPU 的“協(xié)作”加速器。毫無(wú)疑問(wèn),對于許多機器學(xué)習工作負載的訓練部分,GPU是主要的。因此為這里需要很多計算能力,就像HPC一樣,其中power envelope tradeoff值得的。但是這些客戶(hù)購買(mǎi)了數十或數百個(gè)GPU,而不是數十萬(wàn)個(gè),龐大的加速器數目正使用在機器學(xué)習pipeline的推理部分,這就是市場(chǎng)所在。
正如我們指出的,Nvidia正在使用兩個(gè)獨立的GPU(用M4來(lái)訓練,更低功耗的M4插入來(lái)削減服務(wù)器)來(lái)抵消這一點(diǎn),但Dhulla認為FPGA仍然能夠通過(guò)采用PCIe方法降低功耗,也可以嵌入超大規模數據中心。
他們的SDAccel編程環(huán)境通過(guò)提供對C,C ++和OpenCL的高級接口,使其更實(shí)用,但是推動(dòng)超大規模和HPC采用的真正途徑是通過(guò)最終用戶(hù)示例。
當涉及到這些早期的用戶(hù),就像為下一代的FPGA的應用搭建了舞臺,Dhulla指向像Edico Genome這樣的公司。Xilinx目前還與其他領(lǐng)域的客戶(hù)合作,包括石油和天然氣和金融方面的歷史計算方面。早期客戶(hù)將Xilinx 的FPGA應用在機器學(xué)習,圖像識別和分析以及安全性方面,這可以看作他們計算加速業(yè)務(wù)發(fā)展的第一步。
盡管雙精度性能和總體價(jià)格不佳,FPGA的真正的大規模應用機會(huì )在于云端。因為FPGA可以提供GPU所不能提供的優(yōu)勢。如果FPGA供應商能夠說(shuō)服其最終用戶(hù),他們的加速器可以提供相當大的性能提升(在某些情況下他們會(huì )這樣做)給關(guān)鍵的工作負載。提供一個(gè)通過(guò)帶有其他加速器(例如CUDA)的complexity-wise的編程環(huán)境推進(jìn)OpenCL開(kāi)發(fā),通過(guò)在云端中提供FPGA來(lái)解決價(jià)格問(wèn)題。這可能是一個(gè)新的希望。
當然,這種希望來(lái)源于將FPGA部署到有超密集服務(wù)器云端架構內,而不是在單機的銷(xiāo)售上。這種模式已經(jīng)在FPGA的金融服務(wù)中發(fā)生。
正如他們GPU加速器“伙伴”圍繞深度學(xué)習進(jìn)行拉動(dòng),以便迅速得到更多的用戶(hù), FPGA設備在探索一個(gè)通過(guò)解決神經(jīng)網(wǎng)絡(luò )和深度學(xué)習的問(wèn)題的方式找尋入侵市場(chǎng)的真正的機會(huì )。
新的應用程序主機意味著(zhù)新的市場(chǎng),隨著(zhù)云端應用的推廣消除了一些管理開(kāi)銷(xiāo),它可能意味著(zhù)更廣泛的采用。FPGA供應商努力推動(dòng)它在一些關(guān)鍵的機器學(xué)習,神經(jīng)網(wǎng)絡(luò )和搜索方面的應用。FPGA在諸如自然語(yǔ)言處理,醫學(xué)成像,深度數據檢測等領(lǐng)域中的超大規模上下文中變得越來(lái)越普遍。
在過(guò)去一年里,FPGA的多種應用得到曝光,特別是在深度學(xué)習和神經(jīng)網(wǎng)絡(luò ),以及圖像識別和自然語(yǔ)言處理等領(lǐng)域。例如,微軟使用FPGA在1,632個(gè)節點(diǎn)上提供2倍的搜索服務(wù),并采用創(chuàng )新的高吞吐量網(wǎng)絡(luò )來(lái)支持Altera FPGA驅動(dòng)的工作。中國的搜索引擎巨頭百度(也是許多深度學(xué)習和神經(jīng)網(wǎng)絡(luò )任務(wù)GPU用戶(hù))正在用FPGA執行存儲控制,其每天的數據吞吐量在100TB到1PB之間。
使用FPGA的大規模數據中心和其他領(lǐng)域的應用正在吸引人們對FPGA的單精度浮點(diǎn)性能的更多關(guān)注。
雖然一些案例使用(包括百度示例),將GPU作為計算加速器和FPGA用在存儲端,但Altera,Xilnix,Nallatech和IBM的研究人員在OpenPower聯(lián)盟展示了FPGA在云端深度學(xué)習的光明前景。
可以說(shuō)現在屬于FPGA的一個(gè)黃金時(shí)
評論