On Sunday, 9 August 2020 at 12:37:06 UTC, Steven Schveighoffer wrote:
On 8/9/20 8:09 AM, Bruce Carneal wrote:
[...]

All blocks in the GC that are more than 16 bytes are aligned by 32 bytes. You shouldn't have any 16 byte blocks here, because each element is 32 bytes long.

However, if your block grows to a page size, the alignment will be 16 bytes off (due to the metadata stored at the front of the block).

A page size is 4096 bytes. So anything larger than 2048 will require a page-sized block or larger.

I would guess that once your array gets longer than.... 63 elements, it's always misaligned?

Quality sleuthing Steve. The program says it found misalignments with 37 out of 100 attempts of length [1..100].

Reply via email to