-
Notifications
You must be signed in to change notification settings - Fork 8
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
Add benchmarks to CI #48
Comments
Just thinking about this again... What if the benchmark look at some specific number like "300ms" as an example... We say the router should ALWAYS be less than this number, if it is, then we exit with 0 or whatever the 👍 code is. If it's more, than we exit with an error code.
See, in this case, Crystal 1.0 seems to make the router just a little slower, and in one case, it would have failed to say "Hey, maybe we should see what's going on". As where Crystal 0.36.1 on average is about 10ms faster... (NOTE: macOS does a binary check the first time you run one, so you need to run a few times to get a better sense of time) |
My ideal workflow is that a github action would run a benchmark and comment on the PR "The benchmark ran in X, it's X% faster/slower than the master branch" |
I like that idea too! |
I'm not sure how we can do this, but there's a
src/benchmark.cr
file. We should first, make sure this file is updated to fully benchmark all the different parts of the shard, and second, figure out a way to build a release version and run it. My thought is by adding that in, we can get a quick sense of a PR killing performance if the benchmark runs longer than X or something... (half baked idea)The text was updated successfully, but these errors were encountered: