2017 年 10 月 19 日,FPGA 發明者賽靈思在北京召開首屆賽靈思開發者大會,機器之心受邀參加。在大會主題演講中,賽靈思全球高階副總裁 Salil Raje 介紹了舉辦此次盛會的緣由——業務轉型與廣泛的商業應用。賽靈思透過主動的業務轉型,引領著並支援著全可程式設計產品和技術廣泛商用,即透過產品的高度整合和軟體設計環境打造,把服務的物件從傳統的面向硬體開發者擴充套件到應用軟體和嵌入式軟體開發者;並透過 4 個 FPGA 雲加速器的具體商業應用案例展示了賽靈思全可程式設計產品應用領域的廣泛擴充。
2017 年 10 月 19 日,賽靈思在北京舉辦首屆賽靈思開發者大會(XDF,Xilinx Developer Forum)。賽靈思使用者社群成員、開發團隊、合作伙伴和行業專家齊聚一堂,共同出席了這個為期一天的交流、學習與分享的大會。賽靈思希望透過這種聯絡為設計提供啟發,實現下一個成功設計。
賽靈思 ( Xilinx, Inc.,NASDAQ:XLNX ) 是 All Programmable FPGA、SoC、MPSoC、RFSoC 和 3D IC 全球領先供應商,獨特地實現了既能軟體定義又能硬體最佳化的各種應用,推動了雲端計算、5G 無線、嵌入式視覺和工業物聯網等行業的發展。本次大會是一個面向應用層和使用者案例的開發者活動,吸引了亞馬遜、華為、阿里巴巴、百度、科大訊飛、深鑑科技等公司一起做主題演講,內容覆蓋深度學習、資料應用及雲服務。
會議日程分為主會場和三個分會場,致力於滿足不同型別開發者的各種需求。其中包括:1)應用軟體開發者會場,支援透過使用可重配置邏輯和大規模並行加速機器學習、視覺、影片和基因組學等應用;2)嵌入式軟體開發者會場,助力使用系統軟體在單晶片上實現多處理器、異構或可重配置系統;3)硬體開發者會場,面向希望透過行業專家的最佳實踐經驗來提高生產力的正在使用 Vivado Design Suite HLx 版的硬體開發人員。賽靈思開發者大會將在包括北京在內的四座城市舉行,北京是其第三站(前兩站為矽谷、東京),下一站是明年 1 月份在法蘭克福。
賽靈思軟體和 IP 產品部高階副總裁 Salil Raje 做主題演講
Salil Raje 表示,作為賽靈思首次全球開發者大會,和前兩年舉辦的賽靈思 Club Vivado 使用者大會相比,參會人員有一個大的變化,不再只有硬體開發者,還擴充套件到了軟體開發者,包括應用軟體和嵌入式軟體。在矽谷和東京的前兩場賽靈思開發者大會中,軟體開發者人數超過硬體開發者。他相信北京會場也是同樣情況,這其中原因是賽靈思業務的演化。
賽靈思業務演進
賽靈思正經歷一個轉型,大會反映了這一始於 6 年之前的轉型。當時賽靈思就已經開始著手開發基於 C、C+、C++的開發工作,並在 C 語言轉化為 RTL 方面保持領先,為後來轉型埋下了種子。從 C 語言轉換到 RTL 的高層次綜合是賽靈思轉型的核心,這包括高層工具和軟體應用工具 SDSoC、SDAccel 等更加接近軟體的設計環境;而高層次綜合工具是這次轉型的驅動器。從前賽靈思是一家傳統的邏輯器件硬體公司,與 Altera 共同面向的主要使用者是全球約 5 萬人左右的硬體工程師和 FPGA 工程師。
這次轉型體現在兩個方面:晶片的高度整合與軟體設計工具的打造。賽靈思在晶片上的整合度越來越高,比如引入了 Zynq MPSoC 多處理器片上系統;軟體工具上也更多地在處理子系統基礎上支援軟體程式設計,並擴充套件到嵌入式軟體設計領域。
透過上述兩個方面的努力,賽靈思預計 5 年內潛在使用者增加 5 倍,達到 25 萬。其中包括透過 Zynq MPSoC 這樣的多處理器 SoC 將傳統的 5 萬硬體工程師使用者擴充套件到 10 萬名 SoC 和 FPGA 工程師;透過打造軟體堆疊- 面向雲的可重配置加速堆疊(RAS)和麵向端的 reVISION 堆疊,進一步將 10 萬 SoC 及 FPGA 使用者擴充套件到 25 萬,涵蓋廣泛的從雲到端軟體和演算法應用工程師。
軟體堆疊讓FPGA進入更多的市場
賽靈思的用 reVISION 堆疊(更多資訊請參見:賽靈思推出 reVISION 堆疊,進軍廣泛的視覺導向機器學習領域)專門為全可程式設計技術進軍廣泛的視覺導向機器學習應用藍海兒打造,主要針對自動駕駛汽車、無人機、監控和機器視覺等視覺導向的機器學習應用,目前已經在眾多市場中扮演不可或缺的作用。
可重配置加速堆疊針對的則主要是超大型資料中心的 FPGA 加速應用,目前全球 7 大超大型資料中心已經有一般以上採用了賽靈思 FPGA 加速方案,其中包括亞馬遜網路服務(AWS),阿里雲,百度雲,騰訊雲,華為雲也在今年 9 月在其雲連線大會上宣佈採用賽靈思推出 FPGA 雲加速伺服器,此次大會中更是把產品的介紹和演示帶到了賽靈思開發者大會。
開發堆疊支援從端到雲的應用
談到賽靈思堆疊,主要是指 reVISION 和 RAS 可重配置加速堆疊。賽靈思從前專注做晶片,主要提供硬體及設計工具,現在這兩個堆疊作為非常完整的鏈條和平臺,可幫助軟體開發者和器件進行完美的結合。
因此,賽靈思本來只提供晶片器件,現在則越來越多地提供開發板、平臺以及軟體驅動工具(比如 SDSoC 和 SDAccel,分別服務於終端和雲端),以及軟體架構(比如機器學習框架 Caffe、FFmpeg)。歸根結底,賽靈思之所以推出軟體堆疊、平臺和開發板,是希望為使用者提供高層面的解決方案,使其無需關注底層的硬體細節,無需具備專業的 FPGA 知識,就能實現理想的應用。如賽靈思所言,80% 的工作賽靈思已經做好,使用者可以將 100% 的努力專注於 20% 可以讓自己從競爭中脫衣而出的差異化創意。也正是因為此,賽靈思全可程式設計產品應用的門檻大大降低,並由此擴充套件至更多的使用者。
以上是賽靈思最新的業務轉型情況,那麼其 FPGA 雲加速器的具體商業應用又有哪些?
FPGA雲加速器
上圖中有 4 種 FPGA 雲端計算加速應用,也即是工作負載用 FPGA 加速,相對於伺服器級 CPU 的一個情況。第一欄是語音識別中機器學習推斷的加速應用,來自深鑑科技,加速倍數是 40。
NGCODEC 公司做影片解碼,其 HEVC 編碼幀速率方面加速達到 10 倍。RYFT 公司做大資料分析,提速是 90 倍。Edico Genome 公司做基因組,用 FPGA 加速也取得了非常好的結果,基因組分析提速達 100 倍。
機器學習,正在經歷轉變。一年以前機器學習重點是建立準確度更高的模型;現在情況發生了變化,提高模型準確度面臨著邊際效應遞減的情況(最大障礙在計算這一塊)。因此,目前機器學習領域,除了一方面維持精確度,另一方面也在提高效率,使部署更加簡化。
高效、可擴充套件的機器學習
在模型效率提高方面,深鑑科技走在了行業前列。他們的計算機專家找到了提高模型效率的全新方法:第一,透過增建式修剪掉模型中影響力一般的部分,使其更小但效果更好;第二,模型變小之後對其壓縮提高它的效率;第三,透過一個採用非常低精度資料的訓練模型提高計算速度。
以上就是深鑑科技的關鍵業務及其差異化的優勢,在這個過程當中他們發現 FPGA 是變現最好的載體,效率比 CPU 快 40 倍,比 GPU 快 3 到 4 倍。而且 FPGA 延遲非常低,這對於以推測為基礎的機器學習來說非常重要,可以靈活適用於不同的機器學習應用模型。深鑑科技在這方面有一系列解決方案,效率非常高(注:10 月 24 日,深鑑科技在北京召開釋出會,宣佈 4000 萬美元 A+輪投資,併發布了一系列最新 AI 產品,包括影片結構化解決方案、人臉分析解決方案、人臉檢測識別模組、深鑑 ARISTOTLE 架構平臺、深鑑深度學習開發 SDK 以及深鑑語音識別加速方案)。
此外,今天深鑑科技也希望透過賽靈思傳達一個資訊:他們已經做了語音識別 LSTM 模型和物體識別 CNN 模型,放在亞馬遜雲上,這個月可以免費試用。
影片流直播活動
影片編碼處理同樣需要 FPGA,其最初的市場是影片現場直播,比如體育賽事、電子競技、美國棒球比賽。影片直播面向消費者,由於後者有很多選擇,因此必須推出有效、有說服力的產品,保證影片質量和實時性(延時不能超過 8 秒),這是兩個最起碼的要求。
FPGA 非常適合滿足這兩項要求。它加速可以達到 CPU 的 10 倍,而且是動態可重配置的(比如根據網路流量情更換編碼器),結束後又可以部署執行其他工作任務(比如機器學習、資料分析,基因組分析)。這是一個非常有吸引力、有說服力的解決方案,它執行非常大的工作量,同時非常有效率。因此,10 倍的加速是有巨大現實價值的應用,本來需要一萬臺伺服器,用 FPGA 之後一千臺就夠了。
加速複雜的資料分析
如果現在在大資料和機器學習方面已經落後了,如何啟動和追趕呢?一位麥肯錫專家的建議是首先把所有的資料儘可能地收集起來。這已不是一個行業秘密,有很多企業著手在做。絕大多資料是非結構的,無法與現有資料模式相吻合,沒有清楚分類和方便的搜尋。要實現這些資料最大的價值,必須從資料中儘可能地提取洞見,其中一個方法是用工具來對這些非結構性資料進行彈性搜尋。
彈性搜尋在企業應用最廣泛,可用來找到需要的資料,同時分離噪音或者干擾資料,這是非常重要的一個搜尋工具。RYFT 公司開發了一款可使彈性搜尋加速 90 倍的應用。上圖中的紅線是亞馬遜 EC2 上未加速的彈性搜尋,使用的是非常強大的 CPU 伺服器;1T 的資料分析需要 62 個小時;如果採用 RYFT Cloud,提速可高達 90 倍。
透過 FPGA 實現的加速其實是藉助了彈性搜尋的一個性質。彈性搜尋有兩種不同的搜尋方式,一種是精確搜尋,一種是模糊搜尋。兩種搜尋方式要求兩種演算法,RYFT 分別為其定製了不同的加速器。當然,不只有兩種演算法,還有其他很多演算法,RYFT 針對每種演算法有定製的加速器,每跑一次,動態重新配置確保在 FPGA 加速的過程中,能夠使用到最合適的晶片完成這個任務。
實現個性化醫療
個性化醫療希望能從細胞和基因層面瞭解人類。如果做到這一點,就能夠實現更加精準更有針對性的治療,甚至開發出針對某一個人的藥物。當然前提是必須能以非常經濟、快速的方式來做基因組測序和基因學分析。賽靈思認為最需要這種精度和速度的醫生就是那些治療危重新生兒的醫生,他們的一個非常重要的工具就是基因組測序和基因學分析,但是這個結果必須很快出來。Edico Genome 公司可以把這一時間從 5 到 35 小時縮短至 20 分鐘。
Edico 從 FPGA 加速中獲益更大,比如其產品 DRAGEN 的不同模組可根據不同演算法進行定製,像 RYFT 一樣,透過動態可重新配置技術確保做每一種演算法、執行每一項任務時,都能採用最佳的演算法。
那麼,Edico 的案例對於賽靈思意味著什麼呢?就是賽靈思只需要很少數量的雲服務供應商,比如只要亞馬遜一家便可連線到幾千家企業和幾百萬使用者。FPGA 的可重配置性、靈活性和廣泛用途對於雲服務供應商來說都是非常有價值的特點。
賽靈思開發者大會希望與這些雲生態、應用進行連線,讓大家進行交叉授粉式的化學反映,更好地利用自身演算法獲取價值,並透過雲實現規模化。