Linux developer SeongJae Park has posted a set of patches for the Linux kernel’s wonderful DAMON code to provide for self-tuned memory tiering that “just works” and is racking up some nice performance wins.
Up to now memory tiering with DAMON requires manual tuning and other controls. But these new patches show much promise around self-tuned hotness and coldness thresholds and the possibility of obtaining nice improvements with little work on the part of the server administrators. Certainly a nice approach and jives with my fondness for loving auto-tuning or at lease sensible defaults:
“Utilizing DAMON for memory tiering usually requires manual tuning and tedious controls. Let it be able to self-tune hotness and coldness thresholds for promotion and demotion itself aiming high utilization of high memory tiers, by introducing new DAMOS quota goal metrics representing the utilization and free space ratios of specific NUMA nodes. Further make it just works with minimum user controls such as adding a single boot time kernel commandline parameter or single command on runtime, by introducing a DAMON kernel module that runs the DAMON-based memory tiering.”
This memory tiering is important for modern Linux servers making use of CXL memory or similar.
The results from this initial auto/self-tuning is looking quite positive:
“In short, under a setup that requires fast and frequent promotions, self-tuning DAMON-based memory tiering’s hot pages promotion improves performance about 4.42 %. We believe this shows self-tuned DAMON-based promotion’s effectiveness and a practical level of DAMON monitoring results accuracy. Meanwhile, NUMAB-2’s hot pages promotion degrades the performance about 7.34 %. We suspect the degradation is mostly due to NUMAB-2’s synchronous nature that can block the application’s progress, which highlights advantage of DAMON-based solution’s asynchronous nature.”
Being able to improve the performance with self-tuning by over 4% is a nice win for starting out the development of this new code.
Those interested can learn more via this patch series.