Hi Matthew,
On 8/6/2026 9:09 PM, Matthew Auld wrote:
On 31/07/2026 08:07, Arunpravin Paneer Selvam wrote:
Add gpu_test_buddy_dirty_tracker_performance to demonstrate the key
advantage of the decoupled dirty-tracker design over the old dual-tree
/ force_merge approach.
The test runs two scenarios on a 4 GiB pool after alternating
clear/dirty fragmentation at 4 KiB granularity:
1. Contiguous 4 GiB alloc: the old design requires __force_merge()
to rebuild max_order from scratch; the new design coalesces during
free() so the alloc is O(log N).
old (force_merge) - 71 ms
dirty tracker design - 17 ms
2. Repeated 256 KiB alloc throughput: the old design pays
__force_merge() on every alloc; the new design does not.
old (force_merge) - 95 ms
dirty tracker design - 24 ms
Assisted-by: Claude:claude-opus-4-8
Cc: Matthew Auld <[email protected]>
Cc: Christian König <[email protected]>
Signed-off-by: Arunpravin Paneer Selvam
<[email protected]>
Reviewed-by: Matthew Auld <[email protected]>
Just to clarify, is this RB for the main buddy allocator changes as well?
Regards,
Arun.