<div dir="ltr">Dear Prof. Paolo:<div><br></div><div>Thank you very much for your kindly reply.<br><div><br></div><div><span style="font-size:13px">> does this happen also if you do not specify anything for</span><br style="font-size:13px"><span style="font-size:13px">> nproc_ortho (or nproc_diag, they are the same), or if you</span><br style="font-size:13px"><span style="font-size:13px">> specify nproc_ortho=1, in the command line for projwfc.x?</span><br style="font-size:13px"><br>I didn't specify nproc_ortho. It seems that mp_startup or something automatically set this value according to the number of cores used in calculation.</div><div>In my case, 6 cores set nproc_ortho=1, but 8 cores set nproc_ortho not equal to 1.</div><div><br></div><div><span style="font-size:13px">>It is possible to run most calculations done by projwfc.x</span><br style="font-size:13px"><span style="font-size:13px">>using distributed matrices and parallel diagonalization. This</span><br style="font-size:13px"><span style="font-size:13px">>is useful for large systems where Nband*Nband matrices may be</span><br style="font-size:13px"><span style="font-size:13px">>very large and not fit into memory.</span><br></div><div><br></div><div>Yes, I know. To my knowledge, currently only projwave without noncollinear case has been implemented to use distributed matrices. </div><div><br></div><div><span style="font-size:13px">>This possibility however does not exist for case "tdosinboxes".</span><br style="font-size:13px"><span style="font-size:13px">>Likely there is no need to stop the code, though. Just modify</span><br style="font-size:13px"><span style="font-size:13px">>the part of code listed below and try:</span><br style="font-size:13px"><span style="font-size:13px">>  IF ( tdosinboxes ) THEN</span><br style="font-size:13px"><span style="font-size:13px">>     IF( nproc_ortho > 1 ) THEN</span><br style="font-size:13px"><span style="font-size:13px">>        CALL errore ('do_projwfc', 'nproc_ortho > 1 not yet</span><br style="font-size:13px"><span style="font-size:13px">>implemented', 1)</span><br style="font-size:13px"><span style="font-size:13px">>     ELSE</span><br style="font-size:13px"><span style="font-size:13px">>        CALL projwave_boxes (filpdos, filproj, n_proj_boxes, irmin,</span><br style="font-size:13px"><span style="font-size:13px">>irmax, plotboxes)</span><br style="font-size:13px"><span style="font-size:13px">>     ENDIF</span><br style="font-size:13px"><span style="font-size:13px">>  ELSE</span><br style="font-size:13px"><span style="font-size:13px">>...</span><br style="font-size:13px"><span style="font-size:13px">>  ENDIF</span><br style="font-size:13px"><br style="font-size:13px">Yes. I also worked around this problem by modifying this part.</div><div><br></div><div>Regards.</div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Mar 13, 2015 at 3:06 PM, Paolo Giannozzi <span dir="ltr"><<a href="mailto:paolo.giannozzi@uniud.it" target="_blank">paolo.giannozzi@uniud.it</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Thu, 2015-03-12 at 16:26 +0100, H. Lee wrote:<br>
<br>
> When I set tdosinboxes = .true. and use multi-cores,<br>
> projwfc.x run in QE v5.1.1 compiled with Scalapack<br>
> results in the following error:<br>
> nproc_ortho > 1 not yet implemented<br>
<br>
</span>does this happen also if you do not specify anything for<br>
nproc_ortho (or nproc_diag, they are the same), or if you<br>
specify nproc_ortho=1, in the command line for projwfc.x?<br>
<br>
It is possible to run most calculations done by projwfc.x<br>
using distributed matrices and parallel diagonalization. This<br>
is useful for large systems where Nband*Nband matrices may be<br>
very large and not fit into memory.<br>
<br>
This possibility however does not exist for case "tdosinboxes".<br>
Likely there is no need to stop the code, though. Just modify<br>
the part of code listed below and try:<br>
  IF ( tdosinboxes ) THEN<br>
     IF( nproc_ortho > 1 ) THEN<br>
        CALL errore ('do_projwfc', 'nproc_ortho > 1 not yet<br>
implemented', 1)<br>
     ELSE<br>
        CALL projwave_boxes (filpdos, filproj, n_proj_boxes, irmin,<br>
irmax, plotboxes)<br>
     ENDIF<br>
  ELSE<br>
...<br>
  ENDIF<br>
<br>
Paolo<br>
<span class=""><br>
><br>
> But, to my understanding, nproc_ortho is related to the<br>
> parallelization in iterative diagonalization through distributed<br>
> matrices using Scalapack.<br>
><br>
><br>
> Thus, the check of nproc_ortho seems to be irrelevant in the<br>
> subroutine relating to tdosinboxes (projwfc_box.f90).<br>
><br>
><br>
> Do I misunderstand something?<br>
><br>
><br>
> Regards.<br>
</span>> _______________________________________________<br>
> Pw_forum mailing list<br>
> <a href="mailto:Pw_forum@pwscf.org">Pw_forum@pwscf.org</a><br>
> <a href="http://pwscf.org/mailman/listinfo/pw_forum" target="_blank">http://pwscf.org/mailman/listinfo/pw_forum</a><br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
 Paolo Giannozzi, Dept. Chemistry&Physics&Environment,<br>
 Univ. Udine, via delle Scienze 208, 33100 Udine, Italy<br>
 Phone <a href="tel:%2B39-0432-558216" value="+390432558216">+39-0432-558216</a>, fax <a href="tel:%2B39-0432-558222" value="+390432558222">+39-0432-558222</a><br>
<br>
_______________________________________________<br>
Pw_forum mailing list<br>
<a href="mailto:Pw_forum@pwscf.org">Pw_forum@pwscf.org</a><br>
<a href="http://pwscf.org/mailman/listinfo/pw_forum" target="_blank">http://pwscf.org/mailman/listinfo/pw_forum</a><br>
</font></span></blockquote></div><br></div>