<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>