高性能存储SIG月度动态:io_uring支持nvme直通,DSMS完成开发测试

简介: Cloud Kernel SIG 月度动态送达,一键了解 5 月各项目进展。

高性能存储 SIG(Special Interest Group)目标:存储领域的发展历程,本质上是存储介质与软件栈相互促进发展的过程。高性能存储 SIG 致力于存储栈性能挖掘,当前主要聚焦内核 io_uring 技术优化异步 IO 性能,使用持久化内存提升业务单成本性能,容器场景存储技术优化等课题。高性能存储 SIG 期望通过社区合作,打造标准的高性能存储技术软件栈,推动软硬件协同发展。

01  SIG 整体进展

1、本月合入 Anolis 主线 PR 共计 24 个,包含多个重要组件的特性支持,性能优化和 bugfix 等。

2、继上个月 ANCK 5.10 支持 erofs subpage block 特性后,ANCK 4.19 也提供这一特性支持,可提升容器镜像 tar 包解压性能以及 golden image 的安全性。

3、ANCK 4.19/5.10 支持 virtfuse 模块,可方便云原生场景下 FUSE 文件系统的部署,应用于大数据和 AI 训练的存储接入等场景。

4、ANCK 5.10 支持 io_uring nvme passthrough 特性的 PR 已经提交 review,计划合入 5.10-15 版本,POC 数据显示相比原生的 io_uring 路径性能提升 ~15%。

5、DSMS 开发测试完成,构建打包中,计划在 Anolis 23 中发布预览版。

02 项目具体进展

1)Anolis OS

cve:CVE-2023-0386(PR1608),CVE-2023-2269(PR1690/PR1691),CVE-2023-2513(PR1694)

erofs & fscache:支持 iomap(PR1638),支持 subpage block 特性(PR1639),修复添加 entry 到损坏的目录 crash 问题(PR1649)

io_uring:修复 uring cmd 提交失败的 bug(PR1644/PR1668)

ext4:优化 dio 覆盖写性能(PR1601),修复 ext4_xattr_set_entry UAF(PR1614),修复多个 ext4 bigalloc 的 bug(PR1657)

xfs:修复 xfstests xfs/191 用例失败问题(PR1594)

fuse:解决 FUSE_PASSTHROUGH 特性位冲突(PR1470),支持 virtfuse 特性(PR1606/PR1656),修复多个 fuse bug(PR1652),修复 virtfuse 在未注册回调函数的 bug(PR1655)

overlayfs:支持 virtiofs 作为 upper layer(PR1650),修复 virtiofs 作为 upper layer 的 bug(PR1651),修复 generic/683 用例失败问题(PR1667)

misc:修复 nilfs2 sysfs 接口生命周期问题(PR1626),修复 nilfs2 UAF bug(PR1666)

2)容器镜像

ANCK 4.19 支持 erofs subpage block 特性,可应用于容器镜像场景中 erofs 直接索引容器镜像的 tar 包,省去容器镜像生命周期管理中 tar 包的 untar 以及清理流程,从而提升性能和稳定性,并提升容器镜像作为 golden image 的安全性。

xattr bloom filter 已经开发完成并发出 RFC 补丁,在 shared xattr 场景运行时性能有 ~20% 的优化;另外,xattr 和压缩单元持续清理代码中。

erofs-utils 报告 2 个 cve,目前已经初步解决,并在 erofs 的 fsck 工具中集成了 fuzz 框架来满足 malicious image 的 fuzz 需求,同时基于 fuzz 框架进一步加固 erofs-utils。

3)io_uring

ANCK 5.10 支持 io_uring nvme passthrough 特性的 PR 已经提交 revew,将在接下来发布的 5.10-15 版本发布;

从测试版本的 POC 数据来看,相比原生的 io_uring,性能有 ~15% 的提升。接下来将在分布式存储项目端到端验证。

4)dsms

