SC21 Proceedings

The International Conference for High Performance Computing, Networking, Storage, and Analysis

Cuttlefish: Library for Achieving Energy Efficiency in Multicore Parallel Programs


Authors: Sunil Kumar, Akshat Gupta, and Vivek Kumar (Indraprastha Institute of Information Technology (IIIT), Delhi) and Sridutt Bhalachandra (Lawrence Berkeley National Laboratory (LBNL))

Abstract: A low-cap power budget is challenging for exascale computing. Dynamic Voltage and Frequency Scaling (DVFS) and Uncore Frequency Scaling (UFS) are the two widely used techniques for limiting the HPC application’s energy footprint. However, existing approaches fail to provide a unified solution that can work with different types of parallel programming models and applications.

This paper proposes Cuttlefish, a programming model oblivious C/C++ library for achieving energy efficiency in multicore parallel programs running over Intel processors. An online profiler periodically profiles model-specific registers to discover a running application’s memory access pattern. Using a combination of DVFS and UFS, Cuttlefish then dynamically adapts the processor’s core and uncore frequencies, thereby improving its energy efficiency. The evaluation on a 20-core Intel Xeon processor using a set of widely used OpenMP benchmarks, consisting of several irregular-tasking and work-sharing pragmas, achieves geometric mean energy savings of 19.4% with a 3.6% slowdown.





Back to Technical Papers Archive Listing