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

Do not listen to old UDP prot_listener #1708

Merged

Conversation

davidBar-On
Copy link
Contributor

  • Version of iperf3 (or development branch, such as master or
    3.1-STABLE) to which this pull request applies:
    master

  • Issues fixed (if any): none

  • Brief description of code changes (suitable for use as a commit message):

Clear old UDP prot_listener from read_set, as currently the server's select() always return when data (that is relevant only to the worker thread) is received. This makes the main thread consume a lot of unnecessary CPU, which reduces the total throughput - especially when only one stream is used.

In my single machine environment, with the this fix the throughput is increased by about 40% for one stream test.

Copy link
Contributor

@bmah888 bmah888 left a comment

Choose a reason for hiding this comment

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

Thanks for the pull request! This change looks good, approved. I had mixed results trying to reproduce the performance improvements you saw, but I think this PR makes the functionality of the program more correct regardless.

@bmah888 bmah888 merged commit ed66f42 into esnet:master Jul 12, 2024
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants