-
Notifications
You must be signed in to change notification settings - Fork 13.1k
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
Benchmark single-threaded, non-blocking TCP performance #6166
Comments
Some benchmarks above, but need to do more. Not a blocker for 0.7 |
No progress on this, I assume? What is the best way to benchmark network performance for a library? |
Today I toyed around a bit, and I just wrote some simple programs that was just a server sending a client a page of 0s at a time (continually). Rust averaged ~750MB/s while Go averaged ~530MB/s. I didn't check much else, but @thestinger got some numbers that indicated that C was almost 2x faster than Rust. |
The performance gap doesn't seem incredibly important since it's very unrealistic that you'll actually need >2GiB/s bandwidth from a single thread. It was spending >70% of the time in an internal kernel copying routine at that point. |
Rust doesn't have any truly non-blocking / AIO APIs, and #17325 means that something else needs to be written before there's anything to benchmark in the standard libraries. |
Suggest a compatible shell for setup-toolchain.sh setup-toolchain.sh uses "[[" which is a bash builtin, but the guide suggests running it with sh. On Ubuntu, /bin/sh points to dash and running the script fails. --- *Please keep the line below* changelog: none
After #6165, make some benchmarks to establish a networking performance baseline as we continue building out the parallel task scheduler.
The text was updated successfully, but these errors were encountered: