NVIDIA Engineer Revives Work On Linux Proactive Memory Compaction
One of the interesting patch series initially published back in 2019 by NVIDIA engineer Nitin Gupta was on proactive memory compaction for the Linux kernel while so far in 2020 it hasn't yet been merged but a fifth revision to the work was published today.
The proactive memory compaction was brought on to address latency issues currently experienced with the kernel's on-demand memory compaction behavior that can happen as a result of requesting a lot of hugepages.
Benchmarks shown by Gupta in the past have for instance shown a Java test setup with transparent huge-pages and requesting tons of huge-pages that the time dropped from 27 minutes to just over 3 minutes. Other benchmark numbers have also been promising out of the proactive memory compaction.
The proactive compaction behavior remains configurable via a new compaction_proactiveness flag for determining how aggressive the compaction should happen in the background. With the v5 patch, the configuration tunable is now exposed via sysctl and besides that are other minor code changes.
More details via the v5 patch message. Hopefully this proactive memory compaction support will see mainline soon, potentially even for Linux 5.8 if this latest round of code review proves fruitful.
The proactive memory compaction was brought on to address latency issues currently experienced with the kernel's on-demand memory compaction behavior that can happen as a result of requesting a lot of hugepages.
Benchmarks shown by Gupta in the past have for instance shown a Java test setup with transparent huge-pages and requesting tons of huge-pages that the time dropped from 27 minutes to just over 3 minutes. Other benchmark numbers have also been promising out of the proactive memory compaction.
The proactive compaction behavior remains configurable via a new compaction_proactiveness flag for determining how aggressive the compaction should happen in the background. With the v5 patch, the configuration tunable is now exposed via sysctl and besides that are other minor code changes.
More details via the v5 patch message. Hopefully this proactive memory compaction support will see mainline soon, potentially even for Linux 5.8 if this latest round of code review proves fruitful.
2 Comments