Hello
To perform a DOE faster
I would like to run multiple computations
is it with options “block” ?
it’s for a software with computation time rather fast (generally less than 1 min)
so we can launch several computations (10 by 10, or 20 by 20)
First, you have to check that your physical model is allowed to run in parallel (right click on the model item → Properties)
The default value for newly created models can be set in Tools>Settings in the menu bar.
The block size corresponds to the number of simultaneous runs, so in your case 10 or 20
If you want to maximize your machine use, you can set the number of threads you want to use then set the block size as your sample size
Cheers,
Figure 1. Setting the number of processors in Persalys v17 on Windows.
I would like to give some details on the algorithmic part of the feature. Some details are available in [1] section “6.4 Easy high performance computing” page 14. The sections before this one analyse how estimating a given quantity of interest can be done using an incremental algorithm. Two examples are given: estimating the mean (section 4) or estimating sensitivity indices (section 5). In practice, a block-based algorithm is also available in Persalys when evaluating a design of experiments (which is simpler, since the sample size is known beforehand). The paper introduces algorithms which are based on updating a sample by adding new sub-samples until a termination criteria is met. Then the section 6.4 use of these sub-samples (or “blocks”) to evaluate a function on several processors. Each sub-sample (or “block”) is evaluated by the processors by dividing the sub-sample into pieces containing one or more points. The figure 11 in [1:1] explains how this is done on a cluster, where we have to submit jobs using SLURM.
Figure 2. A block-based simulation performed on a supercomputer. We assume that we want to evaluate a design of experiments made of 24 points ; these points are numbered 1, 2, …, 24. We consider a block size of 12 and a number of processors equal to 4. In this case, the block-based simulation uses two jobs (source [1:2] figure 11 page 17).
Caution: on a single workstation, the behaviour is different depending on the operating system because there can be some overhead using multiple processors instead of a single one. This is especially true for Windows, where the penalty to use several processors can be especially large: in this case, it might be faster not to use it if a single function evaluation is fast enough.
Regards,
Michaël
OpenTURNS And Its Graphical Interface. Michaël Baudin, Thibault Delage, Anne Dutfoy, Anthony Geay, Ovidiu Mircescu, Aurélie Ladier, Julien Schueller, and Thierry Yalamas. UNCECOMP 2019. 3rd ECCOMAS Thematic Conference on Uncertainty Quantification in Computational Sciences and Engineering. M. Papadrakakis, V. Papadopoulos, G. Stefanou (eds.). Crete, Greece, 24-26 June 2019 https://2019.uncecomp.org/proceedings/↩︎↩︎↩︎