[Pw_forum] Trying to find reasonable parallelization parameters

Lorenzo Paulatto paulatto at sissa.it
Fri Jan 23 15:01:08 CET 2009


On Fri, 23 Jan 2009 14:50:02 +0100, J. J. Ramsey <jjr19 at uakron.edu> wrote:
> *Each* pool? I had gotten the impression from the documentation  
> (<http://www.quantum-espresso.org/wiki/index.php/Running_on_parallel_machines#Understanding_Parallelism_in_Quantum-Espresso>)  
> that if, say, I had 36 CPU cores and 4 pools, the diagonalization would  
> by default take place over only 9 cores, not 9 cores for each pool.

No, the documentation is a bit misleading, but if you read it carefully you'll see it agrees with me (I was mislead as well in the beginning); furthermore you can check using -ndiag X that you cannot specify X > number of processor i a pool.

> (FWIW, I also understand that the diagonalization takes place on a  
> subset of the processors performing the FFTs, so it's not like I have  
> some cores doing diagonalization and a completely different set of cores  
> handling the plane wave parallelization. Not sure if that's right,  
> though.)

Not really, they are two different and independet levels of parallelizations: at certain points in the code processors will be divided in task groups to do the FFTs, at other points they are divided in diag groups (ortho groups in CP code) that do the diagonalization. I'm not 100% sure on this part, though.

> BTW, thanks for the tip on diago_david_ndim. I may give that a try.

It reduces memory usage quite a lot, but requires more iteration of the diagonalization algorithm; I haven't done any serious benchmark on the performance.

cheers


-- 
Lorenzo Paulatto
SISSA  &  DEMOCRITOS (Trieste)
phone: +39 040 3787 511
skype: paulatz
www:   http://people.sissa.it/~paulatto/

     *** save italian brains ***
 http://saveitalianbrains.wordpress.com/



More information about the users mailing list