OpenMOLE (version 0.5) is a piece of software for intensive scientific computing. OpenMOLE is the result of 4 years of daily work with model exploration issues in diverse fields (Human Sciences, Physics, Geography, Food-processing,…). It is 100% FOSS (Free and Open Source Software), 100% written in Scala.
It targets modelers who explore their models at wide scales. It makes it possible to generate automatically wide design of experiments (full-factorial, LHS, Saltelli…) and to take advantage of the computing power of massively parallel execution environments such as computing grids and clusters. It exposes a workflow formalism to design parallel processings in a natural way.
Strengths of OpenMOLE:
- a zero-deployment approach: the programs (C, C++, Python, Java, Scala, NetLogo, etc) are embedded at runtime and do not require installing software on execution machines,
- a small number of base concepts to handle (4):
- tasks (the executable components containing the model for instance);
- prototypes (types variables) which are transferred from one task to another;
- samplings (how to explore my model?);
- environments (where my jobs are executed?);
- a modular development for extending the platform with plug-ins in short time and based on OSGi,
- an optimized and effortless access to grid resources (automatic resource discovery, eager submission, failure handling, management of data transfer …),
- a specific task to embed NetLogo models,
- a formal workflow validation prior to the execution based on a strongly typed dataflow,
- its scalability: it manages up to hundreds of thousands of task executions from a laptop;
- a scripted interface as well as an ergonomic graphical user interface.
Mathieu Leclaire and Romain Reuillon