Methods for Partitioning Data to Improve Parallel Execution Time for Sorting on Heterogeneous Clusters
Christophe Cérin, Jean-Christophe Dubacq, Jean-Louis Roch, the SafeScale Collaboration
Abstract
The aim of the paper is to introduce general techniques in order to optimize the parallel execution time of sorting on a distributed architectures with processors of various speeds. Such an application requires a partitioning step. For uniformly related processors (processors speeds are related by a constant factor), we develop a constant time technique for mastering processor load and execution time in an heterogeneous environment and also a technique to deal with unknown cost functions. For non uniformly related processors, we use a technique based on dynamic programming. Most of the time, the solutions are in O(p) (p is the number of processors), independent of the problem size n. Consequently, there is a small overhead regarding the problem we deal with but it is inherently limited by the knowing of time complexity of the portion of code following the partitioning.
Create a lesson
Related papers
Projection-Free Bandit Online Optimization for Multi-Agent Systems with Dynamic Regret
Xia Jiang, Lu Liu, Gang Feng
A Smallest-Need-First Job Scheduling Framework with Adaptive Optimization of Idle Node Counts for Energy-Efficient HPC Systems
Reza Pulungan, Raka Satya Prasasta, Santana Yuda Pradata et al.
Bridging Agent Semantics with Spot Capacity: An Elastic and Recoverable Service Model
Minchen Yu
CLASP: Chained-Request-Aware Scaling and Operator Placement for Serverless Stream Processing
Tianyu Qi, Maria A. Rodriguez, Rajkumar Buyya
Performance Evaluation of RED-ONION: A High-Speed Disk-to-Disk Transfer System
Keichi Takahashi, Hiroaki Kataoka, Takeo Hosomi et al.
Memory-efficient GPU pipelines for real-time non-line-of-sight reconstruction
Alfonso López-Ruiz, Diego Royo