Font Size: a A A

Energy-efficient runtime systems

Posted on:2017-11-04Degree:Ph.DType:Dissertation
University:State University of New York at BinghamtonCandidate:Ribic, HarisFull Text:PDF
GTID:1468390014473005Subject:Computer Science
Abstract/Summary:
Improving energy efficiency is becoming imperative in today's computing as energy consumption may carry as much cost as the maintenance of computer systems. In fact, energy efficiency has become a first-class design goal with direct consequences on operational cost, reliability, usability, maintainability, and environmental sustainability. No matter how sophisticated a cooling system might get or how energy efficiency hardware might be, it always boils down to finding a software system that will extract maximum performance with minimal energy use. This dissertation describes the design, implementation, and evaluation of two innovative energy-efficient runtime systems for constructing energy-aware parallel programs.;First, this dissertation presents Hermes, an energy-efficient work-stealing language runtime. Work stealing is a promising approach to constructing multi-threaded program runtimes of parallel programming languages. The key insight is that threads in a work-stealing runtime environment---thieves and victims---have varying impacts on the overall program running time, and a coordination of their execution "tempos" can lead to energy efficiency with minimal performance loss. The centerpiece of Hermes is two complementary algorithms to coordinate thread tempos: the workpath-sensitive algorithm determines the tempo for each thread based on thief-victim relationships on the execution path, whereas the workload-sensitive algorithm selects the appropriate tempo based on the size of work-stealing deques. Hermes was constructed on top of Intel Cilk Plus' work-stealing runtime, and implements tempo adjustment through standard Dynamic Voltage and Frequency Scaling (DVFS).;Second, this dissertation presents AEQUITAS, an energy coordination system for multiple application-scoped energy-efficient runtimes. A growing number of energy optimization solutions operate at the application runtime level. Despite delivering promising results, these application-scoped optimizations are fundamentally greedy: they assume to have an exclusive access to power management "knobs". AEQUITAS is a first step to address this critical yet largely overlooked problem. The insight behind AEQUITAS is that co-existing applications view power-managing hardware as a shared resource and coordinate power management decisions. As a concrete instance of this philosophy, A EQUITAS was evaluated on top of Hermes' energy-efficient work-stealing runtime. Without AEQUITAS, multiple co-existing power-managing application runtimes tend to suffer significant performance losses while negating almost all power savings. With AEQUITAS, the beneficial energy-performance tradeoff reported in the single-application setting can be retained but in a much more challenging setting where multiple power-managing applications co-exist on parallel architectures and multiple CPU cores share the same power domain.;Experimental results show that both Hermes and AEQUITAS can lead to significant energy savings with minimal performance loss over commercial multi-core CPUs. Together, they provide a novel and systematic solution for optimizing energy efficiency of modern parallel language runtime systems.
Keywords/Search Tags:Energy, Runtime, Systems, AEQUITAS, Parallel
Related items