Skip to content

Disable Nagle on TCP socket: too slow for interactive #125

New issue

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

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

Already on GitHub? # to your account

Merged
merged 1 commit into from
Oct 25, 2016
Merged

Disable Nagle on TCP socket: too slow for interactive #125

merged 1 commit into from
Oct 25, 2016

Conversation

muggenhor
Copy link
Contributor

@muggenhor muggenhor commented Oct 25, 2016

The wire-protocol is latency-bound, not bandwidth-constrained. So disable the Nagle algorithm to prevent large delays from hurting our performance too much.

This about divides my runtime in half.

NOTE: Considering that we are implementing a request-reply protocol it might be possible to improve performance without disabling the Nagle algorithm. E.g. by taking control over buffering ourselves instead of leaving it up to the iostream class.

The wire-protocol is latency-bound, not bandwidth-constrained. So
disable the Nagle algorithm to prevent large delays from hurting our
performance too much.

NOTE: Considering that we are implementing a request-reply protocol it
might be possible to improve performance without disabling the Nagle
algorithm. E.g. by taking control over buffering ourselves instead of
leaving it up to the iostream class.
Copy link
Member

@paoloambrosio paoloambrosio left a comment

Choose a reason for hiding this comment

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

Agree. Thought we were disabling Nagle already.

paoloambrosio added a commit to paoloambrosio/cucumber-cpp that referenced this pull request Oct 25, 2016
@paoloambrosio paoloambrosio merged commit 67b3f89 into cucumber:master Oct 25, 2016
@muggenhor muggenhor deleted the no-nagle branch October 25, 2016 20:51
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants