Fix a not enough memory error in ORCA under Windows

Using ORCA under Windows is painful. However, this does not dim the light of ORCA. Today I met a “not enough memory” error. The following are the details.

Phenomenon: The ORCA 3.0.3 Windows 64-bit version was used under Windows 8.1. The calculation was run in single-process mode (I can’t make the parallel version work 😢). Since the auxiliary basis set def2-QZVPP/C was used, MP2 should be calculated. But a error occurred:


RI-MP2 ENERGY

Dimension of the basis … 1685
Memory devoted to MP2 … 256 MB
Data format for buffers … DOUBLE
Compression type for matrix containers … UNCOMPRESSED
Scaling for aa/bb pairs … 0.000e+000 Eh
Scaling for ab pairs … 1.000e+000 Eh
Overall scaling of the MP2 energy … 2.690e-001 Eh
Calculating two index integrals … done ( 1.631 sec)
Error (ORCA_MP2/RI): not enough memory to calculate the Cholesky decomposition of the V**(-1) matrix (need 426.7 MB)

Analyzing: It seems that the amount of needed memory is not that huge. Why it failed? How about giving it more memory?

Solution: Increasing the MaxCore for MP2 did fix the problem. The corresponding input file looks like:

1
2
3
%mp2
MaxCore 1500
end

中文版

在Windows下使用ORCA挺无奈的,既便如此也无法掩盖ORCA的光芒。今天遇到并解决了一个「内存不够」的问题,分享出来。

现象ORCA 3.0.3 Windows 64位版,操作系统Windows 8.1,单进程计算(不知哪里有问题我一直没法在Windows下并行计算😢),因为用到了辅助基组def2-QZVPP/C,需要算MP2,但计算到这里就出错了,错误提示是:


RI-MP2 ENERGY

Dimension of the basis … 1685
Memory devoted to MP2 … 256 MB
Data format for buffers … DOUBLE
Compression type for matrix containers … UNCOMPRESSED
Scaling for aa/bb pairs … 0.000e+000 Eh
Scaling for ab pairs … 1.000e+000 Eh
Overall scaling of the MP2 energy … 2.690e-001 Eh
Calculating two index integrals … done ( 1.631 sec)
Error (ORCA_MP2/RI): not enough memory to calculate the Cholesky decomposition of the V**(-1) matrix (need 426.7 MB)

分析:看起来需要的内存并不多,但怎么就出错了呢?如果我给它多一点内存会不会好呢。

解决:尝试增大MP2计算可用的内存就解决这个问题了,输入文件中相关的部分是:

1
2
3
%mp2
MaxCore 1500
end