LIBDPD error during CCSD


I was trying to do a CCSD run and got some issues.
First it crashed, probably during the integral transform with a PSIO_ERROR… scratch is on main disk and there are 2.4 TB free, fully accessible. Tough luck…

I then set cachelevel 0 and it went a bit further in the making of the temp files, and then crashed with a LIBDPD: Out-of-core algorithm not implemented.

Any suggestion on how to get past this?



The second error message is due to the fact that we don’t have an out-of-core algorithm for some tensor contraction functions inside libDPD.
Regarding the first crash, How much memory are you asking for in the input file? In our experience, providing ‘lesser’ memory has fixed these kinds of issues before. So, maybe you can try lowering down your memory to see if it changes something.

I tried with 24 GB, 40 GB and commenting that line out. The machine has 48 GB total. Should I go smaller?

Could you please provide the input file. Also, which version of psi4 are you currently using?

Of course. Yesterday I did a git pull origin master, recompiled and ran the same script.

Here is the input file:

# memory 24 GB # tested with 24, 48 and no setting

molecule somemol {
units angstrom
symmetry c1
F -2.1506 2.1234 -0.0003
O -1.6677 -2.0089 0.0008
O 5.6122 1.7329 0.0023
O 3.6201 2.8275 -0.0007
N -0.5502 -0.0677 -0.0020
N -0.3073 -2.3425 0.0005
C 1.7129 -0.9906 -0.0010
C 0.2853 -1.1455 -0.0007
C -3.0395 -0.0825 -0.0008
C -1.7221 -0.6512 -0.0011
C 2.2765 0.2854 -0.0010
C 3.6633 0.4354 -0.0001
C 2.5362 -2.1166 -0.0001
C 4.4865 -0.6906 0.0008
C 3.9229 -1.9666 0.0007
C -3.2134 1.3056 -0.0007
C -4.1629 -0.9160 0.0003
C -4.4959 1.8537 0.0005
C -5.4456 -0.3679 0.0012
C -5.6121 1.0170 0.0015
C 4.2513 1.7656 0.0000
H 1.6437 1.1702 -0.0015
H 2.1335 -3.1264 0.0002
H 5.5706 -0.6199 0.0015
H 4.5638 -2.8435 0.0015
H -4.0757 -1.9998 0.0003
H -4.6255 2.9320 0.0008
H -6.3150 -1.0189 0.0020
H -6.6107 1.4439 0.0024
H 5.9989 2.6344 0.0029

set basis cc-pvdz
set reference rhf
set scf_type direct
set maxiter 500
set cc_num_threads 24 # the node as 12 cpus + 12 hyperthreading
set freeze_core true
set print 3
set cachelevel 1 # tested with 0, 1 and default

ccwf = properties(‘ccsd’, properties=[‘dipole’], return_wfn=True)
print “CCSD energy:”,

In the past I used ccwf = gradient(‘ccsd’, return_wfn=True), and no frozen core, in order to trigger the update of the CCSD density matrix in AO basis and saved it afterwards. I computed 134k small molecules that way and it worked.

Now I needed to test on different molecules and I was trying this drug-like one from pubchem. The same old script failed so I added the frozen core and changed to:

ccwf = properties(‘ccsd’, properties=[‘dipole’], return_wfn=True)

avoiding gradients, but hoping that the computation of some one-electron properties would trigger the DM update again. This script also crashed.

the first thing found in the output is:
Git: Rev {master} f03a896

The last thing seen in the output is:

    Two-electron integral transformation complete.
    Frozen core energy     =  -1576.13704370980190

    Size of irrep 0 of <ab|cd> integrals:   5006.412 (MW) /  40051.292 (MB)
    Total:                                  5006.412 (MW) /  40051.292 (MB)

    Size of irrep 0 of <ia|bc> integrals:    978.697 (MW) /   7829.576 (MB)
    Total:                                   978.697 (MW) /   7829.576 (MB)

    Size of irrep 0 of tijab amplitudes:     191.324 (MW) /   1530.594 (MB)
    Total:                                   191.324 (MW) /   1530.594 (MB)

LIBDPD: Out-of-core algorithm not yet coded for sqrp sort.
Error in: buf4_sort

Thanks for the detailed info. In psi4, the two electron integrals of different classes: 4 occupied (ij|kl), 4 virtuals (ab|cd) etc. are sorted from the chemist to physicist notation for use in coupled cluster modules. The error appears in the ‘sqrp’ sorting which is used to sort E type of integrals (3 occupied-1virtual). However, E type integrals require relatively less memory and will be stored in cache since you set the cache level to 1. In most of the cases, PSI4 can do an in-core ‘sqrp’ sort for these integrals. In your case, psi4 is unable to do so and goes for the out-of-core sorting which has not been implemented. So, it appears that psi4 requires more memory. Do you get the same error message when you provide 24, 48 gb memory ?

I gave it 24 GB and cachelevel 1 andd it seems the calculation advanced to the CCENERGY… seems it is solving the equations.
Thanks for your support! will let you know if there are more issues.