Page 1 of 1

Problem: The k-point parallelisation is not efficient.

Posted: Sat Jul 16, 2011 8:40 pm
by kello
Hello Professor:

I am running ABINIT to find the best ecut and k-grid (on a crystal structure with 16 atoms) to run an new crystal structure optimization with app 100 atoms. I am using 2 nodes (16 processors total) to run the script. But, I encounter a problem: in the log file appears something like:

Code: Select all

 distrb2: WARNING -
  nkpt*nsppol (  114) is not a multiple of nproc_kpt (   16)
  The k-point parallelisation is not efficient.
 invars1: mkmem  undefined in the input file. Use default mkmem  = nkpt
 invars1: With nkpt_me=    8 and mkmem  =   114, ground state wf handled in core.
 Resetting mkmem  to nkpt_me to save memory space.
 invars1: mkqmem undefined in the input file. Use default mkqmem = nkpt
 invars1: With nkpt_me=    8 and mkqmem =   114, ground state wf handled in core.
 Resetting mkqmem to nkpt_me to save memory space.
 invars1: mk1mem undefined in the input file. Use default mk1mem = nkpt
 invars1: With nkpt_me=    8 and mk1mem =   114, ground state wf handled in core.
 Resetting mk1mem to nkpt_me to save memory space.


I don't know what the problem is and how to solve it. Can you help me please? I will appreciate it.

I attached the input file:

Code: Select all

# Ti5Pt3

ndtset 9
ecut: 4    ecut+ 2

#getwfk -1         # This is to speed up the calculation, by restarting
                   # from previous wavefunctions, transferred from the old
                   # to the new k-points.

#Definition of occupation numbers
occopt 4          #metallic occupation of levels. Cold smearing of N. Marzari
tsmear 0.05       #broadening of the occupation numbers

#Definition of the unit cell
acell  15.1178 15.1178 9.4486  # hexagonal

rprim   1.0   0.0  0.0                #hexagonal primitive vectors must be
       -0.5   0.866025403784439  0.0  #specified with high accuracy to be
        0.0   0.0  1.0                #sure that the symmetry is recognized
                                      #and preserved in the optimization
                                      #process

#Definition of the atom types
npsp   2           # 2 pseudopotentials
ntypat 2           # 2 type of atoms
znucl  22 78       # The keyword "znucl" refers to the atomic number of the
                   # possible type(s) of atom. The pseudopotential(s)
                   # mentioned in the "files" file must correspond
                   # to the type(s) of atom.
nband 62
                       
#Definition of the atoms
natom 16                # 16 atoms
typat 10*1 6*2         
xred  0.33333333  0.66666667   0.00000000  #Ti1
      0.66666667  0.33333333   0.50000000  #Ti2 
      0.66666667  0.33333333   0.00000000  #Ti3
      0.33333333  0.66666667   0.50000000  #Ti4 
      0.23600000  0.00000000   0.25000000 #Ti5
     -0.23600000  0.00000000   0.75000000 #Ti6   
      0.00000000  0.23600000   0.25000000 #Ti7
      0.00000000 -0.23600000   0.75000000 #Ti8 
      0.23600000  0.23600000   0.75000000 #Ti9   
     -0.23600000 -0.23600000   0.25000000 #Ti10
      0.59950000  0.00000000   0.25000000 #Pt1
     -0.59950000  0.00000000   0.75000000 #Pt2   
      0.00000000  0.59950000   0.25000000 #Pt3
      0.00000000 -0.59950000   0.75000000 #Pt4 
      0.59950000  0.59950000   0.75000000 #Pt5   
     -0.59950000 -0.59950000   0.25000000 #Pt6

#Definition of the k-point grid
ngkpt   10 10 10    # Definition of the different grids
nshiftk 1           # of the reciprocal space. For a hcp
shiftk  0.0 0.0 0.5

#Exchange-correlation functional
ixc 1             # LDA Teter Pade parametrization

#Definition of the planewave basis set
#ecut  2         # Maximal kinetic energy cut-off, in Hartree

#Definition of the SCF procedure
nstep  100          # Maximal number of SCF cycles
toldfe 1.0d-6     # Will stop when, twice in a row, the difference
                  # between two consecutive evaluations of total energy
                  # differ by less than toldfe (in Hartree)
                  # This value is way too large for most realistic studies of materials

Re: Problem: The k-point parallelisation is not efficient.

Posted: Mon Jul 18, 2011 11:22 am
by david.waroquiers
Hello,

The k-point parallelisation is the most efficient if you use a number of processor which is a divisor of the number of k-points. In your case, you'd better use 19 processors for example (19*6 = 114). Here you are loosing a bit of time (something like 10 or 15 % maybe).

David

Re: Problem: The k-point parallelisation is not efficient.

Posted: Mon Jul 18, 2011 4:22 pm
by kello
David:

Thank you very much for the answer. I didn't know this issue with the number of processors and the k points. A question regarding this same issue, is it mean that my optimization was wrong, i.e, that the values of total energy are not reliable?

Thanks,

Karem

Re: Problem: The k-point parallelisation is not efficient.

Posted: Sun Jul 24, 2011 9:54 pm
by david.waroquiers
Hello,

No of course your results are reliable (if they are converged but that's something else)

David