On Tue, 16 Feb 2010 12:34:07 +0100, Carlo Nervi <carlo.nervi at unito.it> wrote: > I recently tried to run a simple calculation using a large supercell > with ibrav=1. The cell contains 13 atoms. > pw.x runs, but consumes a huge amount of memory (in the example below > more than 400 Mb of ram for each pw.x process). If I set A = 50.0 it > consumes more than 1Gb of RAM for each process, and of course having 8 > cPU and 8 Gb of RAM the calculation continously swap with the disk... > Perhaps I'm doing something wrong, but I cannot find the reason.
Dear Carlo, the simple-cubic lattice (ibrav=1) is the biggest of them all for constant value of alat; furthermore the memory footprint also depends on the cutoff, which in your case is very high. If your calculation is well converged with only one k-point, you can save half the memory by setting K_POINT gamma which will use arrays of type real, instead of complex, for the wavefunctions. Note that this choice is equivalent to K_POINTS automatic 1 1 1 0 0 0 but the latter does not use the Gamma-point specific memory-saving tricks. On the other hand it is *not* equivalent to K_POINTS automatic 1 1 1 1 1 1 which is normally more converged. Finally, I haven't specified the parallelization paradigm you are using; please not that memory is *not* distributed among pools. If your situation is really critical you may wish to use only 4 or even 2 process together with openmp (thread-based parallelization) which should ensure a better memory scalability. I think this option is only available in the CVS version of QE. best regards -- Lorenzo Paulatto *** Note: my affiliation has changed! please send future correspondence to: <Lorenzo.Paulatto at impmc.upmc.fr> *** post-doc @ IMPMC/UPMC - Universit? Paris 6 phone: +33 (0)1 44 27 74 89 www: http://www-int.impmc.upmc.fr/~paulatto/ previously: phd student @ SISSA & DEMOCRITOS (Trieste) phone: +39 040 3787 511 www: http://people.sissa.it/~paulatto/