search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

看FPGA如何在大數據的熱潮中坐實第一把交椅

數據正在成為人類社會進步新的驅動力。有專家預測,未來5年大數據產業規模年均增長率將超過50%,到2020年的數據總量將佔全球數據總量比例的20%,成為世界第一數據資源大國和全球數據中心。不過在垂涎於這個大數據盛宴的同時,我們也面臨著一個「成長中的煩惱」:我們是否有足夠的能力去處理和「消化」這些海量的數據?雖然近年來數據中心的數量也在快速增加,但是面對數據處理任務指數級的增長,還是需要從更底層的核心硬體架構上尋求解決方案。

通用CPU是傳統數據中心的核心,不過由於它是基於指令解碼執行、共享內存的經典的馮·諾依曼結構, 註定了其可以完成複雜性的數據處理工作,但是處理大量并行的、重複性的數據並非其強項。「多核」CPU是一個應對之策,但仍然無法擺脫架構的限制,加之摩爾定律日益逼近天花板,依託製程工藝的進步帶來性能上的提升,這條路也越來越不好走。因此異構處理器的概念被提出來,簡單地說,就是將CPU不擅長的工作卸載到其他更適合的器件中去處理,不同架構的數據處理器件協同工作,各司其職,提升效率。在異構數據處理中,究竟誰適合與CPU「相加」,業界有不同的思路,通常吞吐率、延遲、功耗和靈活性會被作為評估的基本標準。

在異構處理器中,「CPU+GPU」是一個重要選項。GPU採用SIMD(單指令流多數據流)的方式讓多個執行單元以同樣的步調處理不同的數據,大大提升了并行數據處理的能力,在計算密集型任務中可堪重用。不過GPU有一個「硬傷」,就是在延遲比較高。這是因為GPU雖可實現數據并行但是其流水線深度受限,每個計算單元處理不同的數據包時,需要按照統一的步調做相同的事,這就使得輸入輸出的延遲增加,通常GPU的延遲會達到毫秒級。

要想克服上述問題,就需要今天的主角「FPGA」出場了。FPGA是一種可編程邏輯器件,可以根據需要通過軟體編程去定義器件的硬體功能,非常靈活。這也就意味著基於FPGA的數據處理架構,每個邏輯單元的功能都是定義好的,無需指令就可完成工作,也不需要複雜的共用內存的調度和裁判,擺脫了馮·諾依曼架構的牽絆。在延時方面,FPGA的優勢尤為明顯,其不但可以實現數據并行,還可以實現流水線并行,流水線的不同級處理不同的數據包,這就使得不同數據的處理無需等待更為便捷,其延時只有微秒級。從數據吞吐能力上看,新一代FPGA的數據處理加速能力理論上已經可以與GPU比肩。同時拜不斷進步的半導體工藝所賜,FPGA器件的功率也控制得很好。所以CPU+FPGA這種異構處理器組合被越來越多的人所看好。

還有一種技術選擇我們不得不提一下,那就是ASIC。單從性能上講,為特定網路數據加速目的而製造的專用ASIC晶元無疑在吞吐量、延遲、功耗方面都是最具競爭力的,但是有兩個因素使其被數據中心用戶拒之門外:一是ASIC的研發和流片成本越來越高,除非有足夠的規模,否則經濟性上沒有優勢;二是一旦數據處理任務需求發生變化,功能固化的ASIC就「廢」了,而如果使用FPGA則無需擔心這個問題,只要重新編程重新定義器件的功能即可,這對用戶的投資是很有效地保障。這就是FPGA在靈活性上的優勢。

表1,幾種數據處理架構在計算密集型任務中的性能比較

可以說,在異構處理架構中,雖然每種技術都各有千秋,但是FPGA各方面的表現最為均衡,可以令用戶獲得的效益最大化。由此也就不難理解一年前Intel為什麼樂於花費巨資收購全球排名第二的FPGA廠商Altera,此舉也無疑為FPGA未來在數據中心中的地位做了背書。同時,在FPGA行業頭把交椅上的Xilinx近年來的表現也更加活躍和搶眼,橫向合作上與AMD、ARM、華為、IBM、Mellanox、高通等共推開放式的數據加速架構,打造生態鏈;縱向上接連綁定亞馬遜、百度等互聯網巨頭,讓FPGA在人工智慧、視頻處理、 自然語言處理、金融分析、網路安全等未來核心數據應用處理領域,坐實其核心的位置。顯而易見,大數據之「火」,已經點著了FPGA,誰能抓住機會,誰就能在大數據的熱潮中火一把。

圖1,Xilinx的FPGA被用於百度數據中心,未來會對百度的無人駕駛汽車提供支撐

圖2,騰訊推出的FPGA雲伺服器,可為用戶提供FPGA雲租用服務



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