<meta http-equiv="Content-Type" content="text/html; charset=utf-8"><div dir="ltr">I am trying to understand how communicator attributes work, so I found <a href="http://stackoverflow.com/questions/25198353/callbacks-provided-in-mpi-comm-create-keyval-are-not-called">http://stackoverflow.com/questions/25198353/callbacks-provided-in-mpi-comm-create-keyval-are-not-called</a>, which contains a nice example (the code in <a href="http://stackoverflow.com/a/25205611/2189128">http://stackoverflow.com/a/25205611/2189128</a>).<br><br>However, the posted output of this code is:<br><br>$ mpirun -np 1 ./comm-attr<br>In ibcast_copy: keyval = 10<br>In ibcast_delete: keyval = 10<br>In ibcast_delete: keyval = 10<br><br>Whereas I observe:<br><br>$ mpirun -np 1 ./a.out<br>In ibcast_copy: keyval = -1539309568<br>In ibcast_delete: keyval = -1539309568<br><br>Can anyone help me understand what the correct output of this program is?  If it is not what I am seeing, is this a bug in MPICH or am I doing something wrong?<div><br></div><div>I am using MPICH git from November 2015, so I will git pull && ./autogen.sh && $CONFIGUREMAKEINSTALL and try again just to be sure.<br><div><br>Thanks,</div><div><br>Jeff<br><br>$ mpirun --version<br>HYDRA build details:<br>    Version:                                 3.2<br>    Release Date:                            unreleased development copy<br>    CC:                              icc    <br>    CXX:                             icpc    <br>    F77:                             ifort   <br>    F90:                             ifort   <br>    Configure options:                       '--disable-option-checking' '--prefix=/opt/mpich/dev/intel/default' 'CC=icc' 'CXX=icpc' 'FC=ifort' 'F77=ifort' '--enable-cxx' '--enable-fortran' '--enable-threads=runtime' '--enable-g=dbg' '--with-pm=hydra' '--enable-wrapper-rpath' '--enable-static' '--enable-shared' '--cache-file=/dev/null' '--srcdir=../../../../src/pm/hydra' 'CFLAGS= -g -O2' 'LDFLAGS=' 'LIBS=-lpthread ' 'CPPFLAGS= -I/Users/jrhammon/Work/MPI/MPICH/git/build/src/mpl/include -I/Users/jrhammon/Work/MPI/MPICH/git/src/mpl/include -I/Users/jrhammon/Work/MPI/MPICH/git/src/openpa/src -I/Users/jrhammon/Work/MPI/MPICH/git/build/src/openpa/src -D_REENTRANT -I/Users/jrhammon/Work/MPI/MPICH/git/build/src/mpi/romio/include'<br>    Process Manager:                         pmi<br>    Launchers available:                     ssh rsh fork slurm ll lsf sge manual persist<br>    Topology libraries available:            hwloc<br>    Resource management kernels available:   user slurm ll lsf sge pbs cobalt<br>    Checkpointing libraries available:       <br>    Demux engines available:                 poll select<br><br><br>--<br>Jeff Hammond<br><a href="mailto:jeff.science@gmail.com">jeff.science@gmail.com</a><br><a href="http://jeffhammond.github.io/">http://jeffhammond.github.io/</a><br><div>
</div></div></div></div>