perf: remove useless reserve #2457
Open
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.
After looking at flamegraphs for other reasons, some
reserves took a surprisingly visible portion of the graph (on the order of the %). Thosereservedon't make sense (they unconditionally reserve more space for cases where it's not clear what will happen, which is a waste if we don't need it, and in the event where we actually extend the vector, the default behavior should only resize once in the vast majority of cases).The most surprising effect is on memory though. This seems to have a large impact, with overall 22% less peak memory consumption on the OPL benchmark, and 27% less leaked memory in total.