Hi,
I would like to ask questions very similar to this Neurostars post.
When one has access to a server with large number of cpus (and RAM) and would like to optimize workflows which include nodes themselves parallelizable with openmp (freesurfer, etc.), questions are:
- what
MultiProc
plugin parameters other thann_procs
should be considered for optimal execution? - in particular how to set properly the
MultiProc
plugin parameters related to setting the number of openmp threads for nodes using this feature in the worflow (freesurfer, afni, etc.)? Can one skip all node level configuration (e.g.openmp
variable for FreesurferReconAll
interface) and set everything via theMultiProc
plugin? If not how should they be combined? - is there any suggestion between using a subject iterable within a worfklow VS running the workflow always on a single subject but parallelizing at the level of the server/scheduler
- is it possible to have an example on how to set all these parameters?
- is there anything else very important to know when trying to optimize NiPype workflow resources?
- (optional) once the optimal parameters have been set, how (very roughly) does the optimization work when a workflow is iterated on subjects with nodes using openmp parallelization?
Any help would be great,
Michael