带有 PLX 桥的 NVMe 驱动器性能较慢

带有 PLX 桥的 NVMe 驱动器性能较慢

最近,我为正在运行的家庭服务器购买了几个 NVME 驱动器。

我决定让它更加经济实惠,并且通过选择 Supermicro 的附加卡来潜在地提高 IOP,该附加卡使用 pcie 插槽上的 PLX 桥接器来允许同时连接两个 2.5 外形尺寸的 SSD。

该卡的型号为:AOC-SLG3-2E4

我已经在单独的常规 SSD 上启动了 Linux,并且可以通过以下检查看到卡和驱动器工作正常:

liang@Sonny:~$ lspci |grep 0953
06:00.0 Non-Volatile memory controller: Intel Corporation Device 0953 (rev 01)
07:00.0 Non-Volatile memory controller: Intel Corporation Device 0953 (rev 01)
liang@Sonny:~$ lspci |grep PLX
04:00.0 PCI bridge: PLX Technology, Inc. PEX 8718 16-Lane, 5-Port PCI Express Gen 3 (8.0 GT/s) Switch (rev aa)
05:01.0 PCI bridge: PLX Technology, Inc. PEX 8718 16-Lane, 5-Port PCI Express Gen 3 (8.0 GT/s) Switch (rev aa)
05:02.0 PCI bridge: PLX Technology, Inc. PEX 8718 16-Lane, 5-Port PCI Express Gen 3 (8.0 GT/s) Switch (rev aa)
liang@Sonny:~$ 

问题是我没有获得广告中所说的 900mb/s 的写入速度:

liang@Sonny:~$ sudo dd if=/dev/zero of=/dev/nvme0
dd: writing to ‘/dev/nvme0’: Invalid argument
1+0 records in
0+0 records out
0 bytes (0 B) copied, 0.000297179 s, 0.0 kB/s
liang@Sonny:~$ sudo dd if=/dev/zero of=/dev/nvme0n1
^C7058361+0 records in
7058361+0 records out
3613880832 bytes (3.6 GB) copied, 14.3664 s, 252 MB/s
liang@Sonny:~$ sudo dd if=/dev/zero of=/dev/nvme1n1
^C764433+0 records in
764433+0 records out
391389696 bytes (391 MB) copied, 2.48995 s, 157 MB/s
liang@Sonny:~$ sudo dd if=/dev/nvme0n1 of=/dev/nvme1n1
^C930417+0 records in
930417+0 records out
476373504 bytes (476 MB) copied, 2.98179 s, 160 MB/s
liang@Sonny:~$ sudo dd if=/dev/nvme0n1 of=/dev/nvme1n1
^C23402049+0 records in
23402049+0 records out
11981849088 bytes (12 GB) copied, 59.4382 s, 202 MB/s

从图中可以看出它只有 200mb/s 左右,我已检查它不是 CPU 瓶颈,而且在我启动的常规 SSD 上我获得了 300mb/s:

liang@Sonny:~$ sudo dd if=/dev/nvme0n1 of=/home/liang/asdfasdf
^C3717510+0 records in
3717509+0 records out
1903364608 bytes (1.9 GB) copied, 5.71793 s, 333 MB/s

有人有类似的经历吗?是否需要安装一些驱动程序?是不是卡有问题?还是软件相关的某些东西导致传输速度降低?

干杯。

编辑其他详细信息

liang@Sonny:~$ uname -a
Linux Sonny 3.16.0-30-generic #40~14.04.1-Ubuntu SMP Thu Jan 15 17:43:14 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

主板:华硕Z10PE-D8 磁盘产品代码:SSDPE2MW400G4R5 (Intel 750系列NVME ssd 400GB容量)

答案1

您对其进行了错误的基准测试:dd if=/dev/zero of=/dev/nvme0您使用的是 512 字节写入,这显然非常小。

尝试使用dd if=/dev/zero of=/dev/nvme0 bs=1M你们的数量将会大大增加。

附注:使用 512 字节写入,直接连接的磁盘由于延迟较低而具有更高的性能(PLX 不可避免地会增加一些延迟)。

相关内容