O.M. Smirnov , S. Makhathini , J.S. Kenyon , H.L. Bester , S.J. Perkins , A.J.T. Ramaila , B.V. Hugo
{"title":"Africanus IV. The Stimela2 framework: Scalable and repeatable workflows, from local to cloud compute","authors":"O.M. Smirnov , S. Makhathini , J.S. Kenyon , H.L. Bester , S.J. Perkins , A.J.T. Ramaila , B.V. Hugo","doi":"10.1016/j.ascom.2025.100959","DOIUrl":null,"url":null,"abstract":"<div><div><span>Stimela2</span> is a new-generation framework for developing data reduction workflows. It is designed for radio astronomy data but can be adapted for other data processing applications. <span>Stimela2</span> aims at the middle ground between ease of development, human readability, and enabling robust, scalable and repeatable workflows. <span>Stimela2</span> defines a YAML-based domain specific language (DSL), which represents workflows by linear, concise and intuitive YAML-format <em>recipes</em>. Atomic data reduction tasks (binary executables, Python functions and code, and CASA tasks) are described by YAML-format <em>cab definitions</em> detailing each task’s <em>schema</em> (inputs and outputs). The <span>Stimela2</span> DSL provides a rich syntax for chaining tasks together, and encourages a high degree of modularity: recipes may be nested into other recipes, and configuration is cleanly separated from recipe logic. Tasks can be executed natively or in isolated environments using containerization technologies such as Apptainer. The container images are open-source and maintained through a companion package called <span>cult-cargo</span>. This enables the development of system-agnostic and repeatable workflows. <span>Stimela2</span> facilitates the deployment of scalable, distributed workflows by interfacing with the <span>Slurm</span> scheduler and the <span>Kubernetes</span> API. The latter allows workflows to be readily deployed in the cloud. Previous papers in this series used <span>Stimela2</span> as the underlying technology to run workflows on the AWS cloud.</div><div>This paper presents an overview of <span>Stimela2</span>’s design, architecture and use in the radio astronomy context.</div></div>","PeriodicalId":48757,"journal":{"name":"Astronomy and Computing","volume":"52 ","pages":"Article 100959"},"PeriodicalIF":1.9000,"publicationDate":"2025-03-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Astronomy and Computing","FirstCategoryId":"101","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S2213133725000320","RegionNum":4,"RegionCategory":"物理与天体物理","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q2","JCRName":"ASTRONOMY & ASTROPHYSICS","Score":null,"Total":0}
引用次数: 0
Abstract
Stimela2 is a new-generation framework for developing data reduction workflows. It is designed for radio astronomy data but can be adapted for other data processing applications. Stimela2 aims at the middle ground between ease of development, human readability, and enabling robust, scalable and repeatable workflows. Stimela2 defines a YAML-based domain specific language (DSL), which represents workflows by linear, concise and intuitive YAML-format recipes. Atomic data reduction tasks (binary executables, Python functions and code, and CASA tasks) are described by YAML-format cab definitions detailing each task’s schema (inputs and outputs). The Stimela2 DSL provides a rich syntax for chaining tasks together, and encourages a high degree of modularity: recipes may be nested into other recipes, and configuration is cleanly separated from recipe logic. Tasks can be executed natively or in isolated environments using containerization technologies such as Apptainer. The container images are open-source and maintained through a companion package called cult-cargo. This enables the development of system-agnostic and repeatable workflows. Stimela2 facilitates the deployment of scalable, distributed workflows by interfacing with the Slurm scheduler and the Kubernetes API. The latter allows workflows to be readily deployed in the cloud. Previous papers in this series used Stimela2 as the underlying technology to run workflows on the AWS cloud.
This paper presents an overview of Stimela2’s design, architecture and use in the radio astronomy context.
Astronomy and ComputingASTRONOMY & ASTROPHYSICSCOMPUTER SCIENCE,-COMPUTER SCIENCE, INTERDISCIPLINARY APPLICATIONS
CiteScore
4.10
自引率
8.00%
发文量
67
期刊介绍:
Astronomy and Computing is a peer-reviewed journal that focuses on the broad area between astronomy, computer science and information technology. The journal aims to publish the work of scientists and (software) engineers in all aspects of astronomical computing, including the collection, analysis, reduction, visualisation, preservation and dissemination of data, and the development of astronomical software and simulations. The journal covers applications for academic computer science techniques to astronomy, as well as novel applications of information technologies within astronomy.