外部硬盘 (USB 3) 写入/读取速度非常慢

Ste*_*son 5 performance usb hard-drive 18.04

我注意到我的备份非常慢,所以我使用 sysbench 进行了速度测试,如下所示:

$ mkdir benchmark
$ cd benchmark
$ sysbench fileio prepare
$ sysbench fileio --file-test-mode=rndrw run
Run Code Online (Sandbox Code Playgroud)

结果如下:

sysbench 1.0.11 (using system LuaJIT 2.1.0-beta3)

Running the test with following options:
Number of threads: 1
Initializing random number generator from current time


Extra file open flags: 0
128 files, 16MiB each
2GiB total file size
Block size 16KiB
Number of IO requests: 0
Read/Write ratio for combined random IO test: 1.50
Periodic FSYNC enabled, calling fsync() each 100 requests.
Calling fsync() at the end of test, Enabled.
Using synchronous I/O mode
Doing random r/w test
Initializing worker threads...

Threads started!


File operations:
    reads/s:                      72.23
    writes/s:                     48.16
    fsyncs/s:                     153.46

Throughput:
    read, MiB/s:                  1.13
    written, MiB/s:               0.75

General statistics:
    total time:                          10.0039s
    total number of events:              2741

Latency (ms):
         min:                                  0.03
         avg:                                  3.65
         max:                                 86.83
         95th percentile:                     12.30
         sum:                               9991.70

Threads fairness:
    events (avg/stddev):           2741.0000/0.00
    execution time (avg/stddev):   9.9917/0.00
Run Code Online (Sandbox Code Playgroud)

硬盘是新的 4tb 西部数据硬盘,装在 Nisuta USB 3 盒中。

只有驱动器中的分区是空的并且是 EXT4。

为什么这么慢?

小智 4

我记得看到过希捷 4TB 硬盘在 Linux 机器上性能不佳的情况。我有其中之一,当你开始复制大量文件时,它就是一只狗。等了几个小时才复制大约 60GB 的文件。

\n

在我拿到驱动器一段时间后,我读到了这一点并意识到了这一点。AFAIK 4TB 外部我有运动 SMR 技术和缓存,以帮助掩盖性能问题。但是,一旦您编写密集型任务(例如尝试一次复制多个大文件),您就会注意到性能急剧下降。我看到每个副本的速度下降到 500kb/s。所有副本之间的总传输速率比我的互联网连接速度慢。

\n

这是我第一次尝试弄清楚发生了什么时发现的 SMR 的一个很好的解释:

\n

https://blocksandfiles.com/2020/04/15/seagate-2-4-and-8tb-barracuda-and-desktop-hdd-smr/

\n
\n

为什么 SMR 驱动器对于写入密集型工作负载来说不是最佳选择

\n

叠瓦式磁记录通过部分重叠写入磁道,将更多数据传输到磁盘板,从而使其中的读取磁道保持清晰。读取 IO 速度不受影响,但数据重写需要使用新数据读取磁道块并进行编辑,并将其重写为新块。与传统的记录驱动器相比,这大大延长了数据重写时间。

\n

写入密集型工作负载受 SMR 延迟的影响比读取密集型工作负载更严重。因此,SMR 驱动器通常用于归档类型的应用程序,而不是用于实时混合或路由密集型用例。

\n

将写入缓存到驱动器的非叠瓦区域并在空闲时间将它们写出到叠瓦扇区将有效隐藏缓慢的重写速度\xe2\x80\x93,直到重写 IO 请求仍然传入时缓存填满。

\n

然后刷新缓存并将所有数据写入驱动器的叠瓦区域,在完成此操作时可能会导致数秒的暂停。

\n
\n

您也可以看看 Mac 论坛。我也在使用 Ubuntu,但我们都在同一条船上。

\n

https://hardforum.com/threads/seagate-3tb-slow-write-speeds-drive-failing.1924143/

\n