I traced the freezes to SyncBuffer at high firing rates or high synchrony. In most cases it seems as if some processes do not recover from MPI_Allgather when resending the buffer after an overflow. To reproduce run
mpirun -n 4 ./sim_background --dir /tmp --wee 0.17
or for instance
mpirun -n 4 ./sim_poisson --kappa 20000
Note, that -n 2 seems to work and 3 or 5 cause other weird problems. Looks like a bug in openmpi. When compiled against MPICH these problems do not occur.