mir-group / phoebe

A high-performance framework for solving phonon and electron Boltzmann equations
https://mir-group.github.io/phoebe/
MIT License
85 stars 19 forks source link

Bugfix: segfaults related to MPI_Ireduce calls in interaction_elph #194

Closed jcoulter12 closed 1 year ago

jcoulter12 commented 1 year ago

Summary:

In at least some newer versions of OpenMPI, when using MPI pools, it's possible to see seg faults from the interaction_elph class coming from bcast calls invoking the intraPool MPI communicator.

It appears this issue is related to the use of the non-blocking collective call MPI_Ireduce -- therefore, we swap this with MPI_Reduce to fix the issue.

Major thanks to @anjohan for helping to figure this out.

Additionally, this PR contains: