我使用带有 samba 的树莓派作为本地网络中的远程访问存储。将文件从 Windows 复制到 pi 时,我的传输速度很奇怪。它从 200 kB/s 甚至更低跃升至 10 MB/s。它总是在低速下停留约 2 秒,然后在高速下停留约 2 秒。
有人知道可能是什么原因吗? USB 闪存驱动器损坏、Samba 配置错误或者只是因为复制到不同的文件系统而显示速度不准确?
答案1
我怀疑瓶颈在于写入 USB 闪存驱动器。 USB 闪存驱动器通常处于性能/价格范围的低端。数据以 10MB/s 的速度在内存中累积,然后以 200kB/s 的速度写出。
你可以尝试玩vm.dirty_bytes
和vm.dirty_background_bytes
内核参数。将它们设置为较低的值可能会使书写更加均匀。然而,它也可能使平均速度降低:在闪存介质上缓冲写入有利于吞吐量,因为在写入之前需要擦除闪存块 - 如果需要多次擦除和重写同一块,这会降低性能(并降低以及驱动器的使用寿命)。