Running psydac on the CoolMUC2 cluster with 112 processes (on two nodes, basically each thread -> MPI process...), the matplotlib import from the gelato.utils file caused some errors, since apparently matplotlib somehow caused all processes on one processor to serialize, and subsequently to timeout and throw a Python error.
Removing the only GeLaTo reference, a gelato.expr import from psydac (see https://github.com/pyccel/psydac/blob/a87c616b6d72066275207e26efc440457e5c7266/psydac/api/ast/glt.py#L39 ) removed this problem. Thing is, gelato.utils is neither explicitly imported nor needed in the code, but somehow seems to be imported anyways when importing gelato.expr.
The solution might be to change the gelato.__init__.py to not import all subfiles, or alternatively to move the matplotlib import inside the function where it is used.