)
️ IUIndirection Unit间接单元 什么是 IUIndirection UnitIU间接单元是 FTL 地址映射的最小粒度单位即 FTL 进行逻辑地址LBA到物理地址PBA映射时的最小管理块。 简单说IU 决定了 FTL 映射表一次管多大的数据。⚙️ IU 的工作原理主机写入 LBA 0 ~ LBA 7每个 LBA 512B 或 4KB ↓ FTL 按 IU 大小分组管理 ↓ IU 4KB → 每个 IU 对应 1 条映射表条目 IU 8KB → 每 2 个 LBA 共享 1 条映射表条目 ↓ 映射表IU编号 → 物理 NAND Page 地址 IU 大小的影响IU 大小映射表大小随机写性能顺序写效率适用场景小如 4KB大占用更多 DRAM✅ 高✅ 好随机 I/O 密集型大如 64KB小节省 DRAM⚠️ 较低✅ 优秀顺序读写为主 IU 与 NAND Page 的关系┌─────────────────────────────────────────┐ │ NAND Physical Page │ │ ┌──────┬──────┬──────┬──────┐ │ │ │ IU │ IU │ IU │ IU │ │ │ │ 0 │ 1 │ 2 │ 3 │ │ │ └──────┴──────┴──────┴──────┘ │ │ 一个 NAND Page 可包含多个 IU │ └─────────────────────────────────────────┘IU ≤ NAND Page 大小精细映射灵活性高IU NAND Page 大小映射最简洁GC 效率最优IU NAND Page 大小极少见会造成读-改-写开销 IU 与写放大WAF的关系IU 大小直接影响 WAF主机写入 1KB 数据 ↓ IU 4KB → FTL 必须写入完整 4KB读-改-写 ↓ 实际写入 4KB 请求写入 1KB ↓ WAF 贡献 4x仅此操作写入大小对齐 IU 边界是降低 WAF 的重要优化手段 企业级 SSD 的 IU 配置在 NVMe 协议中IU 相关参数通过Identify Namespace命令暴露给主机NVMe 字段含义NOWSNamespace Optimal Write Size最优写入大小建议对齐此值NPWGNamespace Preferred Write Granularity首选写入粒度NPWANamespace Preferred Write Alignment首选写入对齐NOIOBNamespace Optimal I/O Boundary最优 I/O 边界通过这些字段主动告知主机最优写入对齐方式帮助上层应用和文件系统自动优化写入模式。 实际调优建议# 查看 NVMe 设备的 IU 相关参数Linuxnvme id-ns /dev/nvme0n1-H|grep-ENOWS|NPWG|NPWA|NOIOB# 确认当前格式化的 LBA 大小nvme id-ns /dev/nvme0n1|grepin use最佳实践✅ 写入大小尽量对齐IU 边界✅ 数据库 WAL / 日志文件使用顺序追加写✅ 文件系统格式化时选择与 IU 对齐的block size✅ 避免大量4KB 以下的随机小写除非 IU 4KB 一句话总结IU 是 FTL 映射的最小单元——它决定了 SSD 管理数据的分辨率。写入越对齐 IU 边界WAF 越低、性能越稳、寿命越长。