Carrier free blocks - are less beneficial for fragmentation?

I am looking at allocation information in an application. I made a change to not flatten a list of (largeish) binaries into a single very large binary. I observed that before that change there are ~14k-16k free blocks of size 4K, and various other block sizes are in the low thousands to hundreds, sustained through the duration of work. After the change the number of 4K sized blocks are reduced by an order of magnitude, to around 1500-2000. They’re now more in-line with other block sizes.

My question is if this a ‘desirable’ effect, are less free blocks of this size generally beneficial for fragmentation or is it more benign?

1 Like