-
Notifications
You must be signed in to change notification settings - Fork 43
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
Create test to show libp2p's performance compared to http #27
Comments
@marten-seemann : FYI that I created this issue. Please adjust if anything is off. (For context this came out of a private FIL Slack conversation: https://filecoinproject.slack.com/archives/C03HQ6C0TFT/p1657643516791279 . This conversation didn't need to be private, and any more correspondence will be public and can then be linked to here.) (Public thread in #libp2p-implementers: https://filecoinproject.slack.com/archives/C03K82MU486/p1658794025325099 ) |
This mostly looks good.
Yes, but we'll probably want to end up with something that doesn't pull in dependencies from outside of libp2p. Most importantly, our test will not exercise graphsync.
We'll use TCP instead of HTTP, for multiple reasons
We should also benchmark mplex, given that it's still widely used. No expectation of good performance here, but it would be nice to generate the numbers nevertheless.
This is a worthwhile change, but there's probably little value in running transport performance tests locally to begin with. |
We don't have a canoncial spot for this work stream yet, but dumping in some more recent notes: What is performanceAs reminded by Marten, whenever we talk about performance, we need to be clear and educating about it:
What this should look likeMarco wrote some thoughts in a wip branch in testplans: https://github.com/libp2p/test-plans/blob/marco/perf/perf-dashboard/README.md Before we start doing coding, I want to make sure we sketch the end results. Similar how the resulting interop test matrix (example) gave the interoperability project focus, I want to make sure we have the end state sketched out for the performance benchmarks. |
Done Criteria
We have benchmarks that shows the performance of libp2p using various transports/muxers in real world conditions compared to something standard in the web2 world like HTTP.
Why Important
Questions come in on, "why use libp2p and protocols build on top instead of something like http? Isn't http faster?" Ideally we should have data showing where libp2p transports/muxers stand.
User/Customer
Developers determining whether libp2p will be placing performance overhead, which can affect their decision to adopt libp2p as a whole.
Notes
remote:docker
andremote:exec
runners testground/testground#1392 is needed for this.The text was updated successfully, but these errors were encountered: