Scalable adaptive optimizations for stream-based workflows in multi-HPC-clusters and cloud infrastructures
Abstract
This work presents three new adaptive optimization techniques to maximize the performance of dispel4py workflows. dispel4py is a parallel Python-based stream-oriented dataflow framework that acts as a bridge to existing parallel programming frameworks like MPI or Python multiprocessing. When a user runs a dispel4py workflow, the original framework performs a fixed workload distribution among the processes available for the run. This allocation does not take into account the features of the workflows, which can cause scalability issues, especially for data-intensive scientific workflows. Our aim, therefore, is to improve the performance of dispel4py workflows by testing different workload strategies that automatically adapt to workflows at runtime. For achieving this objective, we have implemented three new techniques, called Naive Assignment, Staging and Dynamic Scheduling. We have evaluated our proposal with several workflows from different domains and across different computing resources. The results show that our proposed techniques have significantly (up to 10X) improved the performance of the original dispel4py framework.
Citation
Liang , L , Filgueira , R , Yan , Y & Heinis , T 2022 , ' Scalable adaptive optimizations for stream-based workflows in multi-HPC-clusters and cloud infrastructures ' , Future Generation Computer Systems , vol. 128 , pp. 102-116 . https://doi.org/10.1016/j.future.2021.09.036
Publication
Future Generation Computer Systems
Status
Peer reviewed
ISSN
0167-739XType
Journal article
Description
Funding: This work is partially supported by the EU H2020 project DARE, No. 777413; and by Google Cloud Platform research credits program.Collections
Items in the St Andrews Research Repository are protected by copyright, with all rights reserved, unless otherwise indicated.