One of the areas of hardware power management that can yield a surprising amount of power-savings but is often overlooked comes down to the system memory. Fortunately, new Linux kernel patches continue to be written for improving the Linux kernel RAM power management.
On modern hardware with DDR3 and similar, there's power management functionality for putting unused DIMMs into a low-power state when the RAM hasn't been accessed for a period of time. While this is a hardware feature, with the operating system being made aware of such information, better decisions could be made by the kernel and in particular the memory management subsystem, e.g. first touching RAM that is actively being used rather than storing data on a DIMM currently in a low-power state. Other benefits can also come from making the kernel and memory subsystem power-aware.
With ACPI 5.0, the memory power information can be exposed to the operating system in a standardized way. In terms of the quantitative benefit to making the memory sub-system power-aware, Srivatsa Bhat shared, that a 2GB Samsung Exynos ARM development board was able to save up to 6% of the total system power draw by making its MM subsystem power-aware. Greater power-savings are expected on systems with larger memory capacities/DIMMs and making better memory management design choices.
Published on Tuesday were new memory power management patches
. The new (v2) patches consist of 15 patches that implement a "sorted buddy" allocator for attempting to reduce the number of active memory regions/DIMMs to benefit memory power savings. Hopefully this power-savings patch-set or a similar system memory power-dropping approach will be merged into the Linux kernel for an upcoming release.