Show HN: wcp – a reimplementation of cp using io_uring. With a nice progress bar(wheybags.com)
wheybags.com
Show HN: wcp – a reimplementation of cp using io_uring. With a nice progress bar
https://wheybags.com/blog/wcp.html
6 comments
The chart is showing data from an NFS copy, but the listed speeds in the blog and on github[1] are from a copy on a local SSD. That is a bit confusing though, maybe I should make it more clear. I used the network copy for ETA calculation because it was an easy way to make the transfer take longer - if the whole copy is only a few seconds long it's difficult to meaningfully compare ETA estimation accuracy between two approaches. I would like to have more performance data though.
1: https://github.com/wheybags/wcp/#how-fast
1: https://github.com/wheybags/wcp/#how-fast
I would love to see a comparison between scp and wcp over NFS, more specifically large single file sizes, if folks are looking to discern more performance parameters.
wcp is good stuff!
wcp is good stuff!
I would expect pretty much any plain copying program over NFS to beat scp, since scp has the overhead of encryption. On a slow disk with a fast CPU it might roughly match though.
That's great stuff, I wonder how it compares to wdt[0] when there's only one TCP path. This has been my go-to tool to transfer files on the network.
0: https://github.com/facebook/wdt
0: https://github.com/facebook/wdt
Looks like a cool project! There's no network functionality in wcp at the moment, but it's definitely something I'd consider adding in the future.
10 years ago I found there was little benefit for async i/o to a disk, even though it great for networking.
With SSD it coukd he different if you have a very long q depth, but he shows charts for copies over nfs where async i/o might find a lot of latency to hide.