I have encountered a problem for a long time.
In my python program using mpi4py, I need to spawn processes that call an external executor ('solver') as follows.
with open('log', 'wb') as outfile:
p = subprocess.run(['./solver'], stdout=outfile, check=True)
The problem is the code always going through the code, without really running the external executor. It gives the following error message.
subprocess.CalledProcessError: Command '['./solver']' returned non-zero exit status 15.
Rr if I use os.system('./solver'), it gets stuck
If not using mpi4py, for example, using multiprocessing, there is no problem. The solver itself does not use mpi.
I work under Linux.
Could anyone give a solution? Thank you.