WfCommons: A Framework for Enabling Scientific Workflow Research and Development

Scientific workflows are a cornerstone of modern scientific computing. They are used to describe complex computational applications that require efficient and robust management of large volumes of data, which are typically stored/processed on heterogeneous, distributed resources. The workflow research and development community has employed a number of methods for the quantitative evaluation of existing and novel workflow algorithms and systems. In particular, a common approach is to simulate workflow executions. In previous works, we have presented a collection of tools that have been adopted by the community for conducting workflow research. Despite their popularity, they suffer from several shortcomings that prevent easy adoption, maintenance, and consistency with the evolving structures and computational requirements of production workflows. In this work, we present WfCommons, a framework that provides a collection of tools for analyzing workflow executions, for producing generators of synthetic workflows, and for simulating workflow executions. We demonstrate the realism of the generated synthetic workflows by comparing their simulated executions to real workflow executions. We also contrast these results with results obtained when using the previously available collection of tools. We find that the workflow generators that are automatically constructed by our framework not only generate representative same-scale workflows (i.e., with structures and task characteristics distributions that resemble those observed in realworld workflows), but also do so at scales larger than that of available real-world workflows. Finally, we conduct a case study to demonstrate the usefulness of our framework for estimating the energy consumption of large-scale workflow executions.

[1]  Henri Casanova,et al.  Accurately Simulating Energy Consumption of I/O-Intensive Scientific Workflows , 2019, ICCS.

[2]  Malcolm P. Atkinson,et al.  Using simple PID-inspired controllers for online resilient resource management of distributed scientific workflows , 2019, Future Gener. Comput. Syst..

[3]  Ewa Deelman,et al.  Empowering Agroecosystem Modeling with HTC Scientific Workflows: The Cycles Model Use Case , 2019, 2019 IEEE International Conference on Big Data (Big Data).

[4]  Miron Livny,et al.  Pegasus, a workflow management system for science automation , 2015, Future Gener. Comput. Syst..

[5]  Ann L. Chervenak,et al.  Characterizing and profiling scientific workflows , 2013, Future Gener. Comput. Syst..

[6]  Alexandru Iosup,et al.  The Workflow Trace Archive: Open-Access Data From Public and Private Computing Infrastructures , 2019, IEEE Transactions on Parallel and Distributed Systems.

[7]  John Chilton,et al.  Common Workflow Language, v1.0 , 2016 .

[8]  Joel Nothman,et al.  SciPy 1.0-Fundamental Algorithms for Scientific Computing in Python , 2019, ArXiv.

[9]  Yves Robert,et al.  A generic approach to scheduling and checkpointing workflows , 2019, Int. J. High Perform. Comput. Appl..

[10]  Rizos Sakellariou,et al.  Using imbalance metrics to optimize task clustering in scientific workflow executions , 2015, Future Gener. Comput. Syst..

[11]  Douglas Thain,et al.  Integrating Containers into Workflows: A Case Study Using Makeflow, Work Queue, and Docker , 2015, VTDC@HPDC.

[12]  Rizos Sakellariou,et al.  A characterization of workflow management systems for extreme-scale applications , 2016, Future Gener. Comput. Syst..

[13]  Douglas Thain,et al.  Makeflow: a portable abstraction for data intensive computing on clusters, clouds, and grids , 2012, SWEET '12.

[14]  Alexandru Iosup,et al.  The Grid Workloads Archive , 2008, Future Gener. Comput. Syst..

[15]  Anne H. H. Ngu,et al.  Towards scientific workflow patterns , 2009, WORKS '09.

[16]  Yves Robert,et al.  Scheduling independent stochastic tasks under deadline and budget constraints , 2020, Int. J. High Perform. Comput. Appl..

[17]  Henri Casanova,et al.  Characterizing, Modeling, and Accurately Simulating Power and Energy Consumption of I/O-intensive Scientific Workflows , 2020, J. Comput. Sci..

[18]  Dan Tsafrir,et al.  Experience with using the Parallel Workloads Archive , 2014, J. Parallel Distributed Comput..

[19]  Wil M. P. van der Aalst,et al.  Workflow Patterns , 2004, Distributed and Parallel Databases.

