MGLRU & Maple Tree Submitted For Linux 6.1
Andrew Morton this afternoon submitted his memory management "MM" related updates for the Linux 6.1 merge window. Most notable with this pull request is the inclusion of Multi-Gen LRU "MGLRU" and the Maple Tree kernel features.
We'll know very soon if Linus Torvalds has any last minute objections, but barring any newfound concerns, MGLRU is set to land for Linux 6.1! MGLRU was included as part of Morton's MM pull request for this Google-developed feature that works to much-improve the Linux kernel's page reclamation code. MGLRU has proven to be able to deliver very nice performance advantages for a variety of workloads especially when under memory pressure.
MGLRU is already used by Google both with Chrome OS and Android to great success and also by various other downstream Linux kernel flavors. Assuming Linus honors the pull request, MGLRU should be one of the best kernel features of 2022.
Andrew Morton commented of the MGLRU patches:
I've actually spotted some workloads that do negatively regress from MGLRU, but Google engineers are looking at them, so hopefully will be figured out soon. In any case I am very excited for MGLRU landing in mainline and from my testing is overall a great addition to the kernel.
The MM pull also includes the Oracle-developed Maple Tree data structure as an overlapping range-based tree for virtual memory addresses. Maple Tree can provide some efficiency improvements.
Other MM material includes some bugs uncovered by the Kernel Memory Sanitizer (KMSAN), enhancements to NUMA balancing memory tiering mode's page promotion code, MEMCG updates, VMA merging improvements. KASAN updates, DAMON clean-ups, and various other low-level kernel work.
The full list of MM patches for the Linux 6.1 merge window can be found via this pull request while awaiting action by Torvalds namely to see whether there are any last minute objections to Maple Tree or MGLRU.
Update: The code has been merged!
We'll know very soon if Linus Torvalds has any last minute objections, but barring any newfound concerns, MGLRU is set to land for Linux 6.1! MGLRU was included as part of Morton's MM pull request for this Google-developed feature that works to much-improve the Linux kernel's page reclamation code. MGLRU has proven to be able to deliver very nice performance advantages for a variety of workloads especially when under memory pressure.
MGLRU is already used by Google both with Chrome OS and Android to great success and also by various other downstream Linux kernel flavors. Assuming Linus honors the pull request, MGLRU should be one of the best kernel features of 2022.
Andrew Morton commented of the MGLRU patches:
Yu Zhao's Multi-Gen LRU patches are here. They've been under test in linux-next for a couple of months without, to my knowledge, any negative reports (or any positive ones, come to that).
I've actually spotted some workloads that do negatively regress from MGLRU, but Google engineers are looking at them, so hopefully will be figured out soon. In any case I am very excited for MGLRU landing in mainline and from my testing is overall a great addition to the kernel.
The MM pull also includes the Oracle-developed Maple Tree data structure as an overlapping range-based tree for virtual memory addresses. Maple Tree can provide some efficiency improvements.
Other MM material includes some bugs uncovered by the Kernel Memory Sanitizer (KMSAN), enhancements to NUMA balancing memory tiering mode's page promotion code, MEMCG updates, VMA merging improvements. KASAN updates, DAMON clean-ups, and various other low-level kernel work.
The full list of MM patches for the Linux 6.1 merge window can be found via this pull request while awaiting action by Torvalds namely to see whether there are any last minute objections to Maple Tree or MGLRU.
Update: The code has been merged!
9 Comments