ePrints@IIScePrints@IISc Home | About | Browse | Latest Additions | Advanced Search | Contact | Help

Towards Practical Page Placement for a Green Memory Manager

Panwar, Ashish and Gopinath, K (2015) Towards Practical Page Placement for a Green Memory Manager. In: 22nd International Conference on High Performance Computing, DEC 16-19, 2015, Bengaluru, INDIA, pp. 155-164.

[img] PDF
IEEE_22nd_Int_Con_Hig_Per_Com_155_2015.pdf - Published Version
Restricted to Registered users only

Download (282kB) | Request a copy
Official URL: http://dx.doi.org/10.1109/HiPC.2015.42

Abstract

Increased performance demand of modern applications has resulted in large memory modules and higher performance processors in computing systems. Power consumption becomes an important aspect when these resources go underutilized in a running system; e.g. during idle periods or lighter workloads. CPUs have come a long way in optimizing away the unnecessary power consumption in both hardware and software for such scenarios through solutions like Dynamic Voltage/Frequency Scaling. However, support for memory power optimization is still missing in modern operating systems despite hardware support being available for many years in the form of multiple power states and techniques like Partial Array Self-Refresh. In this work, we explore the behavior of Linux memory manager and report that even at 10% of memory utilization, there are references to all physical memory banks in a long running system due to random page allocation and ignorance of memory bank boundaries. These references can be consolidated to a subset of memory banks by using page migration techniques. Unfortunately, migration of large contiguous blocks is often restricted due to the presence of unmovable pages primarily owned by kernel. We provide some techniques for utilizing the hardware facilitated Partial Array Self-Refresh by introducing bank awareness in the existing buddy allocation framework of Linux memory manager as well as for improving the page migration support of large contiguous blocks. Through a set of simple changes in Linux VM, we have been able to reduce the number of referenced memory banks significantly. Memory-hotplug framework, which relies on page migration of large contiguous blocks, also shows significant improvement in terms of number of removable memory sections. Benchmark results show no performance degradation in the modified kernel which makes the proposed solution desirable.

Item Type: Conference Proceedings
Additional Information: Copy right for this article belongs to the IEEE, 345 E 47TH ST, NEW YORK, NY 10017 USA
Department/Centre: Division of Electrical Sciences > Computer Science & Automation
Date Deposited: 08 Oct 2016 06:28
Last Modified: 08 Oct 2016 06:28
URI: http://eprints.iisc.ac.in/id/eprint/54750

Actions (login required)

View Item View Item