Affects Version/s: None
Fix Version/s: None
The problem of incremental array growth affects several of our classes:
CharBuf, ByteBuf, BitVector, VArray, and others yet to be submitted. Ideally,
the growth algorithm should...
- Overestimate by enough to prevent pathological reallocation, but not by
so much as to significantly increase overall memory footprint.
- Round up so that allocation requests are multiples of the architecture's
- Grow faster at small sizes.
To apply this logic consistently, we can isolate it in a new function,