A Case for Runtime Adaptation using Cross-Layer Approaches

160
Следующее
Популярные
Опубликовано 17 августа 2016, 21:20
Modern computer system designers must consider many more factors than raw performance of individual applications. Thermal output, power consumption, reliability, heterogeneity, and dynamic resource contention have become first-order concerns. Yet many of these issues are transient in nature, are difficult to predict, and are expensive to completely avoid. These observations point toward the potential benefits of adaptive systems that detect and react to changing conditions as they arise. An effective runtime adaptation framework can directly benefit from information gathered by various system layers. Unfortunately, research efforts in optimizing computer systems have historically targeted a single logical layer in the system stack, whether it has been optimization of the hardware (microarchitectures or circuits), the middleware (operating systems and virtual machines), or the software (static and dynamic compilation). A true adaptive system requires coordination of all layers to be effective, as these cross-layer solutions leverage the strengths of each layer. While hardware is ideal for detecting thermal emergencies, for instance, the middleware has a global view of the runtime environment, including resource contention and observed process heterogeneity, and the software has a global view of the oppor¬tun¬ities for permanent code-based solutions that leverage dynamic information. In this talk, I will make a case for dynamic adaptation as a solution for several modern architectural and system challenges, such as voltage noise, heterogeneity, and resource contention. I will discuss our research efforts in integrating the strengths of each design layer to provide cohesive, symbiotic solutions to these challenges. At the core of this work is the Pin dynamic instrumentation system, which we use to collate information gathered from the various system layers and to perform run-time code transformations. I will therefore discuss the myriad of implementation challenges we encountered when developing, optimizing, and supporting Pin. Finally, I will highlight the numerous benefits of runtime adaptation moving forward.
автотехномузыкадетское