English

Execution Templates: Caching Control Plane Decisions for Strong Scaling of Data Analytics

Distributed, Parallel, and Cluster Computing 2017-05-05 v1

Abstract

Control planes of cloud frameworks trade off between scheduling granularity and performance. Centralized systems schedule at task granularity, but only schedule a few thousand tasks per second. Distributed systems schedule hundreds of thousands of tasks per second but changing the schedule is costly. We present execution templates, a control plane abstraction that can schedule hundreds of thousands of tasks per second while supporting fine-grained, per-task scheduling decisions. Execution templates leverage a program's repetitive control flow to cache blocks of frequently-executed tasks. Executing a task in a template requires sending a single message. Large-scale scheduling changes install new templates, while small changes apply edits to existing templates. Evaluations of execution templates in Nimbus, a data analytics framework, find that they provide the fine-grained scheduling flexibility of centralized control planes while matching the strong scaling of distributed ones. Execution templates support complex, real-world applications, such as a fluid simulation with a triply nested loop and data dependent branches.

Keywords

Cite

@article{arxiv.1705.01662,
  title  = {Execution Templates: Caching Control Plane Decisions for Strong Scaling of Data Analytics},
  author = {Omid Mashayekhi and Hang Qu and Chinmayee Shah and Philip Levis},
  journal= {arXiv preprint arXiv:1705.01662},
  year   = {2017}
}

Comments

To appear at USENIX ATC 2017

R2 v1 2026-06-22T19:36:33.396Z