SRC/comm.c File Reference

Broadcast an array of *dtype* numbers. More...

#include "superlu_ddefs.h"

Include dependency graph for comm.c:


Functions

void bcast_tree (void *buf, int count, MPI_Datatype dtype, int root, int tag, gridinfo_t *grid, int scope, int *recvcnt)

Detailed Description

 -- Distributed SuperLU routine (version 1.0) --
 Lawrence Berkeley National Lab, Univ. of California Berkeley.
 September 1, 1999
 

Function Documentation

void bcast_tree ( void *  buf,
int  count,
MPI_Datatype  dtype,
int  root,
int  tag,
gridinfo_t grid,
int  scope,
int *  recvcnt 
)

 Purpose
 =======
   Broadcast an array of *dtype* numbers. The communication pattern
   is a tree with number of branches equal to NBRANCHES.
   The process ranks are between 0 and Np-1.

   The following two pairs of graphs give different ways of viewing the same
   algorithm.  The first pair shows the trees as they should be visualized
   when examining the algorithm.  The second pair are isomorphic graphs of
   of the first, which show the actual pattern of data movement.
   Note that a tree broadcast with NBRANCHES = 2 is isomorphic with a
   hypercube broadcast (however, it does not require the nodes be a
   power of two to work).

    TREE BROADCAST, NBRANCHES = 2     *    TREE BROADCAST, NBRANCHES = 3

     root=2
 i=4   &______________                *
       |              \               *       root=2
 i=2   &______         &______        * i=3     &______________________
       |      \        |      \       *         |          \           \
 i=1   &__     &__     &__     &__    * i=1     &______     &______     &__
       |  \    |  \    |  \    |  \   *         |  \   \    |  \   \    |  \
       2   3   4   5   6   7   0   1  *         2   3   4   5   6   7   0   1

          ISOMORPHIC GRAPHS OF ABOVE, SHOWN IN MORE FAMILIAR TERMS:

                2                                           2
       _________|_________                       ___________|____________
      /         |         \                     /           |      |     \
     6          4          3                   5            0      3      4
    / \         |                             / \           |
   0   7        5                            6   7          1
   |
   1

 Arguments
 =========

 scope
 


Generated on Sat Aug 29 04:21:39 2009 for SuperLUDistributed by  doxygen 1.5.9