TaPS: A Performance Evaluation Suite for Task-based Execution Frameworks
J. Gregory Pauloski, Valerie Hayot-Sasson, Maxime Gonthier, Nathaniel Hudson, Haochen Pan, Sicheng Zhou, Ian Foster, Kyle Chard
TL;DR
TaPS addresses the absence of standardized benchmarks for task-based execution frameworks by delivering a framework-agnostic Application Model, an extensible Executor plugin system, and a suite of real and synthetic reference applications. It demonstrates how applications can be written once and benchmarked with multiple executors and data-management plugins, enabling reproducible comparisons of overheads, data transfer, and scalability across Dask, Parsl, Ray, Globus Compute, and TaskVine. The paper provides detailed design, implementation, and an evaluation across diverse workloads (e.g., Cholesky, Protein Docking, Federated Learning, MapReduce, Molecular Design, Montage, Failure Injection, Synthetic Workflow) to illustrate TaPS’s capability to quantify execution performance and guide future optimizations. Overall, TaPS offers a practical, long-term standard to accelerate innovation in parallel task execution and heterogeneous computing by leveling the benchmarking playing field and promoting cross-framework comparability.
Abstract
Task-based execution frameworks, such as parallel programming libraries, computational workflow systems, and function-as-a-service platforms, enable the composition of distinct tasks into a single, unified application designed to achieve a computational goal. Task-based execution frameworks abstract the parallel execution of an application's tasks on arbitrary hardware. Research into these task executors has accelerated as computational sciences increasingly need to take advantage of parallel compute and/or heterogeneous hardware. However, the lack of evaluation standards makes it challenging to compare and contrast novel systems against existing implementations. Here, we introduce TaPS, the Task Performance Suite, to support continued research in parallel task executor frameworks. TaPS provides (1) a unified, modular interface for writing and evaluating applications using arbitrary execution frameworks and data management systems and (2) an initial set of reference synthetic and real-world science applications. We discuss how the design of TaPS supports the reliable evaluation of frameworks and demonstrate TaPS through a survey of benchmarks using the provided reference applications.
