The part of 'Solve anisotropic Eliashberg equations' is so slow

Post here questions linked with issue while running the EPW code

Moderator: stiwari

Post Reply
Yao Wei
Posts: 5
Joined: Sat Apr 29, 2023 8:40 pm
Affiliation: King's College London

The part of 'Solve anisotropic Eliashberg equations' is so slow

Post by Yao Wei »

Dear there

I would like to ask a question about the part of 'Solve anisotropic Eliashberg equations',

nowadays I would like to use EPW to predict the Tc for CeH10 at 400Gpa, everything goes well for scf/ph/nscf calculation.

But when EPW finishes writing .ephmat files and starts solving anisotropic Eliashberg equations, the speed becomes so slow.

In my calculation, only a few iter values ​​under one temperature value can be produced every hour, I used 80 cores for the calculation. But in this situation, I could not use epw to get one complete Tc delta value.

I wonder if there are some parameters to accelerate the speed of solving anisotropic Eliashberg equations.

I attached my epw.in here

Code: Select all

epw for LaH10
&inputepw
  prefix      = 'ceh'
  amass(1)    = 140.116
  amass(2)    = 1.00784
  outdir      = './'
  dvscf_dir   = './save'

  ep_coupling = .true.
  elph        = .true.
  epbwrite    = .true.
  epbread     = .false.

!  nest_fn     = .true.

  epwwrite = .true.
  epwread  = .false.
  etf_mem     = 1

  wannierize  = .true.
  nbndsub     =  26
  num_iter    =  0
  dis_froz_max=   35
  dis_froz_min=  -10
  dis_win_max =   60
  dis_win_min =  -10

  proj(1)     = 'Ce:s,p,d,f'
  proj(2)     = 'H:s'


  wdata(1) = '#num_bands = 40'
  wdata(2) = '#exclude_bands=0'
  wdata(3) = 'dis_num_iter=2000'
  wdata(4) = 'bands_plot = .true.'
  wdata(5) = 'begin kpoint_path'
  wdata(6) = 'W 0.50 0.25 0.75  L 0.50 0.50 0.50'
  wdata(7) = 'L 0.50 0.50 0.50  G 0.00 0.00 0.00'
  wdata(8) = 'G 0.00 0.00 0.00  X 0.50 0.00 0.50'
  wdata(9) = 'X 0.50 0.00 0.50  W 0.50 0.25 0.75'
  wdata(10) = 'W 0.50 0.25 0.75  K  0.375 0.375 0.750'
  wdata(11) = 'end kpoint_path'
  wdata(12) = 'bands_plot_format = gnuplot'
  wdata(13) = 'guiding_centres = true'
  wdata(14) = 'bands_num_points = 200'


  iverbosity  = 2

  eps_acustic = 5.0    ! Lowest boundary for the 
  ephwrite    = .true. ! Writes .ephmat files used when wliasberg = .true.

  fsthick     = 0.8  ! eV
  degaussw    = 0.2 ! eV
  nsmear      = 2
  delta_smear = 0.05 ! eV

  degaussq     = 0.5 ! meV
  nqstep       = 500
  vme         = 'dipole'

  eliashberg  = .true.

  laniso = .true.
  limag = .true.
  lpade = .true.

  conv_thr_iaxis = 1.0d-4

  wscut = 1.0   ! eV   Upper limit over frequency integration/summation in the Elisashberg eq

  nstemp       =10
  temps      = 5 35 ! K
  nsiter   = 1000

  muc     = 0.13
 
  nk1         = 6
  nk2         = 6
  nk3         = 6

  nq1         = 6
  nq2         = 6
  nq3         = 6

  mp_mesh_k = .true.
  nkf1 = 48
  nkf2 = 48
  nkf3 = 48

  nqf1 = 24
  nqf2 = 24
  nqf3 = 24
 /
and the output about Solve anisotropic Eliashberg equations here:

