-
Notifications
You must be signed in to change notification settings - Fork 993
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
refactor(perf): use libp2p-request-response #3646
Conversation
- Enforces backpressure on stream creation on QUIC - Note that this does not sequentialize stream negotiation as we are using V1Lazy As an aside, with and without `V1Lazy`: ``` [2023-03-20T09:31:21Z INFO perf_client] Starting: single connection requests per second benchmark. [2023-03-20T09:31:28Z INFO perf_client] Finsihed: sent 10000 1 bytes requests with 1 bytes response each within 6.28 s thus 1591.963270172488 req/s. ``` ``` [2023-03-20T09:34:03Z INFO perf_client] Starting: single connection requests per second benchmark. [2023-03-20T09:37:07Z INFO perf_client] Finsihed: sent 10000 1 bytes requests with 1 bytes response each within 183.90 s thus 54.37835611842429 req/s. ```
``` [2023-03-20T10:09:29Z INFO perf_client] Initiating performance tests with /dns4/libp2p-perf.max-inden.de/udp/4001/quic-v1 [2023-03-20T10:09:29Z INFO perf_client] Connection to /dns4/libp2p-perf.max-inden.de/udp/4001/quic-v1 established. [2023-03-20T10:09:29Z INFO perf_client] Start benchmark: single connection single channel throughput [2023-03-20T10:09:41Z INFO perf_client] Finished: sent 10.00 MiB in 7.60 s with 10.53 MiBit/s and received 10.00 MiB in 3.92 s with 20.41 MiBit/s [2023-03-20T10:09:41Z INFO perf_client] Start benchmark: single connection requests per second [2023-03-20T10:09:48Z INFO perf_client] Finished: sent 10000 1 bytes requests with 1 bytes response each within 6.93 s thus 1442.81 req/s ```
Sample output:
|
This pull request has merge conflicts. Could you please resolve them @mxinden? 🙏 |
See libp2p/test-plans#159 for schema discussion.
This pull request has merge conflicts. Could you please resolve them @mxinden? 🙏 |
This pull request has merge conflicts. Could you please resolve them @mxinden? 🙏 |
No longer needed. Output of perf binaries is much smaller now.
@thomaseizinger can you give this pull request a review? Note that with #3990 we can easily do (breaking) changes in the future. Given that and given that it is not a production-environment component, I don't think it requires a thorough review. In my eyes it makes sense to merge at this point in order to not accumulate even more changes into a single pull request. As is, it is a useful component. That said, I do expect more changes to come. |
Makes it easier to compare with http performance
Switched from Noise to TLS. That was as simple as going from |
Now that libp2p/rust-libp2p#3646 is merged.
It is coming together! |
Description
Rewrite
libp2p-perf
protocol usinglibp2p-request-response
. Additionally adjust to latest conventions, e.g. the final JSON output.Notes & open questions
Change checklist