Linux 6.7 MM Brings Performance Optimizations, Better Handling For Unaccepted Memory
Andrew Morton last week sent out all of the memory management "MM" changes for the Linux 6.7 kernel for which there is a lot of code churn.
There are many MM changes this cycle with some of the most notable feature changes being:
- Back in Linux 6.5 support was added for UEFI unaccepted memory support. With Linux 6.7 now there are more kernel improvements to ensure the kernel doesn't accidentally end up using any of the "unaccepted" memory prior to being accepted.
- A fix in the buffer_head code that was causing long stalls under some heavy memory and I/O workloads.
- A significant speed-up for the boot time in cases where "significant amounts of gigantic pages" are being utilized.
- Up to 30% improved performance for accounting kernel memory allocations as measured by a micro-benchmark.
- Improved calculation of memory distances so DAX/KMEM drivers can use High Bandwidth Memory (HBM) in addition to Optane Data Center Persistent Memory Modules (Intel DCPMM).
- Cleanups and an optimization to Linux's core page cache code.
- Accounting support for HugeTLB memory.
- Continued adoption/conversion of folios throughout the kernel.
- Preparations for the new lockless slab shrinking code.
The lengthy list of MM changes in full for Linux 6.7 via this pull.
Andrew Morton also sent in thge non-MM updates for which it's mostly a random collection of minor work.
There are many MM changes this cycle with some of the most notable feature changes being:
- Back in Linux 6.5 support was added for UEFI unaccepted memory support. With Linux 6.7 now there are more kernel improvements to ensure the kernel doesn't accidentally end up using any of the "unaccepted" memory prior to being accepted.
- A fix in the buffer_head code that was causing long stalls under some heavy memory and I/O workloads.
- A significant speed-up for the boot time in cases where "significant amounts of gigantic pages" are being utilized.
- Up to 30% improved performance for accounting kernel memory allocations as measured by a micro-benchmark.
- Improved calculation of memory distances so DAX/KMEM drivers can use High Bandwidth Memory (HBM) in addition to Optane Data Center Persistent Memory Modules (Intel DCPMM).
- Cleanups and an optimization to Linux's core page cache code.
- Accounting support for HugeTLB memory.
- Continued adoption/conversion of folios throughout the kernel.
- Preparations for the new lockless slab shrinking code.
The lengthy list of MM changes in full for Linux 6.7 via this pull.
Andrew Morton also sent in thge non-MM updates for which it's mostly a random collection of minor work.
9 Comments