當前位置:
首頁 > 新聞 > AWS F1 正式上線,深度解析 FPGA 與公有雲的親密接觸

AWS F1 正式上線,深度解析 FPGA 與公有雲的親密接觸

1. 背景

歷經近 5 個月的邀請內測,Amazon AWS 於 4 月 20 日宣布 FPGA EC2 實例 F1 正式上線。就在 F1 內測公布後這短短几個月時間,國內互聯網巨頭 BAT 加華為紛紛借勢宣布開展 FPGA 雲加速器業務,這一波異構計算之風勢頭之猛可見一斑。

其實,FPGA 以其高能效和可重編程的優勢,在大型互聯網企業內部早有應用並逐漸成為常態。例如媒體壓縮,加解密,AI,大數據處理等領域,FPGA 方案較傳統 CPU 和 GPGPU,往往可達到幾倍甚至幾十倍的能效提升。然而過高的開發門檻和開發成本,卻讓中小型企業對 FPGA 技術可望而不可及。即便是大企業,力量也只夠集中開發有數的幾種加速器難以全面鋪開。

FPGA 結合雲計算形成新的 FPGA-as-a-Service 或者 Accelerator-as-a-Service 平台,則可以整合多方資源解決上述問題。平台廠商與 FPGA 硬體廠商合作,在雲端提供統一硬體平台與中間件,可大大降低加速器的開發與部署成本。加速器開發商的加速器上傳到雲,可以形成服務銷售給加速器用戶,消除加速技術與最終用戶的硬體壁壘。而加速器用戶則能夠在無需了解底層硬體的情況下,直接按需購買和使用加速服務,較傳統方案更快更省地完成數據處理。

FPGA 雲服務作為一種面向未來的全新平台,橫跨互聯網與晶元設計領域,相信對任何人都是新鮮和陌生的。本文就為大家介紹一下 AWS F1 的結構特徵以及具體的開發部署方式。

2. AWS F1 實例

2.1 硬體

AWS F1 使用的是 Xilinx 最新一代 UltraScale + 架構的高配 FPGA VU9P,並提供上圖所示的兩種 EC2 實例。兩種實例都屬於高配機型,雖然較其他 EC2 伺服器每小時單價貴出不少,考慮到 Xilinx 官方 VU9P 開發版 VCU118 $6,995 的高價,單 FPGA 實例 $1.65/hr 的定價還是非常公道和容易接受的。$1.65/hr 就可以用上高端 FPGA,這也降低了科研和個人開發者的使用門檻。

不過需要注意的是,這兩個實例都使用了大容量 SSD,SSD 存儲要另行計費。再就是 FPGA 開發編譯時間較長(F1 的 Hello world 約 4 小時。。。),可以選擇便宜的非 FPGA 實例編譯,或者選擇本地編譯。

2.2 軟體

AWS 傳統伺服器是配套 AMI(Amazon Machine Image) 使用,AMI 是預裝操作系統與服務的伺服器硬碟鏡像。AWS 為 F1 開發與部署提供了 FPGA Developer AMI,其中預裝了免費授權 Xilinx Vivado 和 SDx 開發軟體,以及管理 FPGA 必要的軟體和驅動。預裝開發環境的 AMI 即開即用非常簡便,但動輒幾小時的編譯時間也增加了開銷。為了讓開發者可以本地編譯,Xilinx 專門為 Amazon F1 提供了免費的使用授權(詳見:Xilinx Vivado Design Suite for Public Cloud),如下圖所示,免費項目包括 Vivado System Edition (限 VU9P)、Partial Reconfiguration、SDAccel 等曾經非常昂貴的開發軟體,可見兩家企業在雲計算上的合作力度相當之大。

AWS F1 正式上線,深度解析 FPGA 與公有雲的親密接觸

