vscf cycle crashing: could not allocate l XTRIPV


Clicked A Few Times
Dear all,
I'm trying to run geometry optimization + anharmonic IR spectra calculation (VSCF), however, my calculation crashes each time, with the same error. I was running locally (laptop, running on 2 or 3 cores, with up to ~6GB of memmory) as well as on cluster (running on 8 cores, intel xeon E5-2560 with 32GB available memory). For my last trial I tried to ran geometry optimization at first and then I restarted the VSCF from that calculation:
first input:
start molecule

title "4-methylphenol energy minimization + IR spectra calculation"


geometry units au print xyz autosym
  H        2.1914962952     -1.3970666668      4.0452931182
  C        1.1916909601     -1.1912840194      2.2621624211
  C       -1.4404087723     -1.0848983897      2.2484753194
  H       -2.4685486028     -1.2113941558      4.0233068722
  C       -2.7504683434     -0.8191583664     -0.0267491475
  C       -1.4028719221     -0.6693058347     -2.2904910771
  H       -2.3998520450     -0.4698363912     -4.0763004662
  C        1.2289365600     -0.7755211424     -2.2785672438
  H        2.2660822471     -0.6562602010     -4.0487647648
  C        2.5289935452     -1.0354644464     -0.0029920510
  O        5.1025300015     -1.1387462849     -0.0042002229
  H        5.7249113246     -1.3216303357      1.7179294076
  C       -5.6180827238     -0.7112484207     -0.0411499468
  H       -6.3027378902      0.4340354462     -1.6165218529
  H       -6.4043034486     -2.6105107571     -0.2275809157
  H       -6.3318469849      0.1199546563      1.7086311207
end

basis
 * library 6-31+G*
end

dft
 xc b3lyp
 CONVERGENCE density 1e-8
 CONVERGENCE energy 1e-8
 GRID lebedev 90 14 ssf euler
end

driver
 tight
 EPREC 1e-8
 GRMS 0.000004
 MAXITER 100
 XYZ geomSteps
end

task dft optimize


second input (I copied the results of the previous input to new directory) was the same with added last line:
task dft vscf

output of the geometry optimization seems to be OK. Also, for previous calculations I specified (those running on cluster):
MEMORY total 3600 MB
which should result in ~28GB available memory. However, I could see, that threads use up to ~500MB of memory (even during the VSCF).
the error I obtain is:
vib:animation  F
 ------------------------------------------------------------------------
 vscfm: could not allocate l_XTRIPV                 555
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
  current input line :
    45: task dft vscf
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
 For more information see the NWChem manual at
 http://nwchemgit.github.io/index.php/NWChem_Documentation


 For further details see manual section:




 vscfm: could not allocate l_XTRIPV                 555
 vscfm: could not allocate l_XTRIPV                 555
 ------------------------------------------------------------------------
 vscfm: could not allocate l_XTRIPV                 555
 ------------------------------------------------------------------------
 vscfm: could not allocate l_XTRIPV                 555
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
 vscfm: could not allocate l_XTRIPV                 555
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
 vscfm: could not allocate l_XTRIPV                 555
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
  current input line :
 vscfm: could not allocate l_XTRIPV                 555
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
  current input line :
     0:
 ------------------------------------------------------------------------
  current input line :
     0:
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
  current input line :
     0:
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
  current input line :
     0:
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
 ------------------------------------------------------------------------
 For more information see the NWChem manual at
 http://nwchemgit.github.io/index.php/NWChem_Documentation



(I'm trying to reproduce results done in Gaussian, published by other authors.) I'm don't know if the memory is really insufficient or there are some other problems.
Also, I'm new in the NWChem.
Thank you for help.
stanislav

Forum Regular
l_XTRIPV refers to a local array that needs (NNM^3)*(NGRID^3) doubles, where NNM refers to the number of normal modes (i.e. 3*(number of atoms)-6 for non-linear molecule) and NGRID refers to the number of grid points along each normal mode (default 16). Based on the size of your molecule, it would appear that you need a little over 2 GB of stack memory for that array. With a memory specification of

memory stack 2600 heap 200 global 800 mb

I was able to get the VSCF calculation running on the input you provided above.

Best,
Sean

Clicked A Few Times
Thank you, for now it is running. I was setting stack to significantly lower values. However, I see, that memory consumption is again ~500MB per thread, which is far less than required amount (which is as far as I understand 3600MB per thread). Is that that the required & checked amount is "worst case" scenario which is rarely fulfilled?
Best,
stano.

Forum Regular
Yes, it appears the code will allocate enough memory for computing up to three mode couplings regardless of the requested level of mode coupling (hence the size of the array that was causing problems). I don't know the history of this module, so I'm not sure why it was implemented that way.

Best,
Sean


Forum >> NWChem's corner >> Running NWChem