Page MenuHomeFreeBSD

Implement the Free Memory Fragmentation Index (FMFI) metric
Needs ReviewPublic

Authored by bnovkov on Jun 16 2023, 7:35 AM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Jan 31, 9:43 PM
Unknown Object (File)
Jan 11 2024, 1:04 AM
Unknown Object (File)
Jan 3 2024, 7:36 AM
Unknown Object (File)
Jan 3 2024, 5:09 AM
Unknown Object (File)
Dec 29 2023, 3:13 AM
Unknown Object (File)
Dec 22 2023, 11:31 PM
Unknown Object (File)
Dec 10 2023, 12:18 AM
Unknown Object (File)
Nov 4 2023, 10:35 PM

Details

Reviewers
markj
Summary

This patch adds the Free Memory Fragmentation Index (FMFI) metric to the vm_phys subsystem.

The FMFI metric measures the degree of physical memory fragmentation for a given order by using metadata from the buddy allocator freelists.
Its value ranges from arbitrary negative values up to 1. A negative value implies that there is ample memory to serve an allocation request of the given order.
A value between 0 (no fragmentation) and 1 (highly fragmented) indicates the degree of physical memory fragmentation.

This work was sponsored by the Google Summer of Code program.

Test Plan

This metric is regularly used in academic papers regarding superpage management and is also used in the Linux kernel's memory compaction subsystem.
More information on this metric is available at the following link.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped