[Pw_forum] DOS and pDOS parallelization

Andrea Ferretti ferretti at MIT.EDU
Thu Aug 13 15:00:49 CEST 2009



Dear Madhura,

>
>  Thanks for the explanation.
>  I had always thought that DOS code also requires wavefunction files; and
> that is why one needs to give the same prefix and outdir path as in scf
> calculations. If code does not need wavefunctions, which files it uses
> for DOS calc.s?

the code needs mainly the eigenvalues, which are stored in
$prefix.save/K?????/eigenval.xml  files,
where K????? (i.e. K00001, K00002, etc ) correspond to each kpt.


>  As per suggestion, I have run PDOS calc.s with the same number of pools
> and processors (in case of B) and got results. That means PDOS code is
> parallelized with pool implementation, but not DOS.
>

yes you are right,
this means that pDOS is parallelized over G vectors and pools, while
DOS calculation is not parallelized but is anyway compatible with
the parallel environment (i.e. it does not crash if run parallel)

andrea

>  Thanks once again,
>  Madhura.
>
> >
> > Dear Madhura,
> >
> > the issue of using the same parallelism scheme (# of processors, # of
> > pools, etc) in postprocessing calculations is mainly concerned with the
> > need to read wfcs. As you wrote, if you specify wf_collect = .TRUE. you
> > completely remove this issue (you can read wfcs whatever the
> > parallelization
> > scheme you used to produce them).
> >
> >>From this point of view, the main difference between DOS and pDOS
> > calculations is that the former does not need to read wfcs, while the
> > latter does.
> >
> > Moreover, the taks the DOS program has to perform is so inexpensive that
> > it is performed by a single processor even if the code is run in parallel.
> > This is consistent with your observation at (ii).
> >
> > In the case of pDOS (i.e. when running projwfc.x) if you do not collect
> > wfcs you should run with the same # of processors and the same pool
> > parallelism. Otherwise, as you experienced, you get a davcio error
> > (some of the wfcs files were not found).
> > According to me, anyway, projwfc should work with pools if the above
> > conditions are fulfilled.
> >
> > hope it helps
> > andrea
> >
> >
> >>
> >>  There have been many discussions in this forum about parallelization of
> >> DOS and projected DOS codes. However, some of the points were not clear
> >> to
> >> me, so I have performed some scf calculations for a very simple system
> >> using 8 processors and with flag wf_collect 'false'. I have performed
> >> same
> >> calculations once without use of pools (A) and then using 2 pools (B).
> >> Then using theses wavefunctions I have performed DOS and PDOS
> >> calculations. Following is the summary of results and my interpretation:
> >>
> >> i) Pool parallelization is not implemented for both these codes.
> >>
> >> ii) DOS calculations: for both the cases A and B, one can calculate DOS
> >> with the same no. of processors (= 8) and the results match within
> >> numerical errors; even though for case B, the wavefunctions were
> >> obtained
> >> with pooling and DOS without it.
> >>  For case A, even if I use 4 processors I get identical results as when
> >> I
> >> use 8 processors. (Note, I have not checked with less no. of proc.s for
> >> B).
> >> => The condition that we need the same no. of processors and pools as
> >> were
> >> used in scf calculations is not necessary; and it is possible to get DOS
> >> results even with wavefunctions generated with pool parallelization.
> >>
> >> iii) PDOS calculations: This can be calculated only in case of A and
> >> using
> >> the same no. of processors. If I use wavefunctions generated in case B
> >> or
> >> less no. of processors (= 4) with A wavefn.s then I get "davcio" error.
> >> =>
> >> For PDOS calculations, one cannot use wavefunctions generated with pool
> >> parallelization unless wf_collect flag is set to 'true' for scf calc.s;
> >> also one has to use the same no. of proc.s as were used for scf calc.s
> >> to
> >> get projected DOS.
> >>
> >> Now my question is are these interpretations correct? Or they may change
> >> for some other system?? Do I need to do some more checks to ascertain
> >> these? If yes, what sort of tests?
> >>
> >> Thanks for reading this long mail patiently, but I need to clarify on
> >> these points before I can start with bigger systems.
> >> Sincerely,
> >> Madhura.
> >>
> >>
> >>
> >
> > --
> > Andrea Ferretti
> > MIT, Dept Material Science & Engineering
> > bldg 13-4078, 77, Massachusetts Ave, Cambridge, MA
> > Tel: +1 617-452-2455;  Skype: andrea_ferretti
> > URL: http://quasiamore.mit.edu
> >
> > Please, if possible, don't send me MS Word or PowerPoint attachments
> > Why? See:  http://www.gnu.org/philosophy/no-word-attachments.html
> >
> >
> > _______________________________________________
> > Pw_forum mailing list
> > Pw_forum at pwscf.org
> > http://www.democritos.it/mailman/listinfo/pw_forum
> >
>
>
>

-- 
Andrea Ferretti
MIT, Dept Material Science & Engineering
bldg 13-4078, 77, Massachusetts Ave, Cambridge, MA
Tel: +1 617-452-2455;  Skype: andrea_ferretti
URL: http://quasiamore.mit.edu

Please, if possible, don't send me MS Word or PowerPoint attachments
Why? See:  http://www.gnu.org/philosophy/no-word-attachments.html



More information about the Pw_forum mailing list