Thank you for the excellent software!

Not a critical issue, by any means, but just bringing to your attention that the man pages in 4.0.0 look like something didn't go quite right during generation; it has the function signature for QMPI_Send() rather than MPI_Send() and some extra preprocessor statements.

[ From 4.0.0 .tar.gz from mpich.org ]
MPI_Send(3)                           MPI                          MPI_Send(3)

NAME
       MPI_Send -  Performs a blocking send

SYNOPSIS
       #ifdef ENABLE_QMPI
       #ifndef MPICH_MPI_FROM_PMPI
       int QMPI_Send(QMPI_Context context, int tool_id, const void *buf, int count, MPI_Datatype datatype,
       int dest, int tag, MPI_Comm comm) MPICH_API_PUBLIC
[...]

[ From 3.4.3 .tar.gz from mpich.org ]
MPI_Send(3)                           MPI                          MPI_Send(3)

NAME
       MPI_Send -  Performs a blocking send

SYNOPSIS
       int MPI_Send(const void *buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm)
[...]

You can see this in the mpich-hosted man pages, too: https://www.mpich.org/static/docs/latest/www3/MPI_Send.html

Thanks,
  - Eric