SSD 的写入和读取是否会相互竞争?

Nit*_*hah 5 ssd hpc io redhat-enterprise-linux

我有一个磁盘 I/O 密集型应用程序,我在其中同时进行大量读取和写入。对于旋转磁盘来说,存在争用是有道理的,因为指针必须频繁移动,但由于 SSD 的访问能力,SSD 应该对此更具弹性。然而,如果有足够的 I/O,我们可能会使控制器或通道饱和。

是否有博客/资源/白皮书描述如何在 SSD 中读取和写入内容,以及是否有办法查看 Linux 应用程序是否接近此限制?

谢谢尼特亚

har*_*ymc 2

这在很大程度上取决于 SSD、主板(尤其是总线)和操作系统。

原则上,NVMe SSD 使用四个 PCIe 数据通道,因此应该能够并行处理多个数据流。

NVMe 还拥有广泛且高效的消息排队系统。SATA 和 SAS 一次仅支持一个 I/O 队列,而 NVMe 最多可支持 65,535 个队列。

有关更多信息,请参阅 维基百科:NVM Express ,特别是与 AHCI 的比较部分 ,其中包含以下摘要:

在此输入图像描述