Linux 引入F2FS 异步缓冲写入支持


Flash Friendly File-System (F2FS) 对于闪存设备,尤其是固态硬盘和移动硬盘来说,依然是强大的文件系统选项。

从 Linux 内核的 F2FS 开发树来看,F2FS  即将引入异步缓冲写入功能,作为此闪存优化文件系统的另一项性能提升。来自 Vivo 的 Yangtao Li 上周已将最新补丁提交至在 F2FS 的“开发”分支中,以启用  F2FS nowait 异步缓冲写入功能。

只需更改几行代码,即可在缓冲写入条件下使用 FIO 进行测试时产生一些非常好的加速。

F2FS 异步缓冲写入

I/O 深度为 1 时,性能提高了大约 47%,而 I/O 深度为 16 时,它扩展到当前性能的 2.54 倍。

 对 F2FS 开发感兴趣的人可以在这个补丁中查看详细信息,此功能可能会在即将到来的 Linux 6.5 合并窗口中提交。


相關推薦

2023-01-15

性/功能,如 F2FS 低内存模式、在使用 XFS 和 io_uring 时的异步缓冲写入、对 RISC-V 和 AArch64(ARM64)硬件架构的改进,以及 Btrfs 和 OverlayFS 文件系统的新功能和改进等。 不过 Linux 6.0 并非一个 LTS 长期支持版本,这意味着它只会获

2023-03-01

Linux 6.3 最新补丁引入了 SSDFS 文件系统支持,这个新的开源文件系统特别针对 ZNS SSD (支持 NVMe 分区命名空间 (ZNS) 的固态硬盘)进行了优化。 ZNS (Zoned Namespaces)SSD 即分区命名空间固态硬盘,通过 NVMe 的新规范实现。ZNS SSD

2022-12-12

Btrfs 性能优化、Kernel Memory Sanitizer、Maple Tree 数据结构的引入以及许多其他硬件驱动程序工作。 有关每项 Linux 6.1 新功能的细节,请查看咱们 OSC 对应的报道: 初始的 Rust 基础设施已被合并到 Linux 6.1 Linux 6.1 内核合并

2023-04-27

FS 文件系统主要是一些驱动程序更新,新功能最重要的是支持分区设备的非二次幂区域大小,其次是垃圾收集器的代码重构、支持 I/O 轮询,以及各种不同的错误修复。 可在该 PR 中查看完整的修复项。 Linux 6.4 还对 FSCRYPT 文

2022-11-03

里程碑式的版本,是走向成熟的重要一步。 易用性:引入 SQL Gateway 并完全兼容 HiveServer2,用户可以非常方便的提交 Flink SQL 作业和 Hive SQL 作业,同时也很容易连接到原有的 Hive 生态。 功能:Flink SQL 用户支持通过 Join Hint

2021-11-22

求到CHProxy,再由CHProxy根据集群节点状态来转发。CHProxy的引入是为了让Query均匀分布在每个节点上,,并对CHProxy做了一定的改进,自动感知集群节点的状态变化。 多条件查询控制台 控制台比较简单,主要就是做一些sql语

2022-08-16

要的变更: 合并大量 char/misc 代码,提供 Gaudi2 支持 引入 F2FS 低内存模式,用性能减少内存占用  为 LoongArch 架构启用 PCI 和其他功能支持 为 Arm64 添加 UEFI 镜像内存和 ACPI PRM 支持 将其 H.265/HEVC 用户空间 API 提升到稳

2022-07-05

Commits 防止未定义的 shift 2b10479 防止可能的缓冲区溢出a854a0a 纠正复制/粘贴错误b11d647 当对 FT_Open_Face 的调用失败时,需要自己释放流。a1eb122 添加了对 DestroyString 的缺失调用。bc786da MVG 需要 seekable stream 

2023-01-04

或最小安装,也可以在安装时选择专有的图形驱动和 WiFi 支持,以及额外的多媒体编解码器。 默认情况下,Ubuntu 23.04 继续以 EXT4 作为文件系统选择。考虑到 F2FS(Flash-Friendly File System)已经成为 EXT4 的一个重要竞争对手,以及

2022-06-22

Chrome 103 稳定版发布啦。 Chrome 103  引入了 103 Early Hints HTTP 响应代码进行导航的支持,当 103 响应包含 <link rel=preload> 或其他链接标头时,Chrome 会在收到响应之前尝试预加载指定资源。该功能为 Web 开发人员提供了一种优

2022-09-01

时的 epoll 错误 (#12644) 避免在 header 验证失败异常中引入 header 值 (#12642) 避免在 JdkZlibEncoder 中分配大缓冲区 (#12641) 原生镜像支持:原生镜像默认设置 IS_EXPLICIT_TRY_REFLECTION_SET_ACCESSIBLE 为 true (#12638) 在 macOS 上

2023-04-24

features2_to_features r600:多平面格式已不受支持 radv:在帧缓冲区发射中保留空间 radeonsi/vcn:为 h264 解码添加字段大小写异常 dzn:修复计算命令列表上的 SRV 屏障状态 dzn:确保管道变体用于动态模板掩码 dzn:不再将写入组合

2023-09-02

两三年内从主线 Linux 内核中删除。此外,作为少数几个支持 ReiserFS 的发行版之一,openSUSE Tumbleweed 也在去年正式结束了对 ReiserFS 的支持。 与 EXT4、Btrfs、XFS 等现代 Linux 文件系统以及 F2FS 和即将推出的 Bcachefs 等其他现代文件系

2023-08-02

KJ 的 HTTP 客户端和服务器实现现在支持 CONNECT 方法。 引入了一个新类 capnp::RevocableServer,以帮助在生命周期不受包装器控制的对象周围导出 RPC 包装器。 以及一些更小的 bug 修复和改进。详情可参阅 PR 历史记录。 在 1.0