z/OS Tools & Language

Expand all | Collapse all

Curl CPU performance

  • 1.  Curl CPU performance

    Posted 03-14-2018 09:44

    I’ve been doing some testing of the Curl package which you provide for z/OS, and have found it uses significantly more CPU time and is significantly slower than the zLinux build of Curl provided with RHEL7.

    Does anyone have any idea why there is such a significant difference? In all cases, the test are being run on the same z13 Mainframe, be it running under z/OS or zLinux.

    z/OS

    $ curl -V
    curl 7.42.1 (i370-ibm-openedition) libcurl/7.42.1 OpenSSL/1.0.2c zlib/1.2.8 iconv libssh2/1.4.3 nghttp2/1.0.1
    Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp
    Features: IPv6 Largefile NTLM NTLM_WB SSL libz CharConv TLS-SRP HTTP2 UnixSockets Metalink

    $ time curl http://www-cls/mhdata/megafile -o /dev/null
    % Total % Received % Xferd Average Speed Time Time Time Current
    Dload Upload Total Spent Left Speed
    100 3647M 100 3647M 0 0 40.5M 0 0:01:29 0:01:29 --:–:-- 39.5M

    real 1m29.98s
    user 1m 6.90s
    sys 0m22.30s

    RHEL7 Provided Curl on zLinux

    $ curl -V
    curl 7.29.0 (s390x-ibm-linux-gnu) libcurl/7.29.0 NSS/3.21 Basic ECC zlib/1.2.7 libidn/1.28 libssh2/1.4.3
    Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp
    Features: AsynchDNS GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz unix-sockets

    $ time curl http://www-cls/mhdata/megafile -o /dev/null
    % Total % Received % Xferd Average Speed Time Time Time Current
    Dload Upload Total Spent Left Speed
    100 3647M 100 3647M 0 0 767M 0 0:00:04 0:00:04 --:–:-- 770M

    real 0m4.758s
    user 0m0.400s
    sys 0m1.380s

    Thanks

    Martyn



  • 2.  RE: Curl CPU performance

    Posted 03-22-2018 10:51

    A quick update, I’ve since found that there is a build of curl 7.52 on the Rocket site. Testing with this shows a significant performance improvement over the 7.42 version that is also still available, 7.52 uses approximately 20x less CPU than 7.42. I’d reccomend anyone still using the 7.42 version in anger to move to 7.52 asap.

    7.52
    time curl http://www-cls/mhdata/testfile -o /mass/testfile.curl752
    % Total % Received % Xferd Average Speed Time Time Time Current
    Dload Upload Total Spent Left Speed
    100 1000M 100 1000M 0 0 37.0M 0 0:00:27 0:00:27 --:–:-- 35.4M

    real 0m27.046s
    user 0m1.298s
    sys 0m0.433s

    7.42
    time curl http://www-cls/mhdata/testfile -o /mass/testfile.curl742
    % Total % Received % Xferd Average Speed Time Time Time Current
    Dload Upload Total Spent Left Speed
    100 1000M 100 1000M 0 0 19.1M 0 0:00:52 0:00:52 --:–:-- 18.3M

    real 0m52.196s
    user 0m19.044s
    sys 0m6.348s