Commit Graph

182 Commits

Author SHA1 Message Date
Marco Munizaga 8834ac1555
Add go-libp2p v0.29.0 (#234) 2023-07-19 09:37:06 -07:00
github-actions[bot] 3132bf12b3 chore: update the link to the interop dashboard [skip ci] 2023-07-14 21:28:51 +00:00
Marco Munizaga 1ebb8b505c
multidim-interop: Prune older versions (#233)
* Remove older versions

* Remove older chromium versions
2023-07-14 14:01:52 -07:00
github-actions[bot] 1191bb5f13 chore: update the link to the interop dashboard [skip ci] 2023-07-14 19:32:58 +00:00
Marco Munizaga 4bd0f9992f
Revert "Install playwright in the base image so it is cached (#226)" (#231)
* Revert "Install playwright in the base image so it is cached (#226)"

This reverts commit d21d042ddd.

* Add comment
2023-07-14 11:48:08 -07:00
github-actions[bot] e69e155fe9 chore: update the link to the interop dashboard [skip ci] 2023-07-14 17:46:59 +00:00
Marco Munizaga cbca2c06de
multidim-interop: Update rust-libp2p .gitignore with chromium-image.json (#232)
* .gitignore chromium-image.json

* Assert that git tree is clean
2023-07-14 10:00:35 -07:00
github-actions[bot] 00170f36e3 chore: update the link to the interop dashboard [skip ci] 2023-07-13 20:01:43 +00:00
Marco Munizaga fff587f66f
More resilient stdout parsing of dialer stdout (#224)
* More resilient stdout parsing of dialer stdout

* Add another test case

* Handle JS cases where timings aren't the only thing on stdout
2023-07-13 12:14:43 -07:00
github-actions[bot] f954fd8522 chore: update the link to the interop dashboard [skip ci] 2023-07-11 00:35:27 +00:00
Marco Munizaga 81e78aed34
multidim-interop: Add name ignore option (#225)
* Add name ignore option

* Update multidim-interop/testplans.ts

Co-authored-by: Thomas Eizinger <thomas@eizinger.io>

---------

Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
2023-07-10 16:49:46 -07:00
github-actions[bot] ba8169f189 chore: update the link to the interop dashboard [skip ci] 2023-07-10 03:52:51 +00:00
Max Inden d7391f13e1
fix(perf): increase iterations (#213)
- Increase upload/download benchmark iterations. Still conservative value of `10` due to slow rust-libp2p tcp. See https://github.com/libp2p/rust-yamux/issues/162. Note however that this is 10x an upload of 100MB.
- Increase latency benchmark iterations.
2023-07-10 05:06:51 +02:00
github-actions[bot] 289e90b80a chore: update the link to the interop dashboard [skip ci] 2023-07-08 05:01:33 +00:00
Marco Munizaga d21d042ddd
Install playwright in the base image so it is cached (#226) 2023-07-07 21:15:16 -07:00
github-actions[bot] 81b339dd70 chore: update the link to the interop dashboard [skip ci] 2023-07-07 23:25:17 +00:00
Piotr Galar 35ab35b1a4
feat: run multidim-interop.yml on self-hosted runners (#154)
* feat: run multidim-interop.yml on self-hosted runners

* feat: make worker count configurable

* feat: enable docker.io proxy on self-hosted runners

* chore: provide s3 creds through env

* Try 4 workers

* ci: run-multidim-interop on 16 workers

* chore: change self hosted labels

* Update .github/workflows/multidim-interop.yml

Co-authored-by: Piotr Galar <piotr.galar@gmail.com>

* Use self-hosted runners for now

This reverts commit 7e868ea6b486798c03ad5b88f14c1a78e51e7c26.

---------

Co-authored-by: Marco Munizaga <git@marcopolo.io>
Co-authored-by: Marco Munizaga <marco@marcopolo.io>
2023-07-07 15:41:38 -07:00
github-actions[bot] 22c7e58513 chore: update the link to the interop dashboard [skip ci] 2023-07-07 13:07:57 +00:00
Max Inden ce83afc1b0
feat(interop): add rust-libp2p chromium WASM WebTransport (#217)
Introduced in rust-libp2p with https://github.com/libp2p/rust-libp2p/pull/4015.
2023-07-07 14:37:57 +02:00
Max Inden 465065cff8
fix(interop): use standaloneTransports as string instead of param (#219)
* fix(interop): use standaloneTransports as string instead of param

When generating the test specification (docker-compose file) we enumerate all
transport permutations. While some of our transports need to be upgraded (e.g.
TCP and WS) some don't (e.g. QUIC or WebRTC). To differentiate the two we
execute two SQL queries (`queryResults` and `standaloneTransportsQueryResults`),
each with either a `AND _ NOT IN` or `AND _ IN`.

The previous implementation would use `node-sqlite3` query parameters (see
https://github.com/TryGhost/node-sqlite3/wiki/API#runsql--param---callback) to
provide the list of transport protocols that don't need upgrading as an array.

The problem is that `node-sqlite3` does not support arrays as query parameters,
see https://github.com/TryGhost/node-sqlite3/issues/762.

This commit uses string interpolation instead to inject the list of standalone
transports into the SQL queries.

* Nit

---------

Co-authored-by: Marco Munizaga <git@marcopolo.io>
Co-authored-by: Marco Munizaga <marco@marcopolo.io>
2023-07-05 16:57:30 -07:00
Marco Munizaga ec32d36cab
Add debug logging if JSON parse fails (#223) 2023-07-05 18:59:03 +00:00
github-actions[bot] 9277cff3bd chore: update the link to the interop dashboard [skip ci] 2023-07-05 06:34:30 +00:00
github-actions[bot] bd57868279 chore: update the link to the interop dashboard [skip ci] 2023-07-05 05:07:51 +00:00
Max Inden acea8b5e0c
fix(perf): increase MAX_AGE_MINUTES to 120 (#215)
- When experimenting with increasing iterations, instances are taken down
prematurely. See e.g. https://github.com/libp2p/test-plans/actions/runs/5418669631/jobs/9850992882

- When benchmarking from a local developer machine, experimenting for longer is useful.

- The AWS Lambda is only a safety net machanism. In the rare case where we
miss to clean up, running the machines for <1h or 2h doesn't matter cost wise.
2023-07-05 07:06:39 +02:00
Piotr Galar 1b187a379c
chore: move perf cleanup test code to a test directory (#216) 2023-07-05 05:46:58 +02:00
github-actions[bot] 4fd3b087d1 chore: update the link to the interop dashboard [skip ci] 2023-06-30 20:32:36 +00:00
github-actions[bot] ed962f61bb chore: update the link to the interop dashboard [skip ci] 2023-06-30 20:23:31 +00:00
Marco Munizaga a4e5381432
Remove often wrong patch version from id (#211) 2023-06-30 12:11:10 -07:00
github-actions[bot] 6fecac3b91 chore: update the link to the interop dashboard [skip ci] 2023-06-30 03:59:56 +00:00
Max Inden 0df7762587
chore(perf): document GitHub action usage (#212) 2023-06-30 04:25:05 +02:00
github-actions[bot] 7c43c940ce chore: update the link to the interop dashboard [skip ci] 2023-06-29 23:33:52 +00:00
Marco Munizaga 95f1277fed
Squash queries down to just 2 (#210) 2023-06-29 15:16:32 -07:00
github-actions[bot] 7268d72a65 chore: update the link to the interop dashboard [skip ci] 2023-06-29 21:04:08 +00:00
Marco Munizaga fd719f534e
Less error-prone way of defining image IDs and other quality of life improvements (#208)
* Make canonicalImageIDLookup default

* Fix browser containerImageID
2023-06-29 12:52:13 -07:00
GitHub 42179a6721 chore: Update .github/workflows/stale.yml [skip ci] 2023-06-28 08:54:37 +00:00
github-actions[bot] 79c94da915 chore: update the link to the interop dashboard [skip ci] 2023-06-27 02:45:59 +00:00
Max Inden 67960902e8
feat(perf/go-libp2p): add v0.28.1 (#209) 2023-06-27 03:24:19 +02:00
github-actions[bot] d18494ea9a chore: update the link to the interop dashboard [skip ci] 2023-06-26 10:07:28 +00:00
github-actions[bot] 4ba32fe7db chore: update the link to the interop dashboard [skip ci] 2023-06-26 09:49:53 +00:00
Max Inden cdf7820037
refactor(perf): expose single latency measurement (#207) 2023-06-26 10:35:44 +02:00
Max Inden 81b6e7c370
feat(interop): add rust-libp2p v0.52 (#206)
See https://github.com/libp2p/rust-libp2p/releases/tag/libp2p-v0.52.0

Co-authored-by: Marco Munizaga <git@marcopolo.io>
2023-06-26 10:33:06 +02:00
github-actions[bot] 3b8e62b74b chore: update the link to the interop dashboard [skip ci] 2023-06-23 03:06:48 +00:00
Max Inden b1cfea4f52
fix(perf/go-libp2p): close write after sending in client (#205)
Follow up to https://github.com/libp2p/test-plans/pull/184.
2023-06-23 03:43:06 +02:00
github-actions[bot] 19d5ac0619 chore: update the link to the interop dashboard [skip ci] 2023-06-22 13:55:01 +00:00
github-actions[bot] f27d0445e6 chore: update the link to the interop dashboard [skip ci] 2023-06-22 13:14:05 +00:00
Max Inden 2ddea6a139
fix(perf/https): request downloadBytes instead of uploadBytes (#203) 2023-06-22 14:49:42 +02:00
Max Inden 53ff8b5db1
feat(perf): add (automation, provision, build, run) tooling (#184)
This project includes the following components:

- `terraform/`: a Terraform scripts to provision infrastructure
- `impl/`: implementations of the [libp2p perf
  protocol](https://github.com/libp2p/specs/blob/master/perf/perf.md) running on
  top of e.g. go-libp2p, rust-libp2p or Go's std-library https stack
- `runner/`: a set of scripts building and running the above implementations on
  the above infrastructure, reporting the results in `benchmark-results.json`

Benchmark results can be visualized with
https://observablehq.com/@mxinden-workspace/libp2p-performance-dashboard.

Co-authored-by: Marco Munizaga <git@marcopolo.io>
Co-authored-by: Marten Seemann <martenseemann@gmail.com>
Co-authored-by: Piotr Galar <piotr.galar@gmail.com>
2023-06-22 13:54:09 +02:00
github-actions[bot] 3c7d726d4a chore: update the link to the interop dashboard [skip ci] 2023-06-20 19:01:51 +00:00
Marco Munizaga af82e8fc5f
Rename `build-without-cache` to `build-without-secrets` (#199)
This workflow uses the public cache. It just can't update it. The goal of this workflow is to see how public forks behave. The name is a vestige from when we didn't have a public cache. But the original goal was always to see how public forks and external repos would behave.
2023-06-20 10:55:43 -07:00
github-actions[bot] 6e0b215ce4 chore: update the link to the interop dashboard [skip ci] 2023-06-20 13:26:45 +00:00