[分享] 极致优化 SSD 并行读调度

user image 发现 ----- 2023-09-26 12:39:05
SSD 在工作业务场景用得蛮多的,对长尾的控制,硬件上历史有 Streamed SSD 、OpenChannel SSD ,还有最新的 Zoned Namespaces SSD 。不过公司引入硬件周期长,业务上的问题也还是得解决。
我们从以下几个方面充分优化对 SSD 的使用:
读写和 SSD 上的闪存单元大小对齐,控制为 4K ;充分利用 SSD 的并行能力,用上了 libaio 和 iouring ;(吐槽下 iouring 真是太新了,接口用上耗费了一翻源码追踪的功夫,现在 io cacnel 的接口适配还卡着,没来得及定位)并行读的时候,利用上了流水线的思想,充分并行本地的 CPU 和 IO ;(这里吹下 fio 的设计,流水线的思路是从这里启发而来的)更完整的优化分享可以详见: https://mp.weixin.qq.com/s/CB4u5AQuRrIq5mRISx9GmQ

使用说明