硬件加速器已在數(shù)據(jù)中心得到普遍使用,一系列新的工作負(fù)載已經(jīng)能夠成熟地發(fā)揮 FPGA 的加速優(yōu)勢(shì)及其更優(yōu)異的計(jì)算效率。業(yè)界對(duì)機(jī)器學(xué)習(xí) (ML) 的關(guān)注度不斷提高,推動(dòng) FPGA 加速器在私有云、公有云、混合云數(shù)據(jù)中心環(huán)境中日益普及,從而為計(jì)算密集型工作負(fù)載加速。近期,在推動(dòng) IT 基礎(chǔ)設(shè)施向異構(gòu)計(jì)算轉(zhuǎn)型的過程中,賽靈思與 VMware 展開協(xié)作,在 VMware 的云計(jì)算虛擬化平臺(tái)vSphere上測(cè)試 FPGA 加速。由于賽靈思 FPGA 越來(lái)越廣泛地應(yīng)用于 ML 推斷加速,本文將展示的是如何將賽靈思 FPGA 與 VMware vSphere 相結(jié)合,在虛擬部署和裸機(jī)部署上實(shí)現(xiàn)基本相同的高吞吐量、低時(shí)延 ML 推斷性能。
FPGA 是一種自適應(yīng)計(jì)算器件,能夠靈活地進(jìn)行重新編程,從而滿足目標(biāo)應(yīng)用不同的處理需求和功能要求。該特性使 FPGA 從 GPU 和 ASIC 等架構(gòu)固定的器件中脫穎而出,更是遠(yuǎn)遠(yuǎn)優(yōu)于成本不斷飆升的的定制 ASIC。此外,與其他硬件加速器相比,F(xiàn)PGA 還具備高能效、低時(shí)延的優(yōu)勢(shì),使 FPGA 特別適用于 ML 推斷工作。與基本依靠大量并行處理核心實(shí)現(xiàn)高吞吐量的 GPU 不同的是,F(xiàn)PGA 通過定制化硬件內(nèi)核、數(shù)據(jù)流流水線和互聯(lián),助力 ML 推斷同時(shí)實(shí)現(xiàn)高吞吐量和低時(shí)延。
01. 在 vSphere 上使用 FPGA 開展 ML 推斷
VMware 在其實(shí)驗(yàn)室中使用賽靈思 Alveo U250 數(shù)據(jù)中心卡進(jìn)行測(cè)試。使用在Vitis AI中提供的 Docker 容器——為從邊緣到云端的賽靈思硬件平臺(tái)提供的 ML 推斷統(tǒng)一開發(fā)棧,ML 模型可以迅速完成配置。該容器由經(jīng)過優(yōu)化的工具、庫(kù)、模型和示例構(gòu)成。Vitis AI 支持含 Caffe 和 TensorFlow 在內(nèi)的主流框架以及能夠執(zhí)行多種深度學(xué)習(xí)任務(wù)的最新模型。此外,Vitis AI 是一種開源應(yīng)用,可通過訪問GitHub獲取。
圖 1:Vitis AI 軟件協(xié)議棧
目前,賽靈思 FPGA 通過 DirectPath I/O 模式(直通模式)能在 vSphere 上使用。在這種模式下,我們的 FPGA 能夠由運(yùn)行在虛擬機(jī)內(nèi)部的應(yīng)用直接訪問,繞過程序管理層,從而最大化性能并最大限度降低時(shí)延。配置 DirectPath I/O 模式下的 FPGA 只需簡(jiǎn)單的兩步流程:首先,在主機(jī)層面上啟用 ESXi,然后將器件添加到目標(biāo)虛擬機(jī)。詳細(xì)操作方法參見 VMware KB 一文( https://kb.vmware.com/s/article/1010789 )。請(qǐng)注意,如果運(yùn)行的是 vSphere 7,則不再需要重啟主機(jī)。
02. 高吞吐量、低時(shí)延 ML 推斷性能
通過與賽靈思合作,VMware 使用四個(gè) CNN 模型執(zhí)行推斷任務(wù),對(duì)我們的 Alveo U250 加速器卡在 DirectPath I/O 模式工作下的吞吐量和時(shí)延性能進(jìn)行評(píng)估。這四個(gè)模型分別為Inception_v1、Inception_v2、Resnet50 和 VGG16。這些模型在模型參數(shù)數(shù)量上不盡相同,因而具備不同的處理復(fù)雜性。
測(cè)試在搭載兩顆 10 核 Intel Xeon Silver 4114 CPU 和 192GB DDR4 存儲(chǔ)器的 Dell PowerEdge R740 服務(wù)器上進(jìn)行。我們使用 ESXi 7.0 虛擬機(jī)程序管理器,將每種模型的端到端性能結(jié)果與作為基線的裸機(jī)性能進(jìn)行對(duì)比。Ubuntu 16.04(內(nèi)核版本 4.4.0-116)用作客戶端操作系統(tǒng)和本地操作系統(tǒng)。此外,在整個(gè)測(cè)試過程中將 Vitis AI v1.1 與 Docker CE 19.03.4 結(jié)合使用。同時(shí)使用源于 ImageNet2012 的 50k 圖像數(shù)據(jù)集。為進(jìn)一步避免圖像讀取過程中遭遇磁盤瓶頸,還創(chuàng)建了一個(gè) RAM 磁盤用于存儲(chǔ) 50k 圖像。
完成這些設(shè)置后,虛擬測(cè)試和裸機(jī)測(cè)試之間的性能比較可從下面的兩個(gè)圖中進(jìn)行觀察。一個(gè)針對(duì)吞吐量,另一個(gè)針對(duì)時(shí)延。y 軸代表虛擬測(cè)試和裸機(jī)測(cè)試間的吞吐量性能比值。y=1.0 代表虛擬測(cè)試和裸機(jī)測(cè)試的吞吐量性能結(jié)果相同。
圖 2:在 Alveo U250 FPGA 上運(yùn)行 ML 推斷時(shí)裸機(jī)測(cè)試和虛擬測(cè)試的吞吐量性能比較
圖 3:在 Alveo U250 FPGA 上運(yùn)行 ML 推斷時(shí)裸機(jī)測(cè)試和虛擬測(cè)試的時(shí)延性能比較
測(cè)試證明,虛擬環(huán)境和裸機(jī)間在吞吐量和時(shí)延兩方面的性能差距最大不超過 2%。這說(shuō)明在虛擬環(huán)境中運(yùn)行在 vSphere 上的 Alveo U250 的 ML 性能與作為基線的裸機(jī)性能極為相近。
03. 云端的 FPGA 性能
在數(shù)據(jù)中心中采用 FPGA 加速器已成為普遍現(xiàn)象,而且為滿足對(duì)異構(gòu)計(jì)算和性能提升的需求,F(xiàn)PGA 加速器的應(yīng)用還將繼續(xù)增長(zhǎng)。我們非常高興能夠與 VMware 展開合作,共同確保客戶能充分發(fā)揮運(yùn)行在 vSphere 平臺(tái)上的賽靈思 FPGA 加速的全部?jī)?yōu)勢(shì)。我們?cè)?vSphere 上對(duì)我們的 Alveo U250 加速器卡進(jìn)行 ML 推斷性能測(cè)試,成功地向客戶證明了該器件在 DirectPath I/O 模式下能夠?qū)崿F(xiàn)接近裸機(jī)的性能。
編輯:hfy
-
FPGA
+關(guān)注
關(guān)注
1625文章
21637瀏覽量
601336 -
賽靈思
+關(guān)注
關(guān)注
32文章
1794瀏覽量
131137 -
云計(jì)算
+關(guān)注
關(guān)注
39文章
7714瀏覽量
137129 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8357瀏覽量
132330
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論