Improving Spark Application Throughput Via Memory Aware Task Co-location: A Mixture of Experts Approach
Not on the map. Why?
Abstract (arXiv)
Data analytic applications built upon big data processing frameworks such as Apache Spark are an important class of applications. Many of these applications are not latency-sensitive and thus can run as batch jobs in data centers. By running multiple applications on a computing host, task co-location can significantly improve the server utilization and system throughput. However, effective task co-location is a non-trivial task, as it requires an understanding of the computing resource requirement of the co-running applications, in order to determine what tasks, and how many of them, can be co-located. In this paper, we present a mixture-of-experts approach to model the memory behavior of Spark applications. We achieve this by learning, off-line, a range of specialized memory models on a range of typical applications; we then determine at runtime which of the memory models, or experts, best describes the memory behavior of the target application. We show that by accurately estimating the resource level that is needed, a co-location scheme can effectively determine how many applications can be co-located on the same host to improve the system throughput, by taking into consideration the memory and CPU requirements of co-running application tasks. Our technique is applied to a set of representative data analytic applications built upon the Apache Spark framework. We evaluated our approach for system throughput and average normalized turnaround time on a multi-core cluster. Our approach achieves over 83.9% of the performance delivered using an ideal memory predictor. We obtain, on average, 8.69x improvement on system throughput and a 49% reduction on turnaround time over executing application tasks in isolation, which translates to a 1.28x and 1.68x improvement over a state-of-the-art co-location scheme for system throughput and turnaround time respectively.
Key facts. Cited by 5 papers in the map (data through 7 Oct 2026). First posted on arXiv 2 Oct 2017.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2021: 1; 2022: 1; 2023: 2; 2024: 1.
5 papers.
- 2023Supersonic: Learning to Generate Source Code Optimizations in C/C++cited by 15
- 2021On-edge Multi-task Transfer Learning: Model and Practice with Data-driven Task Allocationcited by 9
- 2022PROMPT: Learning Dynamic Resource Allocation Policies for Network Applicationscited by 2
- 2023RAPID: Enabling Fast Online Policy Learning in Dynamic Public Cloud Environmentscited by 0
- 2024Enhancing Deployment-Time Predictive Model Robustness for Code Analysis and Optimizationcited by 0
- 2024Enhancing Deployment-Time Predictive Model Robustness for Code Analysis and Optimization31 Dec 2024
- 2023Supersonic: Learning to Generate Source Code Optimizations in C/C++26 Sep 2023
- 2023RAPID: Enabling Fast Online Policy Learning in Dynamic Public Cloud Environments10 Apr 2023
- 2022PROMPT: Learning Dynamic Resource Allocation Policies for Network Applications19 Jan 2022
- 2021On-edge Multi-task Transfer Learning: Model and Practice with Data-driven Task Allocation6 Jul 2021
Similar, not cited
Close in wording, no citation either way
- 2025Zero-Execution Retrieval-Augmented Configuration Tuning of Spark Applications ↗
- 2026BatchBench: Toward a Workload-Aware Benchmark for Autoscaling Policies in Big Data Batch Processing -- A Proposed Framework ↗
- 2025The Streaming Batch Model for Efficient and Fault-Tolerant Heterogeneous Execution
- 2026MAPS: Memory-Aware Predictive Scheduling Framework for Large Language Model Serving
- 2026SparKV: Overhead-Aware KV Cache Loading for Efficient On-Device LLM Inference
- 2026SeqMoE: Toward Full-Load Performance via Predictive and Graph-Compatible MoE Offloading
- 2025SageServe: Optimizing LLM Serving on Cloud Data Centers with Forecast Aware Auto-Scaling
- 2025Echo: Efficient Co-Scheduling of Hybrid Online-Offline Tasks for Large Language Model Serving