專訪騰訊云FPGA團隊:FPGA云服務器給產業鏈帶來了哪些價值?
日前,國內云服務商騰訊云宣布推出FPGA云服務器,引起了業界一陣熱議,這是繼國外亞馬遜以及微軟等企業在數據中心做出部署FPGA的嘗試之后,國內首個FPGA云服務器。短短一年的時間,國內外主流云服務企業紛紛把目光聚焦在了FPGA上,這顯然不是巧合,整個云服務行業似乎已經對FPGA在高性能計算上的重要性上達成了一致。
本月早些時候微軟亞洲研究院實習生李博杰曾在知乎上介紹了FPGA的技術特點,其優勢已是路人皆知。但在FPGA云服務器大規模應用之前,大家需要思考的是它對產業鏈的影響是什么,如云服務商該如何部署FPGA云服務器?哪些業務適合放在FPGA云服務器上?它對開發者帶來了什么樣的挑戰?帶著這些問題,雷鋒網(公眾號:雷鋒網)采訪了騰訊云FPGA團隊。
據介紹,騰訊云FPGA團隊由騰訊云基礎產品中心、騰訊架構平臺部組成的團隊,該主要負責FPGA云服務器的開發。
雷鋒網:FPGA云服務器是一個什么樣的概念?
FPGA云服務器
FPGA云服務器,一方面它是屬于異構計算平臺的硬件體系結構,通過并行計算方式,提高服務器計算性能、能效比和計算實時性,對應用實現底層的硬件加速處理;另一方面,通過云服務提供給用戶,用戶可按需付費使用FPGA,極大降低FPGA的使用成本。
以騰訊云為例,騰訊云已經在國內提供了第三方FPGA知識產權市場,通過騰訊云服務市場,FPGA開發者和使用者可以實現高效交易;對于FPGA使用者而言,可以在此購買已開發并驗證好的FPGA知識產權功能,可節約長達數月的FPGA研發周期,同時采用按需使用的付費模式,能最大化地幫助使用者節省硬件投入成本。
雷鋒網:在FPGA云服務器中,CPU會被替代還是“CPU+FPGA”的異構計算模式,它的優勢是什么?
FPGA云服務器并不是要用FPGA替代CPU,而是要將一些CPU做不了的或者不擅長的工作offload到FPGA,讓FPGA和CPU協同工作,是一個以FPGA為協處理器的異構計算平臺。
FPGA獨特的架構帶來了其他處理器無法比擬的優勢,主要體現在它在吞吐率,延遲,功耗和靈活性4個維度上達到了很好的平衡,不存在短板。
具體來講,FPGA跟CPU相比,吞吐率、延遲及單位功耗計算性能都有明顯的優勢;與GPU相比,則因為FPGA很容易做到流水線并行和數據并行,因此能同時做到高吞吐和低延時,而GPU幾乎只能做數據并行,因此延遲比較大;ASIC則因為它的長開發周期和低靈活性,很難適應數據中心業務的變化,也很難完成硬件資源在不同業務中的分配和調度。
另外由于FPGA有高速SERDES等豐富的接口,而且能靈活控制實現的粒度和操作數據,因此非常適合進行協議處理和數據格式的轉換。比如說FPGA可以很方便的接入以太網數據,并對以太網包進行用戶自定義的包過濾等處理,而其他處理器卻很難做到。
雷鋒網:騰訊云使用的是哪家的FPGA芯片?如何部署,一臺服務器有多少FPGA?
目前騰訊云使用的芯片廠家包括業界主流的Xilinx和Intel兩大廠商。前期我們推出的FPGA實例是基于Xilinx芯片平臺,基于Intel平臺的服務會盡快推出。
FPGA云服務器為了提高單臺服務器計算密度和加強FPGA之間通信,每臺服務器支持4個FPGA或8個FPGA配置,滿足用戶超大計算需求。一期針對簡單業務場景,我們提供單機單實例的FPGA云服務器;針對更高性能需求的業務場景,我們近期也將提供單機多實例的FPGA云服務器。
雷鋒網:什么業務/應用場景適合使用FPGA云服務器?能否舉例說明?
FPGA云化對整個FPGA行業來講有著革命性的影響,FPGA的云化大大降低了FPGA的使用門檻,完全不需要新的硬件定制,只需要比較少的投入就可以得到較高的收益。會使得之前一些不傾向于使用FPGA或不會使用FPGA的行業或者業務場景,現在重新審視是否需要用FPGA的優勢來做點什么。
FPGA的優勢是計算的高吞吐量、低延時、低功耗。
1.在機器學習領域、金融領域、大數據領域、基因檢測領域都存在比較大的數據量需要分析計算,這些是FPGA云服務器可以發揮高吞吐優勢的領域。
2.網絡安全領域有更安全、更低延時的需求,這些場景也可以發揮FPGA低延時的優勢。
3.超大規模圖像處理,這些圖片的處理都使用FPGA來進行處理加速都可以得到滿意的效果。
4. 現在比較熱門的自然語言處理和語音識別這些也都是FPGA可以發揮優勢的場景。
一言以蔽之,FPGA云化之后,FPGA的使用門檻降低,可以極大地拓寬FPGA的使用場景,這些需要我們所有人去進一步探索。
雷鋒網:如何滿足開發者的需求?
IP(Intellectual Property)即知識產權,是在FPGA設計中,使用Verilog等硬件描述語言開發的功能模塊。一直以來,FPGA行業內的IP提供者和使用者缺乏一個公開的交易平臺和信用保證機制,IP交易環節冗長,價格不透明,很難達成交易。
騰訊云現在的做法是為開發者提供一個FPGA IP商店騰訊云服務市場,IP開發者和IP提供商可以通過該IP商店為其他客戶無償或有償地提供FPGA IP和對應的測試程序。當然,這些IP都是基于騰訊FPGA的標準硬件來開發定制的,IP的驗證和測試可以很方便地在云平臺上完成,一個IP的交易可以由幾個月縮短到幾分鐘,提高交易效率,也使得IP交易變得更加透明;另外,騰訊云FPGA提供了FPGA的底層硬件支撐平臺,類似操作系統的部分功能,簡化了開發者對底層通用設備的訪問,比如DDR和PCIE這些通用設備,可以使開發者更聚焦到業務功能的開發。
從這一點來看,FPGA云化意義重大,可以推動整個FPGA行業的發展,給FPGA產業鏈的各方都可以帶來收益。
雷鋒網:與傳統的FPGA解決方案相比,FPGA云服務器的費用有什么變化?整體有哪些區別?
傳統FPGA 解決方案:
硬件成本高:高服務器投資運營成本,FPGA 硬件交易價格不透明;
部署難度大:設計并大規模生產需要解決供應鏈、制造工藝、可靠性測試等多個環節,需耗費數月甚至數年;
運維成本高:為保障服務穩定需承受高額的運維IT成本 。
FPGA 云服務器:
使用成本低:您無需預先采購 FPGA 或采購硬件資源來運行 FPGA,騰訊云提供按需售賣的方式提供FPGA云服務器,您可按需購買,無需投入大量資金購置物理服務器;
部署時間短:部署開發時間從數年或數月縮減到數天;
運維成本低:低服務器運維成本,避免本地數據中心開發 FPGA 無差別的繁重工作,助您有效降低基礎設施建設人力和成本投入。
雷鋒網:之前在微信、QQ等業務上已經有應用,為何選擇在這個時候對外開放?
我們目前內部業務如微信和QQ等在FPGA的成功應用,已經驗證了FPGA在互聯網業務中可以起到異構加速的作用。對于行業來說,云是一種共享服務的思想,用戶不以占有的方式使用硬件和軟件,而是共享復用,因此大大降低了使用成本,提升了資源的使用效率。
FPGA云服務能給行業生態鏈各方帶來價值:
芯片原廠:不需要經過層層代理,增加成本,而是可以通過云提供硬件板卡的服務。因為硬件統一采購和維護,也大大提升了穩定性和可靠性。
IP提供商:可以把IP放到云平臺的市場中去,最終用戶使用時,通過云平臺完成部署和交付,用戶不需要接觸可執行文件(網表文件),因此不存在產權泄露的風險。這將鼓勵IP提供商提供更多的服務方式,可以提供按時長計費,買斷計費,乃至試用版免費等方式,用戶也可以迅速驗證。
設計和開發:云提供框架方式,封裝了常用的系統級操作(DDR內存的訪問、DMA、PCIE設備控制等),可以支持硬件描述語言,也支持OPENCL以及類似C的高級語言。提供通用的驅動和調用庫,不需要用戶編程。對高階用戶而言,也可以使用OPENCL或者硬件描述語言實現自己的功能。
正是云對FPGA行業的顛覆、革命和價值,所以我們通過云端開放FPGA計算服務,把FPGA作為云端基礎架構的一部分,從硬件層面加速云計算在各個場景中的應用,降低大中小型企業以及用戶的使用門檻和成本。
雷鋒網:如何看待云服務商開始推FPGA解決方案?騰訊云與其它云服務企業的方案有何區別?
我們樂于看到更多企業提供FPGA的云服務,共同加速各行各業使用FPGA的進程,加快完善FPGA生態圈。
總結來看,這次FPGA的發布,騰訊云在業內有幾點領先的差異化優勢:例如,騰訊云的FPGA技術已經在騰訊的QQ、微信業務中長期部署和驗證。騰訊云通過解決FPGA云服務器的部署、知識產權(IP)提供者分享IP以及應用程序開發者購買IP三大問題,用于建設與完善FPGA開發者生態。
另外值得一提的是,騰訊云和業界兩大FPGA 廠商(Xilinx 和 Intel)保持著有良好的關系,這也可以方便開發者選擇自己熟悉的開發模式,避免切換平臺。
雷鋒網:騰訊云接下來有什么規劃?
接下來,一方面在硬件機型上,我們會推出一臺服務器具有多個FPGA,提供更大的硬件加速性能;另一方面,在軟件層面上,我們進一步完善FPGA開發框架,該開發框架支持C/C++、OpenCL、Verilog/VHDL等開發語言,FPGA 開發人員可以選擇自己熟悉的語言方式進行FPGA 邏輯設計。同時,該開發框架提供類似操作系統的支持,可以方便訪問DDR、使用DMA完成主機和FPGA之間通訊,開發者只需關注面向應用的邏輯設計。
雷鋒網:為何FPGA云服務器逐漸受到了主流云服務商的青睞?是人工智能驅動?這會是行業的必然趨勢?
騰訊云包括國內外其他同行都在推FPGA云服務器,這是產業發展和市場需求的雙重驅動。
一方面隨著芯片制程逼近理論極限,可以預見通用處理器(CPU)性能再也無法按照摩爾定律進行增長,另一方面移動互聯網帶來的數據增長對計算性能要求超過了按“摩爾定律”增長的速度,比如騰訊內部業務隨著移動互聯網的快速增長,例如圖片數據體量的急劇膨脹,同時伴隨著對這些數據的計算需求也在迅猛上漲。從市場看,人工智能的發展也對數據的計算需求凸顯,也是另一個驅動因素。
騰訊曾在2013年開始考慮如何解決計算需求的增長,而FPGA作為一種可編程的加速硬件彼時進入了大家的視野。騰訊內部已經對FPGA技術展開了多年的研究,可以確定的是,FPGA在數據中心里可以提供強大的計算能力和足夠的靈活性應對數據中心對硬件加速的挑戰,把FPGA的技術積累服務推廣給更多的企業,這也是騰訊云推出國內首款高性能異構計算基礎設施FPGA云服務器的原因之一。
從全球看,亞馬遜等同行已經使用FPGA在其公有云網絡中進行了諸多積極嘗試,可以看出,FPGA在云服務領域已經勢不可擋。
后記
騰訊云FPGA聯合團隊還告訴雷鋒網,在騰訊云公眾號發布后的幾小時內,他們收到了數百名開發者的試用申請以及一些大客戶的咨詢。雖然,FPGA云服務器對大多數企業來說,還是一個相對陌生的概念,但從主流云服務廠商陸續開放這一服務的趨勢來看,FPGA對數據中心將會越來越重要,而未來也會有更多的企業把業務部署在FPGA云服務器上。