MP2 Gradient ERI Storage


Just Got Here
Hello,

Is there any alternative to storing 2 electron integrals on disk when calculating MP2 gradients? Ideally, I would like to cache them in physical memory and avoid disk IO altogether (as is possible in the SCF module with directive "semidirect filesize 0 memsize xxxxxx"). If I try to specify "scratchdisk 0" in the mp2 input deck, unsurprisingly, I receive an "insufficient resources" error.

The reason I wish to avoid IO is that I'm running an application on an HPC system that calls several instances of NWChem in parallel. On this particular system, there is abundant physical memory (64 GB/node) but scratch disk IO is quite slow due to the virtual filesystem. I am seeing Walltimes almost double the CPU time in these fragment MP2 gradient calculations. Any suggestions on getting around this bottleneck, or is coding a numerical gradient my best bet here?

Thanks for your advice.

Forum Regular
Hi,

Apparently there is a way to configure NWChem to use memory for the integrals. This requires compiling NWChem with some special settings. Edo can provide details on this.

Best wishes, Huub

Forum Vet
MSalim
If you download the current development version from the SVN repository with the command

svn checkout https://svn.pnl.gov/svn/nwchem/trunk nwchem

You will be able to install a memory cached version of the MP2 if you set the env. variable
USE_NOIO=1
during the compilation.

No input change is needed for mp2, other than the recommendation of supplying large amount of stack + heap memory.

Cheers, Edo


Forum >> NWChem's corner >> NWChem functionality