dsms 已经在 Anolis 8.6 上完成了 dsms-engine、dsms-storage 以及 dsms-ui 等组件的功能联调,并且通过测试,目前已经成功构建 dsms-ui、dsms-engine;dsms-storage 构建目前缺少依赖包,将在 SIG 群里跟进解决。

待全部包构建成功后,将按照社区包引入流程提交申请,计划在 Anolis23 中发布预览版。

03 下一步计划

xattr bloom filter 合入上游主线;完成 erofs 支持 deflate 压缩特性开发,并支持 subpage。

借助开源之夏项目,erofs-utils 支持多线程打包和解压,以及 fuse 增强等特性。

io_uring nvme passthrough 特性合入 ANCK 5.10 主线。

dsms 继续完成构建打包,并提交包引入申请,适配 Anolis 23。

相关链接:

高性能存储 SIG 主页:

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

注:更多龙蜥 SIG 月度动态可点击这里查看。

—— 完 ——

加入龙蜥社群

加入微信群:添加社区助理-龙蜥社区小龙(微信:openanolis_assis),备注【龙蜥】与你同在;加入钉钉群:扫描下方钉钉群二维码。

相关文章
|
9天前
|
数据采集 监控 算法
LabVIEW开发新能源电机控制器测试系统
LabVIEW开发新能源电机控制器测试系统
16 4
|
9天前
|
存储 传感器 数据采集
LabVIEW开发EOL功能测试系统
LabVIEW开发EOL功能测试系统
19 3
|
9天前
|
敏捷开发 监控 测试技术
软件测试中的敏捷实践:如何有效整合测试与开发
【7月更文挑战第3天】在软件开发的快速迭代周期中,敏捷测试成为确保产品质量的关键。本文将探讨如何在敏捷开发环境中整合测试与开发工作,包括持续集成、测试自动化和跨功能团队协作的策略,旨在提升软件交付的速度和质量。
|
14天前
|
消息中间件 缓存 中间件
【赠书活动 - 第1期】- 测试工程师Python开发实战(异步图书出品)| 文末送书
【赠书活动 - 第1期】- 测试工程师Python开发实战(异步图书出品)| 文末送书
|
7天前
|
运维 监控 大数据
部署-Linux01,后端开发,运维开发,大数据开发,测试开发,后端软件,大数据系统,运维监控,测试程序,网页服务都要在Linux中进行部署
部署-Linux01,后端开发,运维开发,大数据开发,测试开发,后端软件,大数据系统,运维监控,测试程序,网页服务都要在Linux中进行部署
|
9天前
|
jenkins 数据管理 测试技术
在LabVIEW开发生命周期中提高代码质量的自动化测试方法
在LabVIEW开发生命周期中提高代码质量的自动化测试方法
|
9天前
|
数据采集 数据可视化 数据管理
LabVIEW开发实验室超导体电流特性测试系统
LabVIEW开发实验室超导体电流特性测试系统
|
14天前
|
敏捷开发 jenkins 测试技术
软件测试中的自动化与持续集成:提高开发效率和产品质量
在软件开发的生命周期中,测试阶段扮演着至关重要的角色。随着敏捷开发模式的普及,自动化测试和持续集成(CI)已成为确保软件质量和加快交付速度的关键策略。本文深入探讨了自动化测试和持续集成的概念、实施步骤及其对软件开发流程的影响。通过引用最新的行业研究和案例分析,文章揭示了这些技术如何帮助团队减少人为错误,缩短反馈循环,并最终提升产品的稳定性和用户体验。
|
16天前
|
存储 缓存 NoSQL
Redis为什么速度快:数据结构、存储及IO网络原理总结
Redis为什么速度快:数据结构、存储及IO网络原理总结
|
21天前
|
开发框架 Java Maven
后端开发之SpringBootWeb入门介绍及简单测试 2024详解
后端开发之SpringBootWeb入门介绍及简单测试 2024详解
20 0