AWS 還為 FPGA 開發了新的鏡像格式,稱為 AFI(Amazon FPGA Image)。AFI 是 AWS 統一管理加速器鏡像的一種核心機制。用戶可使用 aws ec2 create-fpga-image命令將編譯好的加速器註冊為 AWS AFI,然後可在任意 F1 實例上使用 AFI Management Tools部署執行。AFI 是 F1 實例上對 FPGA 編程的唯一方式,從安全和管理角度考慮,Amazon 目前沒有今後應該也不會提供直接下載 Bitstream 到 FPGA 的介面。

這樣,AMI 定義虛擬機系統鏡像,AFI 定義 FPGA 加速器鏡像,兩者合起來就能配置一台完整的帶 FPGA 加速的伺服器。加速器開發商可以將加速器 AFI,或者 AMI+AFI 發布到 AWS Marketplace 進行銷售。而加速器用戶只需使用傳統的 EC2 流程即可購買開啟 FPGA 加速實例。

3. 開發與部署

3.1 HDK 與 SDK

一個完整的 FPGA 加速項目涉及到軟體開發和硬體開發。軟體開發環境通常稱為 SDK,相對應的,AWS 提供了 HDK(Hardware Development Kit) 來支持 F1 FPGA 上的客戶邏輯設計。HDK 中包含一個 Shell 邏輯層,提供了 PCIe、DDR 控制、時鐘控制等通用服務邏輯。HDK 還提供了一些自動化腳本幫助客戶編譯加速器,並打包成可以註冊 AFI 的 tar 格式。

F1 的 SDK 提供了實用的 FPGA 部署工具。部署工具就是上面提到過的 AFI Managment Tools, 使用這些程序可以查看、載入、清除 FPGA 上的客戶邏輯,也可以啟動 AWS 開發的虛擬 JTAG 服務用於遠程調試。

目前 HDK 和 SDK 帶有兩個簡單實例的軟硬體代碼,CL_HELLO_WORLD 和 CL_DRAM_DMA,他們各自使用到的功能特性列在下表。開發者可以參照常式,快速開始開發自己的加速應用。

AWS F1 正式上線,深度解析 FPGA 與公有雲的親密接觸

3.2 開發流程

AWS F1 正式上線,深度解析 FPGA 與公有雲的親密接觸

上圖是知乎專欄 [微陣] 作者 jonsonxp總結的當前 F1 客戶邏輯(CL)的開發流程。

加速器開發者提供 CL 源代碼 (e.g. Verilog, VHDL, SystemVerilog),為了保護客戶的設計資產,首先必須使用 IEEE P1735(詳見 Xilinx 手冊 UG1118) 對源代碼進行加密處理。加密選項可同時保護源碼和最終生成的 DCP 文件。未經加密生成的 DCP 在生成 AFI 時會報錯失敗。

加密後的 CL 源碼經過邏輯綜合,再和 HDK 中的 Shell 邏輯組合形成完整的 FPGA 設計,就可以按照正常的 Vivado 設計流程進行布局布線以及物理優化。最終我們要提交到 AWS 的文件不是通常的 Bitstream,而是布局後的 DCP 和一個描述設計的 manifest.txt 文件。這兩個文件打包成 tar 上傳到開發中的 AWS S3 雲存儲,就可以調用 AWS CLI 的 aws ec2 create-fpga-image 命令將加速器註冊為可在任意 F1 實例上部署的 AFI。由於 F1 HDK 中提供了完整的樣例和自動化腳本,基本上開發者只要準備好源文件,剩下的工作都可以自動完成。

事實上,整個開發流程只有三個必要條件,一是使用 AWS 的官方 Shell 進行開發,二是 CL 必須加密,三是生成合法 DCP 以及提供正確的 Manifest.txt。開發過程和客戶邏輯上幾乎沒有過多的限制,這對開發者是非常友好的。相比其他一些正在進行的 FPGA 雲方案,他們基於安全原因或者管理系統不成熟,大多隻對客戶暴露 OpenCL 開發界面,這對源碼保護和硬體開發的自由度都有影響。

3.3 加速器部署

加速器註冊為 AFI 後,AWS 會返回一個 AGFI(Amazon Global FPGA Image ID) 用於部署。在 F1 實例上為 FPGA 載入加速器也非常容易,如下面命令所示,該命令將 AGFI 為 agfi-0123456789abcdefg 的加速器載入到本地伺服器 PCIe Slot 0 上的 FPGA。


$ sudo fpga-load-local-image -S 0 -I agfi-0123456789abcdefg

目前 AGFI 部署加速器好像還沒有許可權管理,任何人只要知道加速器的 AGFI 就可以隨意使用,存在一定安全問題。再者,AWS F1 目前支持(虛擬)伺服器級別部署,沒有 FPGA 虛擬化功能來支持單 FPGA 載入多加速器,如果使用虛擬化技術可以進一步提高 FPGA 的使用率並降低部署成本。不過 F1 剛剛起步,相信一切都在完善之中。

4. 結語

傳統基於 CPU 的單一架構雲服務經過多年粗放發展,逐漸難以維持快速增長的計算需求。在雲端使用 FPGA 開發高能效定製硬體,從而降低計算成本已成大勢所趨。趨勢之下,先行者微軟的 Catapult 1 代和 2 代給我們展示了成功的應用場景,但微軟並沒有將技術開放出來,普通開發者可見而不可得。而 Amazon 的 AWS F1 依託多年開發完善的 AWS 雲平台體系,從 AMI 擴展出 AFI,從 SDK 擴展出 HDK,非常平滑地將傳統雲資源管理,擴展為可以支持 FPGA 加速器的伺服器管理系統,並圍繞加速器開發者和加速器用戶建立起雲平台,才是將 FPGA 技術帶入主流互聯網市場的重要一步。我們也看到,當前 F1 應用實例還不多,管理工具以及 HDK 和 SDK 也比較樸素,互聯網和晶元產業的初次親密接觸還會有一個不短的磨合期。未來可期,只要方向對,技術能解決的問題都不是問題。

雷鋒網按:原作者JonsonXP,本文原載於作者的知乎專欄

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 雷鋒網 的精彩文章:

三年來,CNN在圖像分割領域經歷了怎樣的技術變革?
發現未來連接創新,CCF-GAIR 2017將於7月7日再度起航!
三星電子一季度凈利暴增46%至68億美元 2013年以來最佳
霍金:AI或許能根除疾病和貧窮,但也可能摧毀人類

TAG:雷鋒網 |

您可能感興趣

解析WPA/WPA2 WiFi密碼新方法出現,WPA3不受影響
GTX 20系列「煤氣灶」實測,NVIDIA:高解析度的未來市場在VR上
VVC、JPEG XS、MPEG-I,數據壓縮走向新紀元,為高解析度VR提供支持
日系丨PAGAN OF HEROISM 18AW PART.2 全品類解析
SATA 3.0,mSATA,M.2,PCI-E一篇解析SSD介面疑雲
PHP 解析 XML
5K解析度 170度FoV VRgineers XTAL頭顯將在CES
下一代NVIDIA GPU將支持VR頭顯更高的解析度和刷新率
HTML5到跨平台App應用深度解析
Pico在CESA展示最新4K VR一體機 解析度大幅提升
解析PS中的PNG格式!
下一代NVIDIA GPU將提高VR帶寬 及更高的解析度和刷新率
NVIDIA全新SUPER系列解析
深度解析LoRa和LoRaWAN的區別
薄如蟬翼-深度解析 OSPREY LEVITY 45 輕量化背包
中興AXON 10 Pro屏幕解析:擁有最窄柔性AMOLED屏下巴
《CFPL S12》賽場解析:LG再敗RUL 半個TGA冠軍何去何從
季中賽解析:RNG的搖擺式BP能在MSI上佔多大便宜?
分析師預測下一代Xbox與PS都將支持VR、4K解析度
手機攝影從未如此簡單,HUAWEI P20全新Master AI功能解析