Supervision of computation workflows, coupling, job management
There is a growing need for multidisciplinary parametric simulations in various research and engineering fields. Fluid-structure interaction and thermo-mechanical coupling are two examples. The software strategy comonly pursued is to develop a dedicated domain/physic specific solver and then run multi-domain simulations by coupling these specific solvers. SALOME provides a set of services to create a simulation workflow that connects different computation units. This workflow can then be run on a PC, a laptop, a distributed network of PCs or HPC resources.
Below are some of the main features of the SALOME supervisor:
- Integration of domain-specific solvers
- These SALOME components are built with standard interfaces to allow the coupling of different physical domains. They can be used as computational units of a simulation process. YACSGEN tools are provided to automate the integration of standard configurations (integration of executable programs, library functions or python scripts).
- Supervision of a calculation workflow
- The workflow is defined as a graph of connected SALOME components, which may include CAD modeling, meshing, domain-specific solvers and computer components. This complex workflow is managed in the form of Python scripts. It can be modified using the graphical or textual interface.
- Distribution on HPC resources.
- SALOME contains a job manager (JOBMANAGER) to define a computation (including either a simple SALOME component or a complete workflow) and to drive the submission of the computation to a distributed set of computers or HPC resources. The job manager can handle many batch management systems like PBS, LSF, SGE, LOADLEVELER or SLURM via a generic standardized interface. It comes with a graphical interface but can be used at the programming level using a C++ or Python interface to create simple scripts or domain specific tools.
- Design of numerical experiments.
- SALOME provides a scheduler to manage parametric calculations. The input data are the experimental plan and the computational function. The scheduler can be used with advanced modules such as OpenTURNS and URANIE, to generate the input sample and analyze the output results (meta-modeling, statistical analysis, uncertainty quantification).