在數據中心及云場景下,摩爾定律失效,通用處理單元 CPU 算力增長速率放緩,而網絡 IO 類速率及性能不斷攀升,二者增長速率差異形成剪刀差,即當前通用處理器的處理能力無法跟上網絡、磁盤等 IO 處理的需求。傳統(tǒng)數據中心下越來越多的通用 CPU 算力被 IO 及管理面等處理占用,這部分資源損耗稱之為數據中心稅(Datacenter Tax)。據 AWS 和 Google Cloud 統(tǒng)計,數據中心稅可能占據數據中心算力的 30% 以上,部分場景下甚至可能更多[1][2]。
DPU (Data Processing Unit) 的出現(xiàn)就是為了將這部分算力資源從主機 CPU上解放出來,通過將管理面、網絡、存儲、安全等能力卸載到專有的處理器芯片上進行處理加速,達成降本增效的結果。目前主流云廠商如 AWS 、阿里云、華為云都通過自研芯片完成管理面及相關數據面的卸載,實現(xiàn)數據中心計算資源 100% 售賣給客戶。
DPU 發(fā)展非?;馃帷T茝S商及大數據在相關場景下對 DPU 存在較強烈的需求,國內也有很多 DPU 初創(chuàng)公司推出不同的 DPU 產品。在這一背景下,云和大數據等廠商需要考慮如何整合使用不同 DPU 產品,而 DPU 廠商也面臨對不同客戶交付時設備驅動適配客戶指定操作系統(tǒng)的問題。
openEuler 作為國內領先的開源開放操作系統(tǒng),通過基于 openEuler 構建的 DPU-OS ,解決 DPU 廠商及客戶之間的適配問題。除此之外, DPU 上 OS 用于承載部分業(yè)務加速的需求,需要對 DPU-OS 進行性能優(yōu)化加速,可以基于 openEuler 構建 DPU 相關加速能力,內置在 DPU-OS 中,構建 DPU 相關軟件生態(tài)。
DPU現(xiàn)狀
DPU 普遍具有以下特點及問題:
1. DPU 通用處理能力資源受限
當前 DPU 仍處在發(fā)展早期階段,硬件上仍在不斷演進,而且由于 DPU 供電限制,當前硬件規(guī)格普遍較低。主流 DPU 中通用處理器 CPU 核數較少,約 8-24 CPU ,且單核處理能力弱。內存大小受限,普遍在 16-32GB 。DPU 本地存儲空間為幾十到幾百 GB 不等。運行于 DPU 之上的操作系統(tǒng)也需要考慮這些限制。
2.DPU-OS 安裝方式多樣
當前 DPU 廠商及產品多種多樣,對應操作系統(tǒng)的安裝部署方式也不盡相同,包括 PXE 網絡安裝、U盤安裝或其他自定義安裝方式(由 HOST 下發(fā)安裝鏡像)。
3.DPU 性能需求
DPU 的應用場景決定其對性能有強烈需求。相比于通用服務器操作系統(tǒng),DPU-OS 可能對內核特性或功能組件有特殊要求,比如用于設備直通熱遷移的 vDPA 特性、廠商特定驅動適配支持、DPU 進程的無感卸載特性、定制優(yōu)化的用戶態(tài)數據面加速工具如 DPDK/SPDK/OVS、DPU 管理監(jiān)控相關的工具類組件。
DPU-OS 需求
針對以上 DPU 現(xiàn)狀,提出對 DPU-OS 的需求如下:
1.極致輕量的 DPU-OS 安裝包
通過裁剪 openEuler 系統(tǒng)鏡像,減少非必要安裝包的空間占用;通過優(yōu)化系統(tǒng)服務,減少資源底噪開銷。
2.裁剪配置及工具支持
提供裁剪配置及裁剪工具支持,客戶或 DPU 廠商可根據各自需求進行定制;openEuler 提供 ISO 參考實現(xiàn)。
3.定制化內核及系統(tǒng),提供極致性能
通過定制內核及相關驅動,提供 DPU 競爭力內核特性;定制化加速類組件,使能 DPU 硬件加速能力;優(yōu)化系統(tǒng)配置提供更優(yōu)性能;通過 DPU 相關管理控制工具,方便用戶統(tǒng)一管理。
DPU-OS設計
圖1 DPU-OS 整體設計
如圖所示,DPU-OS 分為五層設計:
內核層:通過定制內核 config ,裁剪非必需內核特性及模塊,達成內核輕量級效果;使能特定內核特性提供高性能 DPU 內核能力。
驅動層:對 openEuler 原生驅動進行裁剪定制,選擇最小集合;DPU 廠商相關底層驅動集成,原生支持部分 DPU 硬件產品。
系統(tǒng)配置層:通過對系統(tǒng) sysctl 、proc 進行配置,為 DPU 相關業(yè)務提供最優(yōu)性能。
外圍包層:對 openEuler 外圍包進行裁剪定制,選擇最小集合;提供 DPU 相關的定制工具集合。
系統(tǒng)服務層:通過優(yōu)化系統(tǒng)原生服務啟動項,減少非必要系統(tǒng)服務運行,保證系統(tǒng)運行時底噪最小化。
通過上述五層設計達成輕量化、極致性能 DPU-OS 的目標。該方案為相對長期設計,且對 DPU 相關軟硬件生態(tài)有較強的依賴。
當前對 DPU-OS 的實現(xiàn)還處于第一階段,專注于通過 openEuler imageTailor 工具進行進項裁剪,提供最小化的 DPU-OS 實現(xiàn)。后續(xù)規(guī)劃通過對內核及 DPU 相關組件的定制化修改、配置提供專用 DPU-OS 能力,提供高性能 DPU-OS 。
說明:
1. 當前階段的 DPU-OS 先基于 openEuler 現(xiàn)有內核及外圍包,使用鏡像裁剪工具 imageTailor 進行裁剪,提供輕量化 OS 安裝鏡像。后續(xù)可根據實際訴求,進行相關內核及外圍包特性的開發(fā)及集成。
2. DPU-OS 的裁剪步驟可參考社區(qū)文檔 DPU-OS 裁剪指導[3],驗證與部署可參考 DPU-OS 部署驗證[4]。
客戶案例
天翼云
作為 openEuler 的重要合作伙伴,天翼云自身的 CTyunOS 系統(tǒng)脫胎于 openEuler,CTyunOS 目前在 DPU-OS 方面也進行了一些前期的構建與試驗工作。包括:
1. 基于 CTyunOS3 系統(tǒng)和 sig-DPU 發(fā)布的 DPU-OS 組件,構建 x86_64 和 aarch64 架構的 DPU-OS 鏡像。
2. 針對 kernel 包根據 DPU 實際要求進行定制(剔除 builtin 的 virtio-pci、virtio-ring 模塊等)。
3. 鏡像中增加定制外圍包,如 bash 命令補全、自定義工具、DPU 驅動包等。
4. DPU-OS 配置相關組件及服務,聯(lián)網情況下支持 yum 方式進行包更新升級。
天翼云 DPU 團隊在后續(xù)的 DPU 2.0 規(guī)劃里,將全面采用自身的 CTyunOS 系統(tǒng),主推使用基于 CTyunOS3 構建的 DPU-OS 。相關需求與特性反饋給社區(qū),與 openEuler 協(xié)作共建 DPU 軟件生態(tài)。
中科馭數
openEuler 為 DPU 應用發(fā)展落地提供良好的土壤,DPU 作為新生事物快速發(fā)展。DPU 往往會包含通用 CPU 架構的芯片來處理復雜的控制面邏輯。例如在虛擬化網絡體系中,需要 CPU 來運行復雜的網絡控制面程序;在網絡安全領域,眾多不同的安全框架也依賴 CPU 提供基礎算力。
而在 CPU 的具體選型上,DPU 產品面臨在不同應用場景、不同算力需求下的選擇問題。如 x86 可以提供強勁的性能,但是無法和 DPU 芯片做到較好融合;ARM 可以解決上述難題,但是在重應用卸載的場景存在性能問題;RISC-V 在成本與靈活性上能提供最優(yōu)方案,但是代價是應用場景的適配性不高??傊?CPU 的選型上目前還沒有最優(yōu)解。在這種背景下,操作系統(tǒng)的選型至關重要。DPU 廠商在自己的操作系統(tǒng)選型中,往往會優(yōu)先考慮下面幾個問題:
* 穩(wěn)定與安全性
* 對底層不同架構的適配性
* 可裁剪與靈活性
經過充分的調研論證與測試,中科馭數為自己的 DPU 產品選擇 openEuler 作為底層基礎操作系統(tǒng)。首先 openEuler 操作系統(tǒng)已經過充分的落地實踐考驗,在系統(tǒng)穩(wěn)定性上具有明顯優(yōu)勢。其次 openEuler 可以提供完善的工具鏈支撐,不管是進行業(yè)務開發(fā)還是系統(tǒng)裁剪,都可以快速高效地完成。最后 openEuler 系統(tǒng)設計之初便考慮到對多樣性設備的支持,能夠與現(xiàn)有硬件生態(tài)緊密融合,極大降低了 DPU 廠家的研發(fā)成本。
得益于 openEuler 系統(tǒng)的出色的工具鏈支持,中科馭數已經完成第一代 DPU-OS 的裁剪定制開發(fā)并在眾多客戶業(yè)務中落地應用。后面中科馭數也將繼續(xù)深入探索 openEuler 系統(tǒng),一方面繼續(xù)深化定制,打造最符合 DPU 應用場景的操作系統(tǒng)。另一方面也將持續(xù)為 openEuler 社區(qū)貢獻自身的力量,助力整個 openEuler 社區(qū)繁榮發(fā)展。
加入我們
sig-DPU 致力于以 openEuler 生態(tài)作為底座,打造輕量化、極致性能的 DPU-OS,助力客戶及 DPU廠商解決不同板卡與服務之間的兼容性問題。sig-DPU 依托 openEuler 生態(tài),統(tǒng)一 DPU 與 HOST 操作系統(tǒng)底座,提供 DPU 場景定制化特性及組件,打造 DPU 軟件生態(tài),更好地發(fā)揮其硬件卸載加速能力,進一步釋放 DPU 的商業(yè)價值。openEuler DPU-OS 已經聯(lián)合包括天翼云及中科馭數在內多家企業(yè)進行驗證。
審核編輯:彭菁
-
服務器
+關注
關注
12文章
8958瀏覽量
85081 -
操作系統(tǒng)
+關注
關注
37文章
6684瀏覽量
123140 -
DPU
+關注
關注
0文章
353瀏覽量
24100 -
大數據
+關注
關注
64文章
8854瀏覽量
137210 -
openEuler
+關注
關注
2文章
301瀏覽量
5810
原文標題:基于 openEuler 構建輕量、極致性能的 DPU-OS ,打造 DPU 軟件生態(tài)底座
文章出處:【微信號:openEulercommunity,微信公眾號:openEuler】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論