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

Benchmarks: generate heap profiles #1253

Merged
merged 6 commits into from
Jan 23, 2021
Merged

Benchmarks: generate heap profiles #1253

merged 6 commits into from
Jan 23, 2021

Conversation

pepeiborra
Copy link
Collaborator

@pepeiborra pepeiborra commented Jan 23, 2021

The heap profiles are generated using +RTS -h and rendered using http://hackage.haskell.org/package/eventlog2html
The artefact tree for a given example&experiment looks as follows:

ghcide/bench-results/Cabal-3.0.0.0/upstream/
├── completions_after_edit.benchmark-gcStats
├── completions_after_edit.csv
├── completions_after_edit.diff.svg
├── completions_after_edit.eventlog                # new
├── completions_after_edit.eventlog.html           # new
├── completions_after_edit.hp                      # new
├── completions_after_edit.log
├── completions_after_edit.svg

Other changes:

  • Fix a bug (introduced in Benchmark improvements #1178) affecting the live bytes svg diagrams.
  • Enable Shake parallelism for the benchmark rules (the benchmarks themselves are guarded by a Shake resource so there's only one ghcide process running at a given time)

Copy link
Collaborator

@ndmitchell ndmitchell left a comment

Choose a reason for hiding this comment

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

Sweet!

.github/workflows/bench.yml Show resolved Hide resolved
shake-bench/src/Development/Benchmark/Rules.hs Outdated Show resolved Hide resolved
shake-bench/src/Development/Benchmark/Rules.hs Outdated Show resolved Hide resolved
@pepeiborra pepeiborra added the merge me Label to trigger pull request merge label Jan 23, 2021
@pepeiborra pepeiborra merged commit e0caba5 into master Jan 23, 2021
@wz1000
Copy link
Collaborator

wz1000 commented Jan 23, 2021

Is there a way to view the results recorded by CI? I can't see the eventlog2html output in the CI artifacts.

@pepeiborra
Copy link
Collaborator Author

Oh, I forgot to update the Github action :(

@pepeiborra
Copy link
Collaborator Author

#1254

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merge me Label to trigger pull request merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants