Re: Slow SMB performance over GVFS




On 07/10/13 17:20, Ross Lagerwall wrote:
On Sun, Oct 06, 2013 at 05:39:45PM +1100, Will Rouesnel wrote:
Copying with Windows 7 to my Ubuntu 13.04 file server running ZFS, I can
achieve upwards of 80mb/s transfer speeds, with a minimum of maybe 60
mb/s on a bad day (this is with a couple of large files).

Doing the same operation with GVFS, I'm lucky to clear 20 mb/s (27-28 is
the highest I've seen).

Doing the same operation with rsync -W and the GVFS mounts, I get no
more then 1mb/s (Same with dd).

Doing the same operation with rsync over ssh, I get ~50 mb/s.

If I run the same operation a few times (to account for a warmed cache),
rsync -W (i.e. no deltas) leaps to 100 mb/s (line-speed essentially),
while GVFS Samba will chug at about 50 mb/s.
So rsync over ssh goes from 50MB/s to 100MB/s and GVFS over Samba goes
from 20MB/s to 100MB/s?
What happens if you use smbclient or a CIFS mount?
Sorry my phrasing was unclear:

Rsync -W over SSH manages a good 50 - 100 MB/s no problems (accounting
for things getting cached on successive runs). This is still the top
performer - once the cache is warmed, it'll saturate the line.

GVFS over Samba manages 20-50mb/s tops.

GVFS over SFTP manages 33 mb/s very consistently - probably being
limited by SSH interaction though based on the rsync result it should be
faster.

A CIFS mount with default settings seems odd: rsync -W manages about
50mb/s, copying with Nemo cuts that down to 1-2 MB/s somehow.

Conversely, rsync -W using the GVFS mount is also only about 1-2 MB/s.

Using dd if=file | pv -B 10485760 | dd of=mount on the CIFS mount seemed
to give the best performance with CIFS - 70-80mb/s, bursting up to 100
quite easily. The big buffer size in pv seemed to help a lot, since
performance wasn't great with a smaller buffer.

The same command on a GVFS share still chugged at 1.6 mb/s.

Looking at the numbers, there might just be an issue with Samba -> Samba
communication on my network since CIFS and GVFS seem to maintain about
the same maximum throughput with their own commands. Though why Windows
-> Linux can manage much higher speeds is still a mystery.

I guess that still makes the big problem that block level commands are
so slow on GVFS, since my initial usage and frustration was pointing a
block-level app at a GVFS share and getting only 7-8 mb/s performance,
whereas to my hard drive I got 25-30mb/s (in this case, ripping a blu-ray).


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]