-
Notifications
You must be signed in to change notification settings - Fork 3.8k
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 benchmarks for queries #13605
Comments
Love this! This will give us a good way to measure the baseline and any changes or improvements. I propose we have benchmarks for the following queries:
We can use https://quicksync.io/networks/cosmos.html to get data directories to feed into the app |
Just want to node that, in order for benchmarks like these to produce results that are reliably reproducible and comparable, it's important that the state they operate on is committed to version control. A good litmus test: |
We're not going to commit the state to version control. The state we're benchmarking on can range from GBs to TBs. What we will do instead if post the results along with the profiles and reproduction steps (including hashes of state files). However, we can include a script that automates all of this. |
Exactly my point — benchmarks are meaningful when they exercise a representative, well-defined, and ultimately small sample of a codepath, so that Should definitely do a test like this! But it'd be a performance soak test or something. Different class of thing. Happy to talk more about it if there's interest. |
The benchmarks on these varying sample sizes will give us insights into the major bottlenecks. As we discover those, we'll continue to refine existing and introduce new benchmarks into those bottleneck paths to get better understanding. So having these benchmarks on large samples will give us valuable insights. |
If you mean a benchmark in a broader sense, and not a |
I do mean |
So |
We will find out 😉 Thanks for your tremendous valuable input as always 🙏 |
I had posted this in the wrong place
The zip file contains both memory and cpu profiles |
And here we have the results of the same queries but through the HTTP interface: https://drive.google.com/file/d/1O1AB-rM095zj9to3F05M2qlhqbJ3I7PJ/view?usp=share_link The .bin file is a result from vegeta. |
Summary
Add benchmarks that run queries against a pre-defined data directory in order to know wether a PR results in an improvement or deterioration in performance.
Problem Definition
Currently, in many cases we don't have any metrics to understand the impact of merging a PR.
Proposal
Create a series of benchmarks like this:
Proposed by @alexanderbez
The text was updated successfully, but these errors were encountered: