Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
128 seems a bit too excessive. If we look at the histogram of maximum sizes we see that 64 is enough to cover most cases (99%). Even 32 we would cover 87% of cases and have an extra allocation for the 13% (larger cases).
I measured it when running
scala3-bootstrapped/compile
after a clean.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@nicolasstucki Nice histogram! I wanted to build one too but gave up eventually. How did you do it?
Do your percentages consider the
loadFactor
of75%
? Should I update theinitialCapacity
to64
?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sbt "clean; scala3-bootstrapped/compile" > sbtOutput.txt
then filter outseen:
from that file and import the numbers in google sheets.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I did not consider the load factor. My percentages only take into account the size of the set. I would go for 64 if we want to minimize those allocations.