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

ci: enable report benchmark diff on a PR basis #124

Merged
merged 1 commit into from
Sep 7, 2022

Conversation

v1v
Copy link
Member

@v1v v1v commented Aug 31, 2022

Notify go benchmark report on a GitHub comment

similar to elastic/apm-server#8471

See #124 (comment)

image

@v1v v1v self-assigned this Aug 31, 2022
@elasticmachine
Copy link
Collaborator

💚 Build Succeeded

the below badges are clickable and redirect to their specific view in the CI or DOCS
Pipeline View Test View Changes Artifacts preview preview

Expand to view the summary

Build stats

  • Start Time: 2022-08-31T13:48:51.407+0000

  • Duration: 3 min 0 sec

Test stats 🧪

Test Results
Failed 0
Passed 397
Skipped 40
Total 437

@elasticmachine
Copy link
Collaborator

📚 Go benchmark report

Diff with the main branch

name                                  old time/op    new time/op    delta
pkg:github.com/elastic/go-libaudit/v2/aucoalesce goos:linux goarch:amd64
pkg:github.com/elastic/go-libaudit/v2/auparse goos:linux goarch:amd64
ExtractKeyValuePairs/short_message-8    2.33µs ± 2%    2.44µs ± 4%  +4.65%  (p=0.016 n=5+5)

name                                  old alloc/op   new alloc/op   delta
pkg:github.com/elastic/go-libaudit/v2/aucoalesce goos:linux goarch:amd64
pkg:github.com/elastic/go-libaudit/v2/auparse goos:linux goarch:amd64

name                                  old allocs/op  new allocs/op  delta
pkg:github.com/elastic/go-libaudit/v2/aucoalesce goos:linux goarch:amd64
pkg:github.com/elastic/go-libaudit/v2/auparse goos:linux goarch:amd64

report generated with https://pkg.go.dev/golang.org/x/perf/cmd/benchstat

@v1v v1v requested review from andrewkroh and a team August 31, 2022 13:55
Copy link

@cachedout cachedout left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems fine to enable but the output doesn't seem very useful at present. Perhaps in the future additional benchmarks will be added?

@v1v
Copy link
Member Author

v1v commented Sep 5, 2022

Seems fine to enable but the output doesn't seem very useful at present. Perhaps in the future additional benchmarks will be added?

Maybe, I don't know much about this project.

Short story, I added this particular automation as I saw #116 (review) and realise they could benefit from those benchmarks if they were running on the CI, since it was already done for some other Golang projects, it was easy to enable it :)

Additionally, this PR helps to ship the benchmark to the Cloud Benchmark Cluster, similarly done for other microbenchamrking in the APM Agents. Teams can then create their own visualisation in Kibana and reporting.

@v1v v1v merged commit 6fba496 into elastic:main Sep 7, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants