how can i implement multilevel parallelism on a parallel cluster distribute shared-memory?

4 visualizaciones (últimos 30 días)
i am using a HPC architecture that it's made of 8 nodes, each blade consists of 2 quadcore processors sharing memory for a total of 8 cores and of 64 cores, in total. how can I set up a cluster profile to run my code on p (1=<p<=8) nodes? and fixed a node, how can I set up another cluster profile to run my (sequential) code on c (1=<c<=8) cores ? how many workers should I consider in both cases?
thanks

Respuesta aceptada

Walter Roberson
Walter Roberson el 8 de Jun. de 2020
MATLAB does not support multi-level parallelism with the Parallel Computing Toolbox.
What it does support is allocating more than one thread (core) to a parallel worker. These threads can be used by MKL or LAPACK high performance libraries that automatically act in parallel without starting new processes.
You cannot, however, have a parallel worker run a parfor in order to have workers for workers.
  2 comentarios
ROSALBA CACCIAPUOTI
ROSALBA CACCIAPUOTI el 11 de Jun. de 2020
thanks, but can i run my sequential code (without parfor / spmd) on a fixed number of cores?
Walter Roberson
Walter Roberson el 11 de Jun. de 2020
https://www.mathworks.com/help/matlab/ref/maxnumcompthreads.html
You asked about cluster profiles, and clusters are only involved for parfor, spmd, parfEeval, parfEvalOnAll, and batch. For hpc clusters, batch would seem most likely for what you are asking about. For clusters you would not use the above link: you would edit the cluster profile to control the number of threads given to each worker.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre MATLAB Parallel Server en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by