[20]  D. I. George Amalarethinam,et al.  DAGITIZER – A Tool to Generate Directed Acyclic Graph through Randomizer to Model Scheduling in Grid Computing , 2012 .

[21]  Henri Casanova,et al.  Bridging Concepts and Practice in eScience via Simulation-Driven Engineering , 2019, 2019 15th International Conference on eScience (eScience).

[22]  Laurent Lefèvre,et al.  A survey on techniques for improving the energy efficiency of large-scale distributed systems , 2014, ACM Comput. Surv..

[23]  Henri Casanova,et al.  Teaching Parallel and Distributed Computing Concepts in Simulation with WRENCH , 2019, 2019 IEEE/ACM Workshop on Education for High-Performance Computing (EduHPC).

[24]  Shantenu Jha,et al.  Next Generation Workload Management System For Big Data on Heterogeneous Distributed Computing , 2015 .

[25]  Miron Livny,et al.  The Evolution of the Pegasus Workflow Management Software , 2019, Computing in Science & Engineering.

[26]  Henri Casanova,et al.  WfChef: Automated Generation of Accurate Scientific Workflow Generators , 2021, 2021 IEEE 17th International Conference on eScience (eScience).

[27]  Henri Casanova,et al.  Developing accurate and scalable simulators of production workflow management systems with WRENCH , 2020, Future Gener. Comput. Syst..

[28]  Jano I. van Hemert,et al.  Scientific Workflows , 2016, ACM Comput. Surv..

[29]  Rajkumar Buyya,et al.  Scheduling dynamic workloads in multi-tenant scientific workflow as a service platforms , 2018, Future Gener. Comput. Syst..

[30]  Alexandru Iosup,et al.  The Failure Trace Archive: Enabling Comparative Analysis of Failures in Diverse Distributed Systems , 2010, 2010 10th IEEE/ACM International Conference on Cluster, Cloud and Grid Computing.

[31]  Daniel C. Stanzione,et al.  Lessons Learned from the Chameleon Testbed , 2020, USENIX Annual Technical Conference.

[32]  Xiaomin Zhu,et al.  Fault-Tolerant Scheduling for Real-Time Scientific Workflows with Elastic Resource Provisioning in Virtualized Clouds , 2016, IEEE Transactions on Parallel and Distributed Systems.

[33]  Daniel S. Katz,et al.  Application skeletons: Construction and use in eScience , 2016, Future Gener. Comput. Syst..

[34]  Muhammad Zakarya,et al.  Energy, performance and cost efficient datacenters: A survey , 2018, Renewable and Sustainable Energy Reviews.

[35]  Zhao Tong,et al.  A scheduling scheme in the cloud computing environment using deep Q-learning , 2020, Inf. Sci..

[36]  Lavanya Ramakrishnan,et al.  The future of scientific workflows , 2018, Int. J. High Perform. Comput. Appl..

[37]  Lavanya Ramakrishnan,et al.  Workflows Community Summit: Bringing the Scientific Workflows Community Together , 2021, 2103.09181.

[38]  Henri Casanova,et al.  WRENCH: A Framework for Simulating Workflow Management Systems , 2018, 2018 IEEE/ACM Workflows in Support of Large-Scale Science (WORKS).

[39]  Nelson L. S. da Fonseca,et al.  Estimation of the Available Bandwidth in Inter-Cloud Links for Task Scheduling in Hybrid Clouds , 2019, IEEE Transactions on Cloud Computing.

[40]  Ewa Deelman,et al.  WorkflowHub: Community Framework for Enabling Scientific Workflow Research and Development , 2020, 2020 IEEE/ACM Workflows in Support of Large-Scale Science (WORKS).

[41]  Muhammad Ali Amer,et al.  Evaluating Workflow Tools with SDAG , 2012, 2012 SC Companion: High Performance Computing, Networking Storage and Analysis.

[42]  Carole A. Goble,et al.  Common motifs in scientific workflows: An empirical analysis , 2014 .

[43]  Henri Casanova,et al.  Evaluating Energy-Aware Scheduling Algorithms for I/O-Intensive Scientific Workflows , 2021, ICCS.