[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[mpi-21] MPI::BOTTOM
- To: mpi-21@xxxxxxxxxxxxx
- Subject: [mpi-21] MPI::BOTTOM
- From: Jeff Squyres <jsquyres@xxxxxxxxx>
- Date: Tue, 27 Nov 2007 15:27:00 -0600
- Authentication-results: sj-dkim-1; header.From=jsquyres@cisco.com; dkim=pass ( sig from cisco.com/sjdkim1004 verified; );
- Delivered-to: mpifrm-mpi-21-outgoing@mailbouncer.mcs.anl.gov
- Delivered-to: mpifrm-mpi-21@mailbouncer.mcs.anl.gov
- Dkim-signature: v=0.5; a=rsa-sha256; q=dns/txt; l=975; t=1196198841; x=1197062841; c=relaxed/simple; s=sjdkim1004; h=Content-Type:From:Subject:Content-Transfer-Encoding:MIME-Version; d=cisco.com; i=jsquyres@cisco.com; z=From:=20Jeff=20Squyres=20<jsquyres@cisco.com> |Subject:=20MPI=3A=3ABOTTOM |Sender:=20; bh=/EbG+LlHKhyOplmprygK09/A57IosrrZORK3YMWdM3g=; b=sDmNGaDLyJURdpncg+pNgXQ8qndSlRRDScpa416KQjXTwMOR38hTgZe9DDkDqPH/ti8CT4Km cABcBOr+i1T5S85XZdFo3Nh60vQxyHwSrg66gHvWeB5e6gt8TwH2aKj56lp+5B2/yGGqMaN8rX QjIPGeGkimxilV9JuD2UfaR+g=;
- Reply-to: mpi-21@xxxxxxxxxxxxx
- Sender: owner-mpi-21@xxxxxxxxxxxxx
A user recently raised an issue that I just looked into and discovered
a problem with the C++ binding for MPI::BOTTOM.
In the spec, MPI::BOTTOM is defined to be of type (const void*).
However, all receive buffers are defined to be of type (void*) -- such
as for the various flavors of point-to-point receive, the receive
buffer for collectives, etc. This means that you'll get a compiler
error when trying to use MPI::BOTTOM as a receive buffer:
bottom.cc:81: error: invalid conversion from ‘const void*’ to ‘void*’
bottom.cc:81: error: initializing argument 1 of ‘virtual void
MPI::Comm::Bcast(void*, int, const MPI::Datatype&, int) const’
A user can cast away the const-ness of MPI::BOTTOM, but that seems
inelegant/wrong.
I don't yet have a solution to this problem; I raise it here so that
it gets added to the list of issues to be addressed in MPI-2.1.
--
Jeff Squyres
Cisco Systems