I have an issue running an EDA calculation on Q-chem 5.4. I receive the following error message that states “Some of your processes may have been killed by the cgroup out-of-memory handler”. I have since then edit my value on the MEM_TOTAL $rem keyword to be the max allowable value on the supercomputer that I am using. Additionally, I removed the MEM_STATIC keyword as well. In all the cases I continue to receive the same error message.
The calculation I am performing uses a def2-TZVP basis set with PW6B95 DFA under DCM solvent. The geometry consist of 125 atoms. Is this an issue with the supercomputer or can I do something in the Q-chem file to work around this error message?
That error (from the OS or the batch scheduler) usually means that the program requested more memory than is available, either due to the hardware memory limit or the resource request in the batch script. If Q-Chem is requesting more than the available amount of memory, then changing MEM_TOTAL won’t help. (Too small MEM_TOTAL might generate instead a Q-Chem error, but that’s different.) You should make sure your batch script (PBS, SLURM, etc.) is not requesting something less than the available physical memory. In addition, how many basis functions and what is the solvent model? SM8 and SM12 models have a fairly sizable memory requirement for the gradient, 6 x NAtoms x (no. sig. basis function pairs) in double-precision elements. SMD does not have this limitation.
If you post a complete input file (please use preformatted text block, </>) then I can try to run it with a more recent version of Q-Chem. However, it sounds to me like you are exceeding the memory available on your system, which might be less than the value of MEM_TOTAL.
This runs without a problem on my hardware (using latest Q-Chem trunk), even if I reduce MEM_TOTAL by a factor of 2. This feels to me like a hardware or OS / batch scheduler issue on your end, although it’s possible that v5.4 is behaving differently somehow. If you can’t figure it out, please contact Q-Chem user support.
Could you remove MEM_TOTAL altogether? Typically, a EDA job should not take too much memory unless the basis set has high angular mometum, say g, h…etc. Should the job crash, the mininum memory requirement will be printed in the output.