Closed HehnLukas closed 6 months ago
Thanks for reporting the problem.
First of all, when you do DMRGSCF calculations using block2
, please carefully read and follow the examples given in the block2
documentation: https://block2.readthedocs.io/en/latest/user/dmrg-scf.html#dmrgscf-serial . In particular, the following parts of your script may be revised:
dmrgscf.settings.BLOCKEXE = os.popen("which block2main").read().strip()
dmrgscf.settings.MPIPREFIX = ''
If you are using multiple nodes, add the following explicitly in this script:
dmrgscf.settings.BLOCKEXE = os.popen("which block2main").read().strip()
dmrgscf.settings.MPIPREFIX = 'mpirun -n <number of nodes> --bind-to none'
where <number of nodes>
should be the actual number of nodes. --bind-to none
cannot be omitted.
lib.param.TMPDIR
exists and it is an absolute path, which should be done at the beginning of your Python script or in your bash script:import os
lib.param.TMPDIR = os.path.abspath(lib.param.TMPDIR)
if not os.path.exists(lib.param.TMPDIR):
os.makedirs(lib.param.TMPDIR)
If you are running multiple jobs simultaneously, you also need to make sure each job has a distinct lib.param.TMPDIR
.
mc.fcisolver.runtimeDir
and mc.fcisolver.scratchDirectory
to be the same folder explicitly in this script:mc.fcisolver.runtimeDir = lib.param.TMPDIR
mc.fcisolver.scratchDirectory = lib.param.TMPDIR
mc.fcisolver.threads
:mc.fcisolver.threads = 64
If the problem persists after the above is done, you may post your new revised script here, and see https://github.com/block-hczhai/block2-preview/issues/28#issuecomment-1368245655.
Note that this is probably the problem of the usage of subprocesses
in pyscf/dmrgscf
. This is not an issue of block2
(the error happens before block2
is actually invoked).
Hello,
I have encountered a strange issue with block 2 and pyscf 2.4.0, and I am not sure which the issue comes from. When I run a simple DMRG calculation with the following code, the calculation fails if I include the imports of cc or ci, but runs normally when I remove those. The order of the imports does not seem to matter.
(I also posted this on the PYSCF github: https://github.com/pyscf/pyscf/issues/2168
This is the message I get on failure:
While without the imports it runs normally: