GNOME Bugzilla – Bug 738535
SMB backend around 70x slower than direct mount
Last modified: 2017-12-22 08:36:27 UTC
Copying a file from our office NAS using nautilus to mount it (I assume via GVFS) gives a transfer speed of around 1.6MBps, switching to a direct mount using the mount command gives a transfer speed of around 100MBps. I am using Fedora 20.
What version of gvfs are you using? GVfs 1.18.3 and newer have some speed improvements if you are using fuse daemon: https://bugzilla.gnome.org/show_bug.cgi?id=652540
I'm using version 1.20.3
Are you testing the speed against gio api, or fuse daemon? Because the fuse daemon is just fallback for application, which doesn't use gio api and it is pretty limited... See the discussion: https://mail.gnome.org/archives/gvfs-list/2013-October/thread.html#00002
I don't know, how would I check?
You are using gvfs natively if you are using nautilus or gvfs cmd utility like: gvfs-copy smb:///... You are using fuse if you are copying the files like: cp /run/user/1000/gvfs/smb\:/...
Ok I am using nautilus so gvfs
Hey, please try using smbget to copy the file and report what kind of speed you get so we can try and isolate where the problem is. Also, do you have any custom smb.conf configuration? This kind of speed is not normal :-)
I tried smbget, I'm getting similar speeds to with nautilus, ie 1.6MBps I haven't customised my smb.conf
In that case, please open a bug against Samba at https://bugzilla.samba.org/ describing your setup the speed you're getting with smbget. Thanks
Here is the link for the samba bug: https://bugzilla.samba.org/show_bug.cgi?id=10879
*** Bug 762384 has been marked as a duplicate of this bug. ***
I read on many forums that people use CIFS mount instead of GVFS because of this issue. I do the same currently, because I have 4-5x more speed with that (19MB/s vs 86MB/s). Wouldn't it be possible to use the "smbclient" implementation instead of the "smbget" implementation in the background? According to my measures starting the file transfer with "smbclient" results the same speed as a CIFS mount.
(In reply to inf3rno from comment #12) > I read on many forums that people use CIFS mount instead of GVFS because of > this issue. I do the same currently, because I have 4-5x more speed with > that (19MB/s vs 86MB/s). Wouldn't it be possible to use the "smbclient" > implementation instead of the "smbget" implementation in the background? > According to my measures starting the file transfer with "smbclient" results > the same speed as a CIFS mount. That would not be trivial. However, I have a patch to libsmbclient (which is what GVFS uses) to fix this problem, but it is not yet upstream.
(In reply to Ross Lagerwall from comment #13) > (In reply to inf3rno from comment #12) > > I read on many forums that people use CIFS mount instead of GVFS because of > > this issue. I do the same currently, because I have 4-5x more speed with > > that (19MB/s vs 86MB/s). Wouldn't it be possible to use the "smbclient" > > implementation instead of the "smbget" implementation in the background? > > According to my measures starting the file transfer with "smbclient" results > > the same speed as a CIFS mount. > > That would not be trivial. However, I have a patch to libsmbclient (which is > what GVFS uses) to fix this problem, but it is not yet upstream. Okay! I hope it will be fixed soon.
This bug is reported by samba too: https://bugzilla.samba.org/show_bug.cgi?id=10879 Nobody is assigned to it, and it still has the NEW flag after 3 years, so I guess it will never be fixed...