英特爾 開(kāi)放式 FPGA 堆棧和英特爾 可編程加速卡提供基于 FPGA 的基礎(chǔ)設(shè)施,滿足加速開(kāi)發(fā)概念驗(yàn)證的需求。
概覽
SAP 開(kāi)發(fā)人員希望通過(guò)仔細(xì)研究 FPGA 的應(yīng)用情況,加速運(yùn)行計(jì)算密集型 Re-Pair 壓縮算法,并利用 Docker 容器促進(jìn)云端部署。
在英特爾 開(kāi)放式 FPGA 堆棧(英特爾 OFS)和英特爾 FPGA 可編程加速卡 (英特爾 FPGA PAC)D5005 的支持下,SAP 利用其 HANA 云的 Docker 容器順利實(shí)現(xiàn)了 Re-Pair 壓縮工作負(fù)載。HANA 云采用的是 SAP 自有的 Garden Linux 操作系統(tǒng) (OS)。
“現(xiàn)在,借助英特爾 開(kāi)放式 FPGA 堆棧框架和英特爾 FPGA 可編程加速卡 D5005,我們幾分鐘之內(nèi)就能將壓縮算法部署到運(yùn)行在我們 Garden Linux 操作系統(tǒng)上的 Docker 容器中。在英特爾 平臺(tái)加速技術(shù)的支持下,SAP 如今可使開(kāi)發(fā)人員享受到在 HANA 云中對(duì) FPGA 進(jìn)行重新編程的諸多益處。”
— Norman May 博士,
SAP SE HANA 中心(數(shù)據(jù)庫(kù))架構(gòu)師
執(zhí)行概要
SAP 開(kāi)發(fā)人員希望就基于云的壓縮即服務(wù) (CaaS) 創(chuàng)建概念驗(yàn)證 (PoC)。他們需要利用 FPGA 來(lái)加速運(yùn)行計(jì)算密集型 Re-Pair 壓縮算法,并希望在基于 SAP 自有 Garden Linux 操作系統(tǒng) (OS) 的 SAP HANA 云中使用 Docker 容器。
英特爾 開(kāi)放式 FPGA 堆棧(英特爾 OFS)能夠利用由英特爾 FPGA 提供支持的英特爾或第三方平臺(tái),簡(jiǎn)化自定義板卡和工作負(fù)載的開(kāi)發(fā)和部署。SAP 開(kāi)發(fā)人員利用英特爾 開(kāi)放式 FPGA 堆棧將字符串壓縮工作負(fù)載更快地部署到了英特爾 FPGA 可編程加速卡 D5005 上。此外,他們還可以根據(jù)英特爾 開(kāi)放式 FPGA 堆棧的部署流程對(duì) Docker 容器加以利用。這是因?yàn)閺?Garden Linux 5.15 版開(kāi)始,所有版本的產(chǎn)品內(nèi)核都包含英特爾 開(kāi)放式 FPGA 堆棧設(shè)備功能列表 (DFL) 的 FPGA 驅(qū)動(dòng)程序。
借助英特爾 開(kāi)放式 FPGA 堆棧,SAP 可以有效利用基于英特爾 FPGA 的設(shè)備所提供的工作負(fù)載可移植性、由支持英特爾 開(kāi)放式 FPGA 堆棧的合作伙伴板卡和工作負(fù)載組成的不斷發(fā)展壯大的生態(tài)系統(tǒng)、裸機(jī)/虛擬化/容器化部署的靈活性,以及上游和開(kāi)源內(nèi)核驅(qū)動(dòng)程序及用戶空間代碼。
背景與挑戰(zhàn)
SAP SE 是一家位于巴登-符騰堡州沃爾多夫鎮(zhèn)的德國(guó)跨國(guó)軟件公司,專(zhuān)業(yè)開(kāi)發(fā)管理企業(yè)運(yùn)營(yíng)和客戶關(guān)系的企業(yè)用軟件。
SAP HANA 是 SAP SE 開(kāi)發(fā)和上市的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)。這款企業(yè)級(jí)數(shù)據(jù)庫(kù)服務(wù)器, 能夠根據(jù)上層應(yīng)用的請(qǐng)求利用其列式內(nèi)存存儲(chǔ)技術(shù)實(shí)現(xiàn)數(shù)據(jù)存儲(chǔ)和檢索,以支持混合事務(wù)/ 分析處理。
SAP HANA 的列數(shù)據(jù)使用字典進(jìn)行編碼,將域值映射為固定大小的值。尤其需要注意的是,字符串字典可能包含大量文本數(shù)據(jù),這些數(shù)據(jù)需通過(guò)壓縮來(lái)降低內(nèi)存需求。目前可用的壓縮算法有很多種,包括 LZ77、LZR、LZSS、LZMA、ZStandard 等,但這些算法常用于將大量信息壓縮到單個(gè)塊中。如果以這種方式壓縮字典,就必須解壓縮整個(gè)文件才能訪問(wèn)單個(gè)條目,這在時(shí)間、計(jì)算和功耗方面都效率極低。或者,也可以利用上述算法逐個(gè)壓縮字典條目,但由于這些算法沒(méi)有針對(duì)少量數(shù)據(jù)的壓縮進(jìn)行優(yōu)化, 因此同樣很低效。
Re-Pair 這種壓縮算法非常適合像字符串字典這類(lèi)需要隨機(jī)訪問(wèn)壓縮數(shù)據(jù)的應(yīng)用。美中不足的是,Re-Pair 屬于計(jì)算密集型算法且成本高昂。由于其在中央處理器 (CPU) 上實(shí)施壓縮和解壓縮的時(shí)間過(guò)長(zhǎng),因此并未在數(shù)據(jù)管理社區(qū)中得到廣泛應(yīng)用。不過(guò),現(xiàn)場(chǎng)可編程門(mén)陣列 (FPGA) 的可編程邏輯結(jié)構(gòu)經(jīng)過(guò)配置后,可以大規(guī)模并行執(zhí)行算法處理。這意味著像 Re-Pair 這樣的算法藉此能夠以相對(duì)較低的功耗得到快速執(zhí)行。
Garden Linux 是 Debian GNU/Linux 衍生版本,旨在提供小型、可審計(jì)的 Linux 映像,供云服務(wù)提供商 (CSP) 和裸機(jī)部署使用。SAP 有自己的 Garden Linux 發(fā)行版本。
在計(jì)算上下文中,容器是一個(gè)功能齊全且可移植的云或非云計(jì)算環(huán)境。它包括應(yīng)用、任何庫(kù)及其他依賴項(xiàng)。使用容器有利于將應(yīng)用從一臺(tái)服務(wù)器遷移到另一臺(tái)服務(wù)器,這是因?yàn)檫\(yùn)行該應(yīng)用所需的一切都已在容器內(nèi)。當(dāng)前,Docker 是很多云服務(wù)提供商常用的容器類(lèi)型。
面臨的挑戰(zhàn)是,如何利用 SAP HANA 云中的 Docker 容器針對(duì) Re-Pair 壓縮工作負(fù)載部署進(jìn)行原型設(shè)計(jì)。這其中,SAP HANA 云采用的是 Garden Linux 操作系統(tǒng) (OS) 以及基于高性能 PCI Express (PCIe) 的 FPGA 加速卡。
解決方案
英特爾可編程解決方案事業(yè)部提供多種先進(jìn)的 FPGA 和 SoC FPGA,以及各種基于 PCIe 的高性能 FPGA 加速卡,其中包括基于英特爾 Stratix 10 FPGA 的英特爾 FPGA PAC D5005。
英特爾 開(kāi)放式 FPGA 堆棧則是上述 FPGA 加速卡的補(bǔ)充。作為一種可擴(kuò)展、可訪問(wèn)源代碼的軟硬件基礎(chǔ)設(shè)施,它能夠解決與設(shè)計(jì)基于 FPGA 的加速平臺(tái)解決方案相關(guān)的挑戰(zhàn)。這些解決方案都部署在基于英特爾 至強(qiáng) 處理器的服務(wù)器上。
英特爾 開(kāi)放式 FPGA 堆棧的推出,使軟件、硬件和應(yīng)用開(kāi)發(fā)人員能夠使用標(biāo)準(zhǔn)接口和應(yīng)用編程接口 (API) 來(lái)加速工作負(fù)載開(kāi)發(fā)并實(shí)現(xiàn)代碼復(fù)用。此外,該堆棧還支持對(duì)應(yīng)用進(jìn)行裸機(jī)、虛擬化或容器化部署。
英特爾 開(kāi)放式 FPGA 堆棧提供的軟硬件基礎(chǔ)設(shè)施可讓用戶專(zhuān)注于自己別具特色的應(yīng)用。在本案例研究中,SAP 開(kāi)發(fā)人員利用提供的基礎(chǔ)設(shè)施將 Re-Pair 壓縮工作負(fù)載快速移植到了選定的基于英特爾 FPGA 的加速器上。按照英特爾 開(kāi)放式 FPGA 堆棧的部署流程,他們還可利用高級(jí)設(shè)計(jì) (HLD) shim 組件,即一系列能夠?qū)崿F(xiàn)基于高級(jí)設(shè)計(jì)的工作負(fù)載支持的軟硬件組件。
OpenCL 和 oneAPI 屬于高級(jí)設(shè)計(jì)框架,用于跨 CPU、圖形處理器 (GPU)、數(shù)字信號(hào)處理器 (DSP)、FPGA 和人工智能 (AI) 加速器等不同計(jì)算加速器架構(gòu)的異構(gòu)計(jì)算。SAP 基于云的壓縮即服務(wù) (CaaS) 的初步概念驗(yàn)證 (PoC) 目前利用 OpenCL 來(lái)運(yùn)行,SAP 計(jì)劃在未來(lái)的迭代中采用 oneAPI。
英特爾 開(kāi)放式 FPGA 堆棧還能賦予不同的操作系統(tǒng)發(fā)行版本更大的靈活性,便于通過(guò)擴(kuò)展為管理和編排框架提供支持。在這種情況下,SAP 開(kāi)發(fā)人員能夠利用 Docker 容器來(lái)部署工作負(fù)載。此外,英特爾 開(kāi)放式 FPGA 堆棧還提供兩種配置選擇,即扁平化設(shè)計(jì)和支持部分重配置 (PR) 的設(shè)計(jì),使開(kāi)發(fā)人員能夠充分利用 FPGA 的可重新編程性。部分重配置功能具有高度靈活性,它支持在設(shè)備運(yùn)行時(shí)重新配置部分 FPGA——使整個(gè)基礎(chǔ)設(shè)施保持完整性及運(yùn)行狀態(tài),藉此在不中斷整個(gè)系統(tǒng)的情況下更改配置。借助英特爾 開(kāi)放式 FPGA 堆棧,SAP 開(kāi)發(fā)人員能夠在 Docker 容器內(nèi)利用部分重配置功能進(jìn)行概念驗(yàn)證。
通過(guò)利用英特爾 開(kāi)放式 FPGA 堆棧和英特爾 FPGA 可編程加速卡 D5005 對(duì) Re-Pair 壓縮工作負(fù)載進(jìn)行原型設(shè)計(jì),SAP 能夠?qū)⑹走x配置用于采用了支持 Docker 容器運(yùn)行的 Garden Linux 操作系統(tǒng)的云基礎(chǔ)設(shè)施。這是因?yàn)閺?Garden Linux 5.15 版開(kāi)始,所有版本的產(chǎn)品內(nèi)核都包含英特爾 開(kāi)放式 FPGA 堆棧設(shè)備功能列表 (DFL) 的 FPGA 驅(qū)動(dòng)程序。
本案例研究提供了一個(gè)極好的范例,展現(xiàn)了英特爾 開(kāi)放式 FPGA 堆棧提供的基礎(chǔ)設(shè)施和靈活性如何使 SAP 能夠運(yùn)用所需的配置并在短時(shí)間內(nèi)移植工作負(fù)載。
結(jié)果
本案例研究展示了 SAP 如何受益于 Docker 容器內(nèi)基于 FPGA 的可重新編程性以及在自己的云中輕松完成部署。
這類(lèi)部署因?yàn)槭褂昧擞⑻貭?開(kāi)放式 FPGA 堆棧參考基礎(chǔ)設(shè)施、源代碼、文檔和英特爾 FPGA 可編程加速卡 D5005 硬件參考平臺(tái)而得以加速。由于 SAP 可在自己的云基礎(chǔ)設(shè)施中部署概念驗(yàn)證,因此能夠盡早制定計(jì)劃在生產(chǎn)中部署 FPGA。另外,英特爾 開(kāi)放式 FPGA 堆棧的靈活性還有助于 SAP 利用 OpenCL 或 oneAPI 遷移到基于英特爾 Stratix 10 FPGA 和英特爾 Agilex FPGA 的其他英特爾或第三方平臺(tái)。
審核編輯 :李倩
-
英特爾
+關(guān)注
關(guān)注
61文章
10197瀏覽量
174743 -
SAP
+關(guān)注
關(guān)注
1文章
445瀏覽量
22067
原文標(biāo)題:白皮書(shū) | 英特爾? FPGA 助力 SAP 打造高性能壓縮算法原型設(shè)計(jì)
文章出處:【微信號(hào):英特爾FPGA,微信公眾號(hào):英特爾FPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
LTC4365的過(guò)欠壓設(shè)置電阻是否可以通過(guò)輸出電壓來(lái)改變?
9160 gps 定位需要多長(zhǎng)時(shí)間呢?
快充新時(shí)代:電池管理芯片提速記

快速配送:我們擁有完善的庫(kù)存和配送系統(tǒng),能夠快速響應(yīng)您的訂單,確保您在短時(shí)間內(nèi)獲得所需的連接器產(chǎn)品。
ADS1211獲取四個(gè)通道全部數(shù)據(jù)的最短時(shí)間是多少?
PCB板短時(shí)間內(nèi)重復(fù)開(kāi)關(guān)機(jī),導(dǎo)致ADS8328初始化失敗怎么解決?
電源負(fù)載主要特性和參數(shù)是什么?
解析電壓暫降和短時(shí)中斷抗擾度試驗(yàn)

電阻器短時(shí)通流時(shí)間是怎樣定義的

DDC264短時(shí)間內(nèi)超出電壓范圍,是否還能正常測(cè)量?
世優(yōu)科技參加2024全球跨境電商年會(huì) AI數(shù)字人賦能電商行業(yè)智能升級(jí)

IGBT短路耐受時(shí)間的重要性

PD快充的工作原理和結(jié)構(gòu)組成

評(píng)論