lanl / PENNANT

Unstructured mesh hydrodynamics for advanced architectures
Other
20 stars 30 forks source link

Fix crashes in WriteXY::write() and gathervImpl(). #10

Closed samuelkgutierrez closed 3 years ago

samuelkgutierrez commented 3 years ago

Fix crashes when the number of MPI processes is greater than 1. The problem appears to come from taking the address of the first element of zero-length std::vectors during collective operations. The problematic arrays are located on MPI processes with MPI_COMM_WORLD_RANK != 0.

samuelkgutierrez commented 3 years ago

@Lcjacobpd, this may be of interest to you.

samuelkgutierrez commented 3 years ago

I just realized that there is potentially a cleaner way of dealing with this issue. Let me see if I can write that version up. Please hold off on merging this request until further notice.

samuelkgutierrez commented 3 years ago

I just realized that there is potentially a cleaner way of dealing with this issue. Let me see if I can write that version up. Please hold off on merging this request until further notice.

Scratch that. It wasn't a clearer solution after all. Sorry about the noise. Please consider the original pull request.

cferenba commented 3 years ago

Looks good to me. This is another case of "How did this go so long without being noticed?"

samuelkgutierrez commented 3 years ago

Looks good to me. This is another case of "How did this go so long without being noticed?"

Thank you, @cferenba. I agree!