天天看點

高性能存儲技術SIG 8月份營運月報 | 龍蜥SIG

高性能存儲技術 SIG:存儲領域的發展曆程,本質上是存儲媒體與軟體棧互相促進發展的過程。高性能存儲技術興趣組緻力于存儲棧性能挖掘。

SIG 目标:目前主要聚焦核心 io_uring 技術優化異步 IO 性能,使用持久化記憶體提升業務單成本性能,容器場景存儲技術優化等課題。 期望通過龍蜥社群(OpenAnolis)合作,打造标準的高性能存儲技術軟體棧,推動軟硬體協同發展。

歡迎更多開發者加入高性能存儲技術SIG:

網址:https://openanolis.cn/sig/high-perf-storage

郵件清單:[email protected]

高性能存儲技術SIG 8月份營運月報 | 龍蜥SIG

SIG 本月亮點

統信軟體合作 統信軟體作為 SIG 的 Maintainer 之一,深度參與到高性能存儲技術 SIG 當中。一期計劃先基于龍蜥作業系統( Anolis OS) 搭載的 io_uring 進行了評測,并将相關技術移植到統信 OS 中。評測對象包括:使用 fio 基于 NVMe 盤對比測試 libaio 和 io_uring 的 IO 性能,使用 SIG 中 nginx 和 redis 支援 io_uring 的 POC 分支版本對比測試 io_uring 和 epoll 的網絡性能等。初步測試結果表明,大部分場景 io_uring 的确能帶來性能優化,與 SIG POC 資料基本一緻,具體測試報告細節整理完成後會釋出到 SIG 中。感謝統信同學 @wangleic、@HanGuangyu 的參與。

評測過程中問題發現及修複: 1、redis io_uring fast poll 支援問題

修複更新檔:

783f39482587 fix wrong poll mask in fast poll(@maomao123) 2、redis-benchmark 工具 register files 支援

02b8c5eaa2ab add missing register files in redis-benchmark (@maomao123)

3、redis sqpoll 支援

1b631b5a6350 add a sqpoll argument for server and benchmark

(@maomao123) 4、redis 在打開 NUMA 場景性能不及預期

測試中通過綁核解決。(@maomao123、@HanGuangyu)

5、nginx 短連接配接性能下降 20%

比 SIG POC 資料下降 5% ~ 10% 要差,初步分析原因與頻繁 accept 連接配接

有關,後續需要重點分析和優化。(@maomao123)

軟體包更新

1、支援 CPU 資源優化特性的 liburing 适配

優化更新檔:a6cf7cd33634 support sqthread cpu resource

optimization(@maomao123)

SIG 項目進展

已完成項目

Cloud Kernel 4.19 支援 io_uring

io_uring 性能回歸架構

io_uring 應用 POC

Redis

Nginx

Echo Server

進行中項目

io_uring 優化

RocksDB

Netty

virtio-fs per-file dax 支援

16k 原子寫

計劃中項目

容器鏡像加速

IO 業務模型分析

SIG 項目動态

結合異步 IO 業務場景,圍繞 io_uring 我們将繼續探索對 RocksDB 以及 Netty 的優化。其中 RocksDB 是廣泛應用的 KV 存儲引擎,Netty 作為 Java 網絡應用的基礎架構同樣有着非常廣泛的應用。(@wangxiaoguang) virtiofs 目前已經在容器化存儲場景(kata)預設使用,我們針對高性能場景提出 per-file DAX 優化,已經發到 v4 版本,正在上遊社群推進中。(@Jingbo Xu)

我們也在積極探索資料庫場景的垂直優化,目前針對 MySQL double write 帶來的性能和帶寬開銷做了一些研究,期望通過檔案系統層的優化來消除 double write。(@gaoxiang、@josephqi)

由于上述工作都會涉及到 Anolis Kernel,而目前 Kernel SIG 相關流程規範還在讨論中。待 Kernel SIG 的流程規範公布後,我們會第一時間将我們的研究成果開放在高性能存儲技術 SIG 中,并期望有更多的同學參與進來一起完善。

—— 完 ——

關于龍蜥社群 SIG

SIG 是開放的,并争取讓傳遞成果成為社群發行的一部分,由組核心心成員主導治理,可通過郵件清單群組内的成員進行交流。龍蜥社群SIG目前已超 20 個,包括跟蹤診斷技術 SIG、商密軟體棧、高性能存儲技術 SIG、Java 語言與虛拟機 SIG、Cloud Kernel、OceanBase SIG 等。

高性能存儲技術SIG 8月份營運月報 | 龍蜥SIG

SIG網址:https://openanolis.cn/sig

繼續閱讀