AI駕臨人間 四大芯片流派華山論劍
FPGA一幫
本文引用地址:http://www.104case.com/article/201704/346166.htmGPU美中不足的是就是太貴了,太貴了,而且有副作用,降溫是大個問題。怎么辦?
賽靈思等公司改進了FPGA許多技術,使之價格便宜功耗又很低,操練起來更有趣。于是,跟隨FPGA的越來越多,形成了一大流派。
FPGA是從哪里來的呢?
原來早在1984年賽靈思就發布世界上首款FPGA,當時的FPGA晶片尺寸很大,但成本卻不低。1992年后,FPGA因采用新工藝節點,第一次出現了在FPGA上實現卷積神經網絡。但直到2000年后,FPGA丹法結合了“易容術”后才略有小成,易容術是指FPGA 已不僅是門陣列,還是集成有可編程邏輯的復雜功能集。2008以來,FPGA不光可以越來越多地整合系統模塊,集成重要的控制功能,還可以使用更高效的系統編程語言,如OpenCL和C語言,通過類似軟件的流程來編程,降低了硬件編程的難度。于是,自2011年開始,出現了大規模基于FPGA的算法研究。
簡單來說,FPGA 全稱“現場可編程門陣列”(Field Programmable GateArray),其基本原理是在 FPGA 芯片內集成大量的數字電路基本門電路以及存儲器,而用戶可以通過更新FPGA 配置文件,來定義這些門電路以及存儲器之間的連線。

這里提及的“可編程”,完全就是“可變成”。這意味著你今天可以把 FPGA 配置成一個微控制器MCU,明天就可以更新配置文件把同一個 FPGA 配置成一個音頻編解碼器。你是不是想起了孫悟空七十二變,今天是個老頭明天是個少女?此乃易容術也。
不同于GPU的運行原理,FPGA是以門電路直接運算的,即編程中的語言在執行時會被翻譯成電路,優勢是運算速度快。
在很多領域FPGA的性能表現優異,以至于有人說FPGA可能會取代CPU和GPU成為將來機器人研發領域的主要芯片。當然,這事有點夸張。目前來看FPGA也多作為CPU的協處理器而出現,沖擊GPU是顯而易見的,但要說取代CPU,還得等等。
目前,國內有許多創業企業,自動加入FPGA陣營,提供基于FPGA的解決方案。比如源于清華大學的深鑒科技,專注于深度學習處理器與編譯器技術,深鑒科技研發了一種名為“深度壓縮”的技術,它不僅可以將神經網絡壓縮數十倍而不影響準確度,還可以使用“片上存儲”來存儲深度學習算法模型,減少內存讀取,大幅度減少功耗。
FPGA流派的廠商有兩大兩小,兩大廠分別是賽靈思、Altera(英特爾于2015年以167億美元收購Altera),兩小是Lattice和Microsemi。
其中,賽靈思和Altera占據了近90%的市場份額,兩人旗下的專利超過6000項。而剩下約10%的市場份額,由Microsemi和Lattice瓜分,這兩位的專利也有3000余項。由此可以看出,極高的技術門檻將其它希望進入FPGA市場的廠商牢牢擋在門外。
FPGA也有兩大局限性。
第一,FPGA的峰值性能不如GPU。即便使用高端的服務器做FPGA編譯都會需要數分鐘的時間,放到移動端速度還會更慢。但FPGA的功耗低于GPU,若FPGA的架構和配置合理,從能耗比的角度上來看,則能超過GPU。
第二,FPGA的編程難度較高。編程人員需要同時精通軟件和硬件兩種編程語言,更適合于高段位的的資深技術玩家。FPGA芯片主要面向企業客戶,如百度、微軟、IBM 等公司都有專門做FPGA的團隊為服務器加速。
就未來發展來看,FPGA的崛起指日可待。理由有三個:
首先,在人工智能起步階段,算法大致每三個月迭代一次,單憑這一點來說,FPGA可以靈活調整電路配置以適應新的算法,具有一定優勢;
其次,相比于GPU,FPGA更適用于深度學習的應用階段;
最后,為了降低FPGA的編程難度,FPGA廠商賽靈思專門研發了可重配置加速棧堆,提供基于FPGA的硬件加速方案,這類似于一個App Store,賽靈思是一個平臺,用戶使用時直接從商店里挑選方案,不需要再自己設計布局布線了。
ASIC:由吸星大法突破
雖然GPU在并行計算方面有不少優勢,但畢竟不是為機器學習專門設計的,FPGA則是需要用戶自主編程,主要面向專業領域的企業用戶,門檻太高。
大眾消費領域怎辦?如應用到無人駕駛汽車上或是智能家居終端,這款芯片還要同時滿足高性能和低功耗的要求,甚至不需要將數據傳回服務器端,不必連入互聯網,本地即時計算即可。

ASIC挺身而出。
ASIC的全稱是專用集成電路 (Application-Specific Integrated Circuit)。
玩過比特幣的都知道著名的挖礦大戰。ASIC在比特幣挖礦領域,展現出了得天獨厚的優勢。2013年1月Avalon項目團隊交付了世界上第一臺商用比特幣ASIC礦機,轟動了挖礦世界。CPU、GPU礦機幾乎在一夜之間消失的無影無蹤,引發了比特幣挖礦行業第二次重大升級,比特幣網絡核心開發者Jeff Garzik有幸成為了第一個商業ASIC礦機的擁有者,據說當時收到Avalon礦機的用戶在一兩天內就回了本。而傳說中隱藏在農村的土豪,能動用的ASIC礦機達到了數千臺。
人工智能深度學習和比特幣挖礦有類似之處,都是依賴于底層的芯片進行大規模的并行計算。
ASIC分為全定制和半定制。全定制設計需要設計者完成所有電路的設計,因此需要大量人力物力,靈活性好但開發周期長,上市速度慢。專為機器學習設計的ASIC芯片,從設計到制造,對資金和技術的要求都更高。一般來說,基于FPGA的開發周期大約為六個月,而相同規格的ASIC則需要一年左右,需要經過多步驗證,可想而知,在這樣精細的打磨下,其性能自然也更為出色。
評論