Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: Re: [OMPI users] Windows: MPI_Allreduce() crashes when using MPI_DOUBLE_PRECISION
From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2011-05-09 10:17:02


On May 9, 2011, at 6:57 AM, hi wrote:

> Test program works fine; but you can notice the difference between the
> callstack images of test program and of my actual application.
>
> In test program it calls mca_coll_self_allreduce_intra while in my

It doesn't for me...?

The "self" in there refers to the fact that this is a collective on MPI_COMM_SELF (or a dup of it). If you run with np -1, MPI_COMM_WORLD is effectively a dup of MPI_COMM_SEFL.

Hence, it's essentially a no-op.

> application it calls mca_coll_basic_allreduce_intra.

The "basic" in there means that this is not a no-op and it needs to do something.

I ran your test program with -np 2 and -np 4 and it seemed to work ok.

> So I want to know which parameter or setting makes call to
> mca_coll_basic_allreduce_intra compared to
> mca_coll_self_allreduce.intra; if you can comment on this would be
> helpful.
>
> Just for more information:
> op->o_func.intrinsic.fns[27] points to 0 when using
> MPI_Allreduce(...,...,...,MPI_DOUBLE_PRECISION, MPI_SUM,...,...)

You didn't answer my prior questions. :-)

Also note that the op pointers are not set by communicator -- they're fixed for all uses of that op.

-- 
Jeff Squyres
jsquyres_at_[hidden]
For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/