nerscadmin / IPM

Integrated Performance Monitoring for High Performance Computing
http://ipm-hpc.org
GNU Lesser General Public License v2.1
81 stars 35 forks source link

MPI_DATATYPE_NULL causes crash #41

Open brianmaustin opened 3 years ago

brianmaustin commented 3 years ago

The following call to MPI_Allreduce causes IPM to crash: call MPI_Allgather(MPI_IN_PLACE, 0, MPI_DATATYPE_NULL, hostnames(1), host_len, MPI_BYTE, MPI_COMM_WORLD, mpierr)

with this error message: Rank 1 [Mon Nov 9 14:39:00 2020] [c5-0c0s15n1] Fatal error in PMPI_Type_size: Invalid datatype, error stack: PMPI_Type_size(119): MPI_Type_size(MPI_DATATYPE_NULL) failed

This is valid MPI; the sendtype argument (MPI_DATATYPE_NULL in the preceding example ) should be ignored when MPI_IN_PLACE is used. I suppose the "right" solution is for IPM to ignore the sendtype, too. A second "fix" that might be useful in other senarios is to make IPM recognize MPI_DATATYPE_NULL.