The OpenMOLE software

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):
    1. tasks (the executable components containing the model for instance);
    2. prototypes (types variables) which are transferred from one task to another;
    3. samplings (how to explore my model?);
    4. 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