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

Future-proof Benchmarking ⏱ #63

Open
12 of 26 tasks
p-shahi opened this issue Oct 7, 2022 · 4 comments
Open
12 of 26 tasks

Future-proof Benchmarking ⏱ #63

p-shahi opened this issue Oct 7, 2022 · 4 comments
Labels

Comments

@p-shahi
Copy link
Member

p-shahi commented Oct 7, 2022

eta: 2023Q2

@p-shahi p-shahi transferred this issue from libp2p/go-libp2p Oct 20, 2022
@p-shahi p-shahi changed the title F. ⏱ Future-proof Benchmarking C. ⏱ Future-proof Benchmarking Oct 20, 2022
@p-shahi p-shahi pinned this issue Mar 17, 2023
@BigLep
Copy link
Contributor

BigLep commented May 19, 2023

@mxinden : I know you're doing blog drafting at https://observablehq.com/@mxinden-workspace/libp2p-perf - thanks!

I did leave some comments inline.

A couple of general things that came to mind while looking at it:

  1. Is this just where we're drafting, or something we expect to point users to?
  2. If pointing users to it, can we create a libp2p Observable namespace?
  3. What is going to be the presence on the libp2p blog about this?

(no pressure to respond now - I don't mean to be catching you in-progress. If this has been though through and you just haven't gotten to any of this yet, that is fine. I am just leaving notes now while it's coming to mind.)

@p-shahi p-shahi changed the title C. ⏱ Future-proof Benchmarking Future-proof Benchmarking ⏱ Jun 14, 2023
@mxinden
Copy link
Member

mxinden commented Jun 22, 2023

Status Update

#184 and thus a first iteration of the libp2p performance benchmark setup is merged. Follow-up / future work in tracked in the description of this issue.

@mxinden
Copy link
Member

mxinden commented Jun 23, 2023

Crossposting a Slack message here, for those following through GitHub only.

First iteration of the libp2p performance benchmarking setup merged

More specifically #184.

Let's try it out. We recently released a new version of rust-libp2p, v0.52.0. Now we can add it to the benchmarking setup, see how well it performs.

  1. Create a pull request against libp2p/test-plans adding the new version fix(perf/rust-libp2p): update to latest v0.52.0 release #202. (Note that in this particular case we are updating an existing version, as we have been already testing a pre-release of v0.52.0.)
  2. Trigger the libp2p perf test GitHub workflow for the branch of the pull request https://github.com/libp2p/test-plans/actions/workflows/perf.yml
  3. Follow the workflow run, which eventually pushes the benchmark results to the branch https://github.com/libp2p/test-plans/actions/runs/5351995316/jobs/9706612810
  4. See the new commit on your pull request fix(perf/rust-libp2p): update to latest v0.52.0 release #202 b94960f
  5. Visualize the benchmark results via our ObservableHQ dashboard. Just make sure to choose the right branch, in this case perf-rust-libp2p-v0.52 in the Branch input https://observablehq.com/@mxinden-workspace/libp2p-performance-dashboard

Note that this is the first iteration only. There are lots of follow-ups, especially around the dashboard. Future work tracked on #63.

Thanks to Marco, Piotr and Marten for all the help on the project!

https://filecoinproject.slack.com/archives/C03K82MU486/p1687492998525109

@mxinden
Copy link
Member

mxinden commented Aug 1, 2023

Status Update

ideally mirror advanced filtering in the URL for better sharing

You can now embed the repository and branch of the benchmark data in the dashboard URL. For example the dashboard link below displays the benchmarking data of #241.

https://observablehq.com/@libp2p-workspace/performance-dashboard?branch=perf-iperf-tcp

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants