我的机器上出现了一个奇怪的情况。我有多个外部 USB 3.0 驱动器,它们执行大量 IO(每个大约 70-100MBps,复制磁盘映像或使用类似工具dd
),但我的系统 SSD 驱动器上的 IO 却很低。
我可以在每个驱动器上运行高 IO 操作,但一旦我使用 3 个以上的驱动器,我的系统就会变得非常滞后,尽管我的 CPU、内存和系统 IO 使用率很低。我可以执行ionice
这些操作,这有点帮助,但我仍然遇到相同的瓶颈。
这个瓶颈可能在哪里?
眼镜:
i7 处理器 12GB 内存,
内部系统驱动器为 SSD,
所有外部驱动器均为 USB 3.0 5400-7200RPM,
Ubuntu 14.04 x64。
当遇到瓶颈时,RAM 使用率 <50%,交换使用率 <1GB,系统 IO 只是运行 Ubuntu 所需的,不会在那里运行任何繁重的操作,所有核心的 CPU 使用率 <30%。
答案1
发生这种情况的原因是这些大型读/写操作填满了页面缓存,并且页面缓存是系统范围的,而不是每个磁盘的。我在 Unix StackExchange 上发布了一个类似的问题,得到了答案,这使我能够使用命令跳过缓存dd
......