crest-lab / crest

CREST - A program for the automated exploration of low-energy molecular chemical space.
https://crest-lab.github.io/crest-docs/
GNU Lesser General Public License v3.0
199 stars 42 forks source link

QCG calculations in explicit chloroform solvent #342

Open moabe84 opened 4 weeks ago

moabe84 commented 4 weeks ago

Hi, I’ve been trying to run QCG calculations with 100 explicit chloroform solvent molecules for several compounds, but they keep crashing with various error messages. This might be related to issue #178. I'm using the per-compliled version of CREST 2.12.

Here's the command line for the calculations: _crest mol1.xyz --qcg chloroform.xyz --nsolv 100 --T 120 --ensemble --mdtime 50 --mreset 4 --alpb chloroform --nofix

Below are two examples of the errors:

Structure 1:

input file name : crest_rotamers_0.xyz output file name : crest_rotamers_1.xyz reference state Etot : 1.122118549622869E-310 forrtl: severe (24): end-of-file during read, unit -9811, file /anfhome/mabedi/calc_data/candid/crest_conf_search_explicit_solvent/chloroform/mol_3/qcg_tmp/tmp_MTD/crest_rotamers_1.xyz Image PC Routine Line Source
crest 00000000014D8EA8 Unknown Unknown Unknown crest 000000000150E3AA Unknown Unknown Unknown crest 000000000067B4AA sort_andcheck 1073 confscript2_misc.f90 crest 000000000067A4F8 multilevelopt 674 confscript2misc.f90 crest 000000000066E545 confscript2i 131 confscript2_main.f90 crest 0000000000656FA5 qcgensemble 902 solvtool.f90 crest 000000000064341F crestsolvtool 89 solvtool.f90 crest 000000000069842E MAIN__ 290 crest_main.f90 crest 0000000000402242 Unknown Unknown Unknown crest 00000000017025D0 Unknown Unknown Unknown crest 000000000040210E Unknown Unknown Unknown

Structure 2:

input file name : crest_rotamers_1.xyz output file name : crest_rotamers_2.xyz number of removed by energy : 2499 number of remaining points : 1 reference state Etot : -2048.58723836000
forrtl: severe (174): SIGSEGV, segmentation fault occurred Image PC Routine Line Source
crest 00000000014E866A Unknown Unknown Unknown crest 0000000001700300 Unknown Unknown Unknown crest 000000000055A1C6 cregenconffile 2513 newcregen.f90 crest 0000000000536122 newcregen_ 221 newcregen.f90 crest 000000000067BAB6 sort_andcheck 966 confscript2_misc.f90 crest 000000000067A4F8 multilevelopt 674 confscript2misc.f90 crest 000000000066E545 confscript2i 131 confscript2_main.f90 crest 0000000000656FA5 qcgensemble 902 solvtool.f90 crest 000000000064341F crestsolvtool 89 solvtool.f90 crest 000000000069842E MAIN__ 290 crest_main.f90 crest 0000000000402242 Unknown Unknown Unknown crest 00000000017025D0 Unknown Unknown Unknown crest 000000000040210E Unknown Unknown Unknown

pprcht commented 4 weeks ago

Please use a more current version, we won't modify version 2.12 anymore.

moabe84 commented 4 weeks ago

I initially used the GNU/OpenBLAS static binary (version 3.0.2), but found it much slower compared to version 2.12. Since I have over 100 compounds to process, version 2.12 seems like a more sensible option given the performance. While everything worked fine with water as the solvent, the calculations failed when using chloroform.

pprcht commented 4 weeks ago

Still, we won't modify 2.12, the code is outdated.

You may have observed a parallelization slowdown of 3.0.2 compared to older version because of the -T 120. Versions >3.0 use actual shared memory processes rather than hosting independent xtb instances. It is likely causing all sorts of communication overhead, memory bandwidth saturation and cache contention when requesting that many threads.