Originally posted by Azrael5
View Post
Announcement
Collapse
No announcement yet.
KDE Frameworks 5.53 Will Have An Important KIO Performance Fix
Collapse
X
-
It must be a new and non-standard (posix or whatever) syscall cause I've never heard about it before. Seems a very good idea, I've always thought how when copying your file you really do a lot of proxy copies in between because of how kernel/userspace work, and was wondering if something like sendfile was possible at all.
Anyway, I guess from now on I'd do like
IF __linux___
// use sendfile
ELSE
// do the standard copy operationsLast edited by cl333r; 25 November 2018, 04:25 PM.
Comment
-
Originally posted by cl333r View PostIt must be a new and non-standard (posix or whatever) syscall cause I've never heard about it before.Michael Larabel
https://www.michaellarabel.com/
- Likes 1
Comment
-
sigh... Important... Well, not "that" important.
If you look at the code change it's merely to detect sendfile. That, in a nutshell, is used to make copies with "zero copy overhead"[1].
That perk is used in file copies. The patch is in KIO's file slave, which is for your local files [2]. So literally copy a file from X to Y.
I'm not quite sure (but still fairly) that you will hardly notice this for local files. It might be a few percent faster. The real big win imho in this case is equally fast (or slightly faster) file copies while reducing memory consumption.
[1] It's not 0. But it prevents copies from userspace -> kernel space -> userspace. It keeps it all nice and tight in the kernel thus reducing the copies, not 0.
[2] Or in other words, everything that is mounted outside using KIO is local, which is everything that is available through file://....
- Likes 1
Comment
-
Originally posted by Danny3 View Post
Hi,
I hope you're joking, if not, I'm sorry!
This was not a prank.
For me is indeed not working.
At least with my current setup:
Kubuntu 18.10
Default session type (not Wayland)
Workspace theme: Breeze Dark
Window decoration: WindowsK10-dark (Border size: Normal)
Monitor: 4K
- Likes 2
Comment
-
With NFS 1Gbit eth0 to another laptop I can get up to 110 Mbytes/sec transfer speed when I use rsync over NFS between the 2 machines. Last night I thought I'd try Dolphin and drag/move a couple of files using sftp: (KIO) and it averaged around 35 Mbytes/sec. KIO in this case is basically unusable, except for small files. I mean, the cost of moving large files taking 3 times longer is not worth the convenience of an easy drag n drop GUI operation. Looking forward to using Kf5 5.53!
BTW when are we ever going to see a kio_rsync slave?
- Likes 3
Comment
-
Originally posted by markc View PostWith NFS 1Gbit eth0 to another laptop I can get up to 110 Mbytes/sec transfer speed when I use rsync over NFS between the 2 machines. Last night I thought I'd try Dolphin and drag/move a couple of files using sftp: (KIO) and it averaged around 35 Mbytes/sec. KIO in this case is basically unusable, except for small files. I mean, the cost of moving large files taking 3 times longer is not worth the convenience of an easy drag n drop GUI operation. Looking forward to using Kf5 5.53!
BTW when are we ever going to see a kio_rsync slave?
Your case is going to stay exactly as is.
Your case needs fixes in the KIO NFS slave. But what those fixes are for optimal performance (same story in the SMB slave) is very difficult to find out. Your patches for fixing that are most welcome!
Also, how do you envision a "kio_rsync" to work? From a dolphin point of view that is. I'm curious to know as the standard file browsing UI will not work for that. Lastly, don't even for a second, assume that a hypothetical "kio_rsync" is all of a sudden going to fully saturate your gigabit network. Getting it working is the easy part, getting it to perform at peek efficiency is darn near impossible.
Comment
-
Originally posted by markg85 View Posthow do you envision a "kio_rsync" to work?
Comment
-
Originally posted by markc View Post
It would be a stretch but grsync provides an ugly GUI frontend to rsync. Select source folder and "copy", select destination folder and "paste" (or drag n drop etc) and the parameters get passed to the rsync executable just like with grsync which also allows for individual files to be sync'd to destination folders.
Again, you can make patches and see where it ends up
Comment
Comment