Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

improve download performance, minimal effort #14098

Closed
wants to merge 1 commit into from

Conversation

icing
Copy link
Contributor

@icing icing commented Jul 4, 2024

Do not poll the socket for pending data every transfer loop iteration. This gives 10-20% performance gains on large HTTP/1.1 downloads (on my machine).

> python3 tests/http/scorecard.py --httpd -d --download=100mb h1

         Size  single(1x1) [cpu/rss]         serial(50x1) [cpu/rss]         parallel(50x50) [cpu/rss]                Errors
before  100MB     781 MB/s [94.0%/8MB]          1163 MB/s [98.9%/9MB]          1450 MB/s [99.9%/18MB]
after   100MB     796 MB/s [94.1%/8MB]          1184 MB/s [98.8%/9MB]          1694 MB/s [100.0%/18MB]

Do not poll the socket for pending data every transfer
loop iteration. This gives 10-20% performance gains on
large HTTP/1.1 downloads (on my machine).
Copy link
Member

@bagder bagder left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Slightly less improvement on my machine, but still an improvement.

@bagder bagder closed this in b8e098a Jul 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants