CS Events

PhD Defense

TRADING QUALITY FOR RESOURCE CONSUMPTION THROUGH APPROXIMATION MANAGEMENT

 

Download as iCal file

Wednesday, January 08, 2020, 02:00pm

 

The goal of traditional optimizations is to map applications onto limited machine resources such that application performance is maximized while application semantics (program correctness) is preserved. Semantics is thought of as a unique mapping from inputs to outcomes. Relaxing application semantics through approximations has the potential of orders of magnitude performance improvements by trading off outcome quality for resource usage. Here, an execution outcome is not only based on its inputs but also resource availability and user quality expectations.

Emerging approximation techniques provides various ways to trade-off output quality for lower resource consumption. However, as a developer, the guidance and support on how to utilize the power of approximation in everyday applications are limited and rarely discussed in recent works. The offline training overhead to support approximation is usually huge, but often be treated as "free." Besides, it is surprising that end-users involvement is always overlooked when determining the quality notion, which should be highly subjective. Finally, supporting approximation in a multi-programming environment is crucial to let approximation be widely accepted as a general technique.

In this dissertation, I introduce RAPIDS, Reconfiguration, Approximation, Preferences, Implementation, Dependencies, and Structure, a framework for developing and executing applications suitable for dynamic configuration management in approximate computation. The main contribution of RAPIDS is its design to address the above concerns through exploiting the different expertise/strengths of the three actors (developers, users, applications) involved. I conduct comprehensive experiments and show that RAPIDS is adaptive and extendable by providing customizable configuration spaces for developers and the support for customizable quality for end-users. It has low overheads and small cross-platform porting costs. I also introduce an extension of RAPIDS, RAPIDS-M (Rapids for Multi-programming), which is the first system that discusses cross-application approximation management. The target is to understand and overcome the challenges in approximation management fundamentally, then let both developers and end-users benefit from approximation with little extra efforts so that a wider audience can accept the technique.

Speaker: Liu Liu

Location : CoRE 305

Committee

Defense Committee: Prof. Ulrich Kremer (Chair), Prof. Sibren Isaacman (Loyola University), Prof. Rich Martin, Prof. Desheng Zhang, and Dr. Linbin Yu (Facebook)

Event Type: PhD Defense

Abstract: The goal of traditional optimizations is to map applications onto limited machine resources such that application performance is maximized while application semantics (program correctness) is preserved. Semantics is thought of as a unique mapping from inputs to outcomes. Relaxing application semantics through approximations has the potential of orders of magnitude performance improvements by trading off outcome quality for resource usage. Here, an execution outcome is not only based on its inputs but also resource availability and user quality expectations.Emerging approximation techniques provides various ways to trade-off output quality for lower resource consumption. However, as a developer, the guidance and support on how to utilize the power of approximation in everyday applications are limited and rarely discussed in recent works. The offline training overhead to support approximation is usually huge, but often be treated as "free." Besides, it is surprising that end-users involvement is always overlooked when determining the quality notion, which should be highly subjective. Finally, supporting approximation in a multi-programming environment is crucial to let approximation be widely accepted as a general technique.In this dissertation, I introduce RAPIDS, Reconfiguration, Approximation, Preferences, Implementation, Dependencies, and Structure, a framework for developing and executing applications suitable for dynamic configuration management in approximate computation. The main contribution of RAPIDS is its design to address the above concerns through exploiting the different expertise/strengths of the three actors (developers, users, applications) involved. I conduct comprehensive experiments and show that RAPIDS is adaptive and extendable by providing customizable configuration spaces for developers and the support for customizable quality for end-users. It has low overheads and small cross-platform porting costs. I also introduce an extension of RAPIDS, RAPIDS-M (Rapids for Multi-programming), which is the first system that discusses cross-application approximation management. The target is to understand and overcome the challenges in approximation management fundamentally, then let both developers and end-users benefit from approximation with little extra efforts so that a wider audience can accept the technique.

Organization

Department of Computer Science