Gloss
Abstract
An important class of applications computes on long-running or infinite streams of data, often with known fixed data rates. The latter is referred to as synchronous data flow ~(SDF) streams. These stream applications need to run on clusters or the cloud due to the high performance requirement. Further, they require live reconfiguration and reoptimization for various reasons such as hardware maintenance, elastic computation, or to respond to fluctuations in resources or application workload. However, reconfiguration and reoptimization without downtime while accurately preserving program state in a distributed environment is difficult. In this paper, we introduce Gloss, a suite of compiler and runtime techniques for live reconfiguration of distributed stream programs. Gloss, for the first time, avoids periods of zero throughput during the reconfiguration of both stateless and stateful SDF based stream programs. Furthermore, unlike other systems, Gloss globally reoptimizes and completely recompiles the program during reconfiguration. This permits it to reoptimize the application for entirely new configurations that it may not have encountered before. All these Gloss operations happen in-situ, requiring no extra hardware resources. We show how Gloss allows stream programs to reconfigure and reoptimize with no downtime and minimal overhead, and demonstrate the wider applicability of it via a variety of experiments.
Document Details
- Document Type
- Pub Defense Publication
- Publication Date
- Mar 19, 2018
- Source ID
- 10.1145/3296957.3173170
Entities
People
- Jeffrey Bosboom
- Saman Amarasinghe
- Sumanaruban Rajadurai
- Weng-fai Wong
Organizations
- Defense Advanced Research Projects Agency
- Massachusetts Institute of Technology
- Ministry of Education
- National University of Singapore
- United States Department of Energy