Memory Consumption CISD/CCSD


Click here for full thread
Just Got Here
Hello everybody.

I have been assigned the task to design a small lab for our students using post-HF methods. The available workstations have only 8 GBytes of memory, so I am first trying to find out which size of computations are possible at all.

I noticed that I can run a CCSD total energy calculation on a methanediol molecule with a cc-pVTZ basis set (165 basis functions) in core (without writing the integrals to disk) using this input:

 title "Methanediol" 
START
scratch_dir /mnt/local/run
permanent_dir /mnt/local/run
memory total 7800 mb noverify
geometry units atomic autosym
O 2.087648 0.000000 0.732536
O -2.087648 0.000000 0.732536
H 1.737757 0.000000 2.483784
H -1.737757 0.000000 2.483784
C 0.000000 0.000000 -1.158285
H 1.618298 0.000000 -2.586301
H -1.618298 0.000000 -2.586301
end
basis
* library cc-pvtz
end
scf
singlet
rhf
end
tce
scf
ccsd
2eorb
2emet 1
end
task tce energy

The calculation uses about 2.5 GByte (RSS) memory according to top.

However, I have not been able to complete a CISD calculation using the cc-pVTZ basis. As far as I understand the documentation the "2eorb" option only works for CC type calculations, in fact using it with CISD leads to an abort once the CI iterations start. Removing "2eorb", i.e.

tce  
scf
cisd
2emet 1
end

also aborts, I assume due to lack of memory. Just to test another size: Using a aug-cc-pvdz basis with 111 basis functions completes without 2eorb and "2emet 1".

With the cc-pvtz basis the only working input so far is "2emet 2" and "2emet 3", e.g.

tce  
scf
cisd
2emet 3
end

which of course leads to some massive disk access, it is scrubbing the disk for about 4 hours. One of the integral files on disk is 12 GByte in size while the other is 2 GByte in size, so using a tmpfs (ramdisk) is no option either.

I have been playing with the "memory" directive but with no luck, there is apparently really not enough available memory.

Still, before giving up on this: can I do something to fit the original cc-pvtz/CISD calculation into memory or to minimize disk access further ? Somehow I would like to pack the 2 GByte temporary file into memory :-) Especially after noticing that CCSD works in-core.


Best Regards

Christof