curl / Mailing Lists / curl-library / Single Mail

curl-library

Re: Windows users! Help us test upload performance tuning?

From: Jan Ehrhardt <phpdev_at_ehrhardt.nl>
Date: Sat, 04 Aug 2018 18:14:29 +0200

Daniel Jelinski (Sat, 4 Aug 2018 08:02:00 +0200):
>I'm a little concerned about Gisle's FTP results and Jan's results on
>Virtualbox. I don't think they should block this patch, but they may
>justify some further enhancements.

Once upon a time I tested a lot of upload tools to see which one suited my
requirements best. These requirements were:
1. Speedy upload of 200MB files
2. Possibility to resume an interrupted transfer
3. Secure
I ended up with a Windows port of lftp, launched from a bash script. Curl sftp
did resume, but was terribly slow. Curl ftps was fast, but did not resume.
WinSCP did not resume, because of rename restrictions on the FTP server.

Today, I compared the speed once again with the 1 MB test file.
Results: curl patched was not faster than curl vanilla.

I used ptime to time the execution, because bash/lftp did not have one of its
own. Example run:

bash / lftp : 5.660 s
curl vanilla: 5.248 s
curl patched: 5.471 s

curl was consistently a little bit faster than bash/lftp, but that may be
related to the sftp encryption (curl ran plain ftp, port 21).
curl vanilla and curl patched did not seem to differ. Sometimes patched was
faster than vanilla, sometimes the other way around.

@Daniel Jelinski: could you compile a version with sftp support?

Microsoft Windows [Version 6.1.7601]
generating test file...
running lftp....

== E:\utils\bash.exe /utils/bash.sh ===

Execution time: 5.660 s
running vanilla...

== curl -w"start:%{time_starttransfer} total:%{time_total}\n" -C - -k (removed)
** Resuming transfer from byte position -1
  % Total % Received % Xferd Average Speed Time Time Time Current
                                 Dload Upload Total Spent Left Speed
100 1023k 0 0 100 1023k 0 207k 0:00:04 0:00:04 --:--:-- 227k
start:0,577000 total:4,945000

Execution time: 5.248 s
running patched...

== curl -w"start:%{time_starttransfer} total:%{time_total}\n" -C - -k (removed)
** Resuming transfer from byte position -1
  % Total % Received % Xferd Average Speed Time Time Time Current
                                 Dload Upload Total Spent Left Speed
100 1023k 0 0 100 1023k 0 197k 0:00:05 0:00:05 --:--:-- 224k
start:0,733000 total:5,179000

Execution time: 5.471 s

Timed by
ptime 1.0 for Win32, Freeware - http://www.pc-tools.net/
Copyright(C) 2002, Jem Berkes <jberkes_at_pc-tools.net>

-- 
Jan
-------------------------------------------------------------------
Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library
Etiquette:   https://curl.haxx.se/mail/etiquette.html
Received on 2018-08-04