HPL_indxg2lp(3)

NAME
HPL_indxg2lp - Map a local index into a global one.

SYNOPSIS
#include "hpl.h"

void HPL_indxg2lp( int * IL, int * PROC, const int IG, const int INB, const int NB, const int SRCPROC, const int NPROCS );

DESCRIPTION
HPL_indxg2lp computes the local index of a matrix entry pointed to by the global index IG as well as the process coordinate which posseses this entry. The local returned index is the same in all processes.

ARGUMENTS

IL      (output)                int *
    On exit, IL specifies the local index corresponding to IG. IL is at least zero.

PROC    (output)                int *
    On exit, PROC is the coordinate of the process owning the entry specified by the global index IG. PROC is at least zero and less than NPROCS.

IG      (input)                 const int
    On entry, IG specifies the global index of the matrix entry. IG must be at least zero.

INB     (input)                 const int
    On entry, INB specifies the size of the first block of the global matrix. INB must be at least one.

NB      (input)                 const int
    On entry, NB specifies the blocking factor used to partition and distribute the matrix A. NB must be larger than one.

SRCPROC (input)                 const int
    On entry, if SRCPROC = -1, the data is not distributed but replicated, in which case this routine returns IG in all processes. Otherwise, the value of SRCPROC is ignored.

NPROCS  (input)                 const int
    On entry, NPROCS specifies the total number of process rows or columns over which the matrix is distributed. NPROCS must be at least one.

SEE ALSO
HPL_indxg2l (3), HPL_indxg2p (3), HPL_indxl2g (3), HPL_numroc (3), HPL_numrocI (3).