Newsgroups: comp.parallel.mpi
From: sundar@aleutian.cis.ohio-state.edu (N Sundar)
Subject: Re: MPI_Alltoall() on Cray T3D
Organization: The Ohio State University, Department of Computer and Information Science
Date: 12 Nov 1996 20:22:22 -0500
Message-ID: <56b7seINNraq@aleutian.cis.ohio-state.edu>

In article <32861957.7882@cps.msu.edu>,
Jinsheng Xu  <xujinshe@cps.msu.edu> wrote:
>N Sundar wrote:
>> 
>> MPI provides a call called MPI_Alltoall() that performs complete
>> (all-to-all personalized) exchange. We are using it on the Cray T3D,
>> which has an MPI implementation from EPCC, Edinburg (sp?), U.K.
>> Does anybody out there know what algorithm is used by this
>> implementation to perform all-to-all? Alternatively, are there any
>> pointers to this?
>> 
>> Thanks in advance.
>> Sundar.
>> --
>> ------------+----------------Disclaimer: These are my opinions only.
>> N. S. Sundar!    I am ardently against all awkward, affected,
>> GTA,CIS,OSU.!    arbitrary and aimless alliteration.
>> INTJ        !    WWW: http://www.cis.ohio-state.edu/~sundar/
>
>Good question. I also want to know whether this call is more
>efficient than several send and receive calls which have
>the same functionality as MPI_Alltoall(). 

We did a SHMEM implementation of the Direct Exchange algorithm [1]
on the Cray T3D. That performed better than the available
implementation of MPI_Alltoall(). Unfortunately, this data won't
be published by us anytime soon. 

>MPI_Alltoall() call has many restrictions.
>For example, send and receive buffer have to be continuous and
>the receive message size has to be specified. It's very bad
>if the receiver doesn't know the message size of the sender.

True. The only application I know of where the receiver does not
have this knowledge is parallel sample sort. I'd like to hear from
people if any other application shares this characteristic. In
general, if an application requires all-to-all scatter with variable
block sizes, the receiver would not know what is the size of the
incoming message, unless the message sizes were previously distributed
with another all-to-all exchange.

References
==========
[1] D. S. Scott.  "Efficient All-to-All Communication Patterns in 
    Hypercube and Mesh Topologies." Proc. 6th Conf. Distributed
    Memory Concurrent Computers. 1991. pp.398-403.

Sundar.
-- 
------------+----------------Disclaimer: These are my opinions only.
N. S. Sundar!    I am ardently against all awkward, affected, 
GTA,CIS,OSU.!    arbitrary and aimless alliteration.
INTJ        !    WWW: http://www.cis.ohio-state.edu/~sundar/