Code: Select all

 
 ===================================================================
     Solve anisotropic Eliashberg equations
     ===================================================================


     Finish reading freq file

                  Fermi level (eV) =     2.5782001010E+01
     DOS(states/spin/eV/Unit Cell) =     2.8954906864E-01
            Electron smearing (eV) =     2.0000000000E-01
                 Fermi window (eV) =     8.0000000000E-01
     Nr irreducible k-points within the Fermi shell =      1295 out of      2769

           4 bands within the Fermi window


     Finish reading egnv file 


     Max nr of q-points =      6298


     Finish reading ikmap files


     Start reading .ephmat files


     Finish reading .ephmat files

     Electron-phonon coupling strength =    0.4587312
 
     Estimated Allen-Dynes Tc =     8.972622 K for muc =    0.13000
  
     Estimated w_log in Allen-Dynes Tc =   168.158195 meV
  
     Estimated BCS superconducting gap =     1.360833 meV
  
  
     WARNING WARNING WARNING 
  
     The code may crash since tempsmin =   10.000 K is larger than Allen-Dynes Tc =     8.973 K
    
     temp(  1) =     10.00000 K
    
     Solve anisotropic Eliashberg equations on imaginary-axis
    
     Total number of frequency points nsiw(     1) =    185
     Cutoff frequency wscut =     1.0044
    

     Size of required memory per pool: ~=    5.2878 Gb

     akeri is calculated on the fly since its size exceedes max_memlt

        iter      ethr          znormi      deltai [meV]
          1   2.462030E+00   1.440868E+00   1.403113E+00
          2   1.519336E-01   1.440811E+00   1.527292E+00
          3   4.576394E-02   1.440749E+00   1.641517E+00
          4   5.733057E-02   1.440695E+00   1.738396E+00
          5   4.605527E-02   1.440626E+00   1.824856E+00
          6   3.466987E-03   1.440633E+00   1.817677E+00
          7   3.845701E-02   1.440608E+00   1.883225E+00
          8   7.032996E-03   1.440595E+00   1.899118E+00
          9   3.200790E-04   1.440595E+00   1.900248E+00
         10   6.613649E-03   1.440587E+00   1.912626E+00
         11   1.176867E-02   1.440571E+00   1.936932E+00
         12   7.601820E-03   1.440565E+00   1.948687E+00
         13   8.452147E-03   1.440555E+00   1.964678E+00
         14   1.096421E-02   1.440542E+00   1.984395E+00
         15   5.127340E-03   1.440534E+00   1.995710E+00
         16   7.064633E-03   1.440524E+00   2.011236E+00
         17   4.706108E-03   1.440518E+00   2.020657E+00
         18   4.354436E-03   1.440511E+00   2.029910E+00
         19   5.426781E-03   1.440503E+00   2.041727E+00
         20   6.346036E-03   1.440495E+00   2.054234E+00
         21   3.024673E-03   1.440490E+00   2.060884E+00
         22   4.247492E-03   1.440484E+00   2.069932E+00
         23   7.965218E-03   1.440473E+00   2.085740E+00
         24   4.130876E-03   1.440468E+00   2.094227E+00
         25   3.027403E-03   1.440465E+00   2.099265E+00
         26   2.873748E-03   1.440460E+00   2.105331E+00
         27   2.320267E-03   1.440458E+00   2.109611E+00
         28   3.575410E-03   1.440453E+00   2.116590E+00
         29   4.026626E-03   1.440449E+00   2.122893E+00
         30   2.233534E-03   1.440448E+00   2.125759E+00
         31   4.062403E-03   1.440443E+00   2.133551E+00
         32   5.333335E-03   1.440435E+00   2.143971E+00
         33   8.471323E-03   1.440421E+00   2.164141E+00
         34   5.309213E-03   1.440411E+00   2.176609E+00
         
gkafle1
Posts: 31
Joined: Wed Jun 17, 2020 8:55 pm
Affiliation: Binghamton University

Re: The part of 'Solve anisotropic Eliashberg equations' is so slow

Post by gkafle1 »

Hi Yao Wei,

The input flag "wscut" used in your calculation is for truncating the sum over Matsubara frequency points when solving anisotropic Eliashberg equations.
Usually while solving the anisotropic Eliashberg equations at lower temperatures, it is slow because the truncation is done using more frequency points compared to higher temperatures. If you look at the anisotropic Eliasgberg equations (Margine and Giustino, PRB 87, 024505 (2013)), the factors affecting their solutions are band indices, fine k/q grids, and the frequency index. So, you can try to decrease "wscut" if that is meaningful for your calculation. Or you can also calculate the matrix elements using the smaller "fsthick" window and solve the anisotropic equations. It is always recommended to check the convergence with respect to "fsthick" as well.

I also recommend increasing the number of cores if you can afford it for faster calculations.
But in this situation, I could not use epw to get one complete Tc delta value.
You can always restart the solution of anisotropic equations at different temperatures to get the complete delta distribution and Tc. You can add one more input flag "imag_read = .true." so that it reads delta and znorm from the previous temperature.

Thanks!

Gyanu
Yao Wei
Posts: 5
Joined: Sat Apr 29, 2023 8:40 pm
Affiliation: King's College London

Re: The part of 'Solve anisotropic Eliashberg equations' is so slow

Post by Yao Wei »

thanks for your reply!
Post Reply