Use MPI_Allreduce for error code checking#595
Use MPI_Allreduce for error code checking#595wkliao wants to merge 2 commits intoE3SM-Project:masterfrom
Conversation
|
@dqwu : Let us discuss this change before merging it into master (performance impact, should this be tied to the user error handler etc) |
|
Actually, when PnetCDF is used, all the MPI communications, bcast or allreduce. I can make more changes to this PR. |
|
I think using MPI_Bcast for inquired arguments is necessary when However, when all MPI tasks are I/O tasks, those MPI_Bcast calls used When other I/O methods is used, I think Allreduce is the right way |
|
@wkliao : Is it possible to get meta-data consistency with PnetCDF across all MPI processes while using a subset of these processes for all read/write operations (meta-data/file_header is available for all processes in MPI_COMM_WORLD, or a parent mpi comm, for ex while you use a subset MPI Comm for read/write)? |
|
The metadata consistency applies to the MPI processes in the If Scorpio created a sub-communicator and used it to call file create/open, |
This is to fix #520