Power, Reliability, Performance: One System to Rule Them All

Traditionally, the emphasis of High Performance Computing (HPC) data centers and applications has been on performance. However, it is anticipated that future generation supercomputing systems will face major challenges in reliability, power management, and thermal variations. Disruptive solutions are required to optimize performance in the presence of these challenges. We believe that a smart parallel runtime system that is part of each job, and that interacts with an adaptive resource manager for the whole machine, is key to overcome the challenges of next generation supercomputing data centers. We have demonstrated that a smart and adaptive runtime system can: • improve efficiency in a power-constrained environment [1], • increase performance with load balancing algorithms [2], • control the reliability of supercomputers with substantial thermal variations [3], • configure hardware components to operate within power constraints and/or to save energy [4], [5]. Although these research directions were developed in isolation, they indicate that smart runtime systems have a great potential to overcome the barriers towards exascale computing. What the HPC community lacks is an integrated solution that combines past research into a single system that optimizes across multiple dimensions. We propose a comprehensive design in which the data center resource manager: • dynamically interacts with the individual runtime systems of jobs, • optimizes for both performance and power consumption, and • operates in an environment with system failures under constraints supplied by users or administrators. At the heart of the proposed solution for power-efficiency, reliability and performance of an HPC data center lies an adaptive and dynamic parallel runtime system. An adaptive runtime system can migrate tasks and data from one processor to any other processor available to the job. This ability can solve many challenges that upcoming supercomputers face application load imbalance across processors, high fault rates, power and energy constraints, and thermal variations. These challenges are often contradictory in terms of their requirements. For example, applying power and temperature constraints can compromise performance and lead to load imbalance across processors. We strive to achieve a healthy balance where we try to maximize performance in presence of the known as well as contingent constraints and events. In Figure 1, we show a unified diagram of several important components of a data center, their functions and interactions with each other in order to address the challenges of power, reliability, and performance. Currently, data center users are primarily concerned about the performance of their job. In future, however, power consumption of their jobs may become a major concern. On the other hand, the data center administrators have different and more complex concerns while they want to guarantee good performance to individual jobs, they need to ensure that the total power consumption of the data center does not exceed its allocated budget and that the job throughput of the data center remains high despite node failures and thermal variations. We achieve the objectives of both users and system administrators by allowing dynamic interaction between the system resource manager/scheduler and the job runtime system. While the job scheduler strives to allocate the system resources optimally to the jobs based on their power and performance characteristics, the job runtime system implements the decision of the job scheduler by being malleable to shrink or expand itself to the nodes assigned by the scheduler and by doing dynamic load balancing whenever beneficial. Furthermore, the runtime system can turn on/off or reconfigure various hardware components without impacting application performance, if adequate hardware control is provided by vendors. Our evaluations demonstrate that these runtime capabilities result in greater power efficiency for common HPC applications.