[Q-e-developers] new input/output and local scratch space

Paolo Giannozzi p.giannozzi at gmail.com
Fri Jun 2 22:01:01 CEST 2017


It's not already on the way. Reading the xml data file from all
processors saves us from the infinite list of mp_bcast(this) and
allocate(that) like the one in input data reading (at least for
namelist variables; for cards, each line is read and broadcast, deeply
inside the code, did anybody know?). Pseudopotential files have always
been read by all processors and nobody ever complained (did anybody
ever noticed?).

I am surprised to hear that there are still machines that do not have
a parallel file system, even more that QE was still working on such a
configuration until recently. If we really think that it is useful to
cope with such case (I am not convinced), the simplest solution is to
re-introduce the possibility to write large binary files to a
different directory than "outdir".

About phonons: the last time I looked inside it, the I/O looked like a
big mess. I think it needs to be reduced to the strict minimum and
seriously cleaned.

Paolo

On Fri, Jun 2, 2017 at 11:35 AM, Lorenzo Paulatto
<lorenzo.paulatto at impmc.upmc.fr> wrote:
> Correction: even after the fix, phonon does not work, because it
> pw_readschema_file expects to read the save file on all nodes, I guess
> support for local scratch space is (temporarily?) dropped... I
> personally care about ti, and I'll happily spend some time to put it
> back, somehow, unless it is already on the way
>
>
>
> On 02/06/17 11:28, Lorenzo Paulatto wrote:
>> Hello,
>>
>> I'm testing the SVN version and I have some problems with the
>> input/output.
>>
>> I'm doing a pw.x calculation followed by a ph.x calculation, I'm
>> trying to use the node-local scratch space, but this does not work,
>> because the tmp directory is not created anymore on every node, I
>> remember fixing this in phonon years ago, but apparently some recent
>> change has made the issue creep back, now also in pw.x
>>
>> If I manually create the directory $prefix.save (and _ph0/$prefix.save
>> for phonon) in every node, there is no problem. I've been looking at
>> the changes, but I cannot find anything that would have been modified,
>> i.e. check_tempdir is still the same and called in the same place.
>>
>> I could trace it to punch.f90, line 71, there is a call to
>>   CALL create_directory( TRIM( tmp_dir ) // TRIM( prefix ) // '.save' )
>> which only creates the directory on the first process, replacing it
>> with a call to
>>   CALL check_tempdir(TRIM( tmp_dir ) // TRIM( prefix ) // '.save',
>> exst, pfs )
>> works for me, however I did not commit because I'm not sure if the
>> code is supposed to write anything with anything but the first process.
>>
>> Let me know if there are comments, I'll test a bit more and maybe
>> commit later.
>>
>> cheers
>>
>
> --
> Dr. Lorenzo Paulatto
> IdR @ IMPMC -- CNRS & Université Paris 6
> phone: +33 (0)1 442 79822 / skype: paulatz
> www:   http://www-int.impmc.upmc.fr/~paulatto/
> mail:  23-24/423 Boîte courrier 115, 4 place Jussieu 75252 Paris Cédex 05
>
> _______________________________________________
> Q-e-developers mailing list
> Q-e-developers at qe-forge.org
> http://qe-forge.org/mailman/listinfo/q-e-developers



-- 
Paolo Giannozzi, Dip. Scienze Matematiche Informatiche e Fisiche,
Univ. Udine, via delle Scienze 208, 33100 Udine, Italy
Phone +39-0432-558216, fax +39-0432-558222




More information about the developers mailing list