Newsgroups: comp.parallel.mpi
From: Richard Barrett <rbarrett@lanl.gov>
Subject: Re: Reproducible MPI_reduce() algorithms?
Organization: Los Alamos National Laboratory
Date: Tue, 24 Feb 1998 09:08:56 -0700
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-ID: <34F2F098.428@lanl.gov>

Jing,

>1)  Is there documented knowledge about the reproducibility of, 
>    e.g., MPI_reduce(...MPI_REAL,MPI_SUM,...), using the _same_ number 
>    of PEs, for known MPI implementations?

When I asked this question of a few implementors (IBM, SGI, Intel,
MPICH) 
when their initial implementations came out, the answer I got from each
was
that determinism was assured given the same number of pes. Documented?
No,
but it is probably in their interest to do this to avoid customer
complaints.
Maybe write a little test program to run on new implementations to prove
it
to yourself.

>  2)  How difficult is it to implement a floating-point reduction 
>    algorithm to ensure reproducibility with _different_ numbers of 
>    PEs?  Or where can one get those 

Write your own function (JING_MIN, JING_SUM, etc) to pass into
MPI_Reduce,
and ensure it yourself. Just have the calculation process(es) store
all the local results in an array, and perform the operation on the set
in a consistent manner.

Richard

