@inbook{a0d86b46f1674d6891d0ac0abba668f2,
title = "CalCul: A Python-Based Workspace for High-Performance Parameters-Sweep in Scientific Legacy Codes",
abstract = "Scientific legacy codes are usually holding large numbers of physical arrays which have been used and updated by the code routines, and the code parameters are set using a simple textual data file. Therefore, in cases when there is a need to perform a parallel large-scale parameters-sweep, the user needs to manually replicate the code multiple times, change the data file to its needs, run the code and control its performances- A t each working directory separately. This task is practicable when there is a need to create several computations, but impossible when there is a need to run a large-scale parallel parameters-sweep on a cluster with thousands of calculations. In this work we present CalCul-A Python-based Workspace for High-Performance Legacy Scientific Codes, which is able to automatically render most of legacy codes data files into a python object, allowing the user-using many other functionalities-to control and handle all the needs of a parameters-sweep using the simplicity and sophistication of Python libraries, and thus allowing the conversion of work with software from manual to automatic. Also, in order to not damage the way legacy software work, and in order to abstain from replacing existing work modules for these software, the CalCul system provides a mirror between the changes done using the Python object and the legacy data files, and thus allows working dually on the software-either from CalCul or from the data files itself. CalCul also interfaces with IPython interactive command shell, and in this way, the user can manage all of his scientific actions entirely in one hermetic workspace.",
keywords = "High-Performance Computing, Legacy Computational Scientific Codes, Parallel Tools, Parameters-Sweep, Python Workspace",
author = "Gal Oren and Guy Malamud",
note = "Publisher Copyright: {\textcopyright} 2018 The authors and IOS Press.",
year = "2018",
month = jan,
day = "1",
doi = "10.3233/978-1-61499-843-3-242",
language = "English",
series = "Advances in Parallel Computing",
publisher = "IOS Press BV",
pages = "242--251",
editor = "Joubert, {Gerhard R.} and Patrizio Dazzi and Frans Peters and Marco Danelutto and Sanzio Bassini",
booktitle = "Parallel Computing is Everywhere",
address = "Netherlands",
}