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

  
 
  

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

NAME
     HPL_pdlaswp01T - Broadcast a column panel L and swap the row panel U.

SYNOPSIS
     #include "hpl.h"

     void HPL_pdlaswp01T( HPL_T_panel * PBCST, int * IFLAG, HPL_T_panel * PANEL,
     const int NN );

DESCRIPTION
     HPL_pdlaswp01T  applies  the   NB	 row  interchanges to  NN columns of the
     trailing submatrix and broadcast a column panel.

     A "Spread then roll" algorithm performs  the swap :: broadcast  of the  row
     panel  U at once,	resulting in a minimal communication volume  and a "very
     good"  use of the connectivity if available.  With  P   process  rows   and
     assuming  bi-directional links,  the  running time  of this function can be
     approximated by:

	(log_2(P)+(P-1)) * lat +   K * NB * LocQ(N) / bdwth

     where   NB  is the number of rows of the row panel U,  N is the global num-
     ber of columns being updated,  lat and bdwth  are the  latency   and  band-
     width   of   the	network  for  double  precision real words.  K is a con-
     stant in (2,3] that depends on the achieved bandwidth  during  a simultane-
     ous  message exchange  between two  processes.   An   empirical  optimistic
     value of K is typically 2.4.

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

     IFLAG   (local input/output)    int *
	     On  entry,  IFLAG	indicates  whether or not  the broadcast has al-
	     ready been completed.  If not,  probing will occur, and the outcome
	     will be contained in IFLAG on exit.

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

     NN      (local input)	     const int
	     On entry, NN specifies  the   local   number   of	columns  of  the
	     trailing	submatrix   to	be swapped and broadcast starting at the
	     current position. NN must be at least zero.

SEE ALSO
     HPL_pdgesv (3), HPL_pdgesvK2 (3),	HPL_pdupdateNT (3),  HPL_pdupdateTT (3),
     HPL_pipid (3),    HPL_plindx1 (3),    HPL_plindx10 (3),	HPL_spreadT (3),
     HPL_equil (3),   HPL_rollT (3),	HPL_dlaswp10N (3),    HPL_dlaswp01T (3),
     HPL_dlaswp06T (3).

HPL 2.3 			December 2, 2018	       HPL_pdlaswp01T(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=HPL_pdlaswp01T&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help