Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
HPL_plindx10(3)		     HPL Library Functions	       HPL_plindx10(3)

       HPL_plindx10 - Compute the logarithmic maps for the spreading.

       #include	"hpl.h"

       void  HPL_plindx10( HPL_T_panel * PANEL,	const int K, const int * IPID,
       int * IPLEN, int	* IPMAP, int * IPMAPM1 );

       HPL_plindx10 computes  three arrays  IPLEN,  IPMAP  and	IPMAPM1	  that
       contain the logarithmic mapping information for the spreading phase.

       PANEL   (local input/output)    HPL_T_panel *
	       On  entry,   PANEL  points to the data structure	containing the
	       panel information.

       K       (global input)	       const int
	       On entry, K specifies the number	of entries in IPID.  K	is  at
	       least 2*N, and at most 4*N.

       IPID    (global input)	       const int *
	       On  entry,   IPID  is an	array of length	K. The first K entries
	       of that array contain the src and final	destination  resulting
	       from the	application of the interchanges.

       IPLEN   (global output)	       int *
	       On  entry,  IPLEN  is an	array of dimension NPROW + 1. On exit,
	       this array is such that	IPLEN[i]  is the number	of rows	 of  A
	       in  the	processes  before process IMAP[i] after	the sort, with
	       the convention that IPLEN[nprow]	is the total number  of	 rows.
	       In  other  words,  IPLEN[i+1] - IPLEN[i]	is the local number of
	       rows of	A  that	should be moved	for each process.   IPLEN   is
	       such  that  the number of rows of the source process row	can be
	       computed	as IPLEN[1] - IPLEN[0],	and the	remaining  entries  of
	       this   array  are sorted	 so  that  the quantities IPLEN[i+1] -
	       IPLEN[i]	are logarithmically sorted.

       IPMAP   (global output)	       int *
	       On entry, IPMAP is an array of dimension	NPROW. On  exit,  this
	       array  contains	 the logarithmic mapping of the	processes.  In
	       other words, IPMAP[myrow] is the	corresponding  sorted  process

       IPMAPM1 (global output)	       int *
	       On  entry,  IPMAPM1  is an array	of dimension NPROW.  On	 exit,
	       this  array  contains  the inverse of the  logarithmic  mapping
	       contained   in	IPMAP:	IPMAPM1[ IPMAP[i] ] = i,  for all i in
	       [0.. NPROW)

       HPL_pdlaswp00N (3),  HPL_pdlaswp00T (3),	 HPL_pdlaswp01N	(3),   HPL_pd-
       laswp01T	(3).

HPL 2.3			       December	2, 2018		       HPL_plindx10(3)


Want to link to this manual page? Use this URL:

home | help