Boost logo

Boost Users :

Subject: Re: [Boost-users] [mpi] broadcast performance
From: Júlio Hoffimann (julio.hoffimann_at_[hidden])
Date: 2012-09-06 06:29:55


Brian,

You can think of Boost.MPI as a very well-designed wrapper. All it does is
to call the underlying C (OpenMPI, MPICH, others) implementation when the
types are covered by the MPI standard.

On other hand, i agree with you, maybe would be possible to specialize a
template for std::vector<T> that handles it as a raw buffer. Someone has an
opinion about this?

When i have time, i'll think carefully to see if i can contribute a patch.

Regards,
Júlio.

2012/9/6 Brian Budge <brian.budge_at_[hidden]>

> Okay. I can do that. I was just wondering if there was a trick to
> make it happen under the hood. I'm curious as to why Bcast doesn't
> get called by boost::mpi::broadcast for non-trivial types.
>
> Thanks,
> Brian
>
> On Wed, Sep 5, 2012 at 7:00 PM, Júlio Hoffimann
> <julio.hoffimann_at_[hidden]> wrote:
> > Hi Brian,
> >
> > If i understood correctly, you're actually doing something like:
> >
> > std::vector<char> gigaVec;
> > MPI_Bcast(blah, blah, ..., &gigaVec[0])
> >
> >
> > and want to replace that by boost::mpi::broadcast, is that correct?
> >
> > Just do it the same way, if the type of the container is a MPI type,
> you're
> > guaranteed that the underlying MPI implementation will be called.
> >
> > Regards,
> > Júlio.
> >
> > _______________________________________________
> > Boost-users mailing list
> > Boost-users_at_[hidden]
> > http://lists.boost.org/mailman/listinfo.cgi/boost-users
> _______________________________________________
> Boost-users mailing list
> Boost-users_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/boost-users
>



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net