[LSF/MM/BPF TOPIC] Memory fragmentation with large block sizes

Bart Van Assche bvanassche at acm.org
Thu Feb 19 06:53:28 PST 2026


On 2/19/26 1:54 AM, Hannes Reinecke wrote:
> I (together with the Czech Technical University) did some experiments 
> trying to measure memory fragmentation with large block sizes.
> Testbed used was an nvme setup talking to a nvmet storage over
> the network.
> 
> Doing so raised some challenges:
> 
> - How do you _generate_ memory fragmentation? The MM subsystem is
>    precisely geared up to avoid it, so you would need to come up
>    with some idea how to defeat it. With the help from Willy I managed
>    to come up with something, but I really would like to discuss
>    what would be the best option here.
> - What is acceptable memory fragmentation? Are we good enough if the
>    measured fragmentation does not grow during the test runs?
> - Do we have better visibility into memory fragmentation other than
>    just reading /proc/buddyinfo?

The larger the block size, the higher the write amplification (WAF),
isn't it? Why to increase the block size since there is a solution
available that doesn't increase WAF, namely zoned storage?

Additionally, why is contiguous memory required for block sizes
larger than the page size? Does this perhaps come from the VFS layer?
If so, is this something that can be fixed?

Thanks,

Bart.



More information about the Linux-nvme mailing list