fix: Reserve fixed-size-list child capacity - #28980
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #28980 +/- ##
==========================================
- Coverage 81.58% 81.33% -0.26%
==========================================
Files 1890 1886 -4
Lines 268762 267093 -1669
Branches 3264 3061 -203
==========================================
- Hits 219280 217246 -2034
- Misses 48637 49069 +432
+ Partials 845 778 -67 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
ffab9b6 to
c4efe4f
Compare
|
To test broader impact, I isolated generic construction path I directly compare Revisions: main Arrows in table mean main → PR.
Corrected reservation eliminates every observed child-buffer growth reallocation for widths above 1. Most cases reach same capacity without intermediate growth, but width 768 also reduces final capacity from 199.231% to 100% of required payload. |
Closes #28872
More measurements are underway, but PR is ready for review. I realized it has a bigger blast radius than just arr.dot.Added comment with broader impact test.
Benchmark used arr.dot streaming broadcast, width 768, 16,776,960 products, and validated native/composed equality.
Revisions: main
a6782fa065, PR56ddea3e98Early numbers:
Post-fix, native arr.dot allocates less heap than composed, and that saving grows with thread count.