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

FreeBSD Manual Pages

  
 
  

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

NAME
       HPL_pdtrsv - Solve triu(	A ) x =	b.

SYNOPSIS
       #include	"hpl.h"

       void HPL_pdtrsv(	HPL_T_grid * GRID, HPL_T_pmat *	AMAT );

DESCRIPTION
       HPL_pdtrsv solves an upper triangular system of linear equations.

       The  rhs	 is the	last column of the N by	N+1 matrix A. The solve	starts
       in the process  column owning the  Nth  column of A, so the rhs	b  may
       need  to	 be moved one process column to	the left at the	beginning. The
       routine therefore needs	a column  vector in every process  column  but
       the  one	 owning	 b. The	result is  replicated in all process rows, and
       returned	in XR, i.e. XR is of size nq = LOCq( N ) in all	processes.

       The algorithm uses decreasing one-ring broadcast	in process  rows   and
       columns	 implemented   in terms	of  synchronous	communication point to
       point primitives.  The  lookahead of depth 1 is used to	minimize   the
       critical	 path.	This entire operation is essentially ``latency'' bound
       and an estimate of its running time is given by:

	  (move	rhs) lat + N / ( P bdwth ) +
	  (solve)    ((N / NB)-1) 2 (lat + NB /	bdwth) +
		     gam2 N^2 /	( P Q ),

       where  gam2   is	an estimate of the   Level 2 BLAS rate	of  execution.
       There  are   N /	NB  diagonal blocks. One must exchange	2  messages of
       length NB to compute the	next  NB  entries of the vector	 solution,  as
       well as performing a total of N^2 floating point	operations.

ARGUMENTS
       GRID    (local input)	       HPL_T_grid *
	       On  entry,   GRID  points  to the data structure	containing the
	       process grid information.

       AMAT    (local input/output)    HPL_T_pmat *
	       On entry,  AMAT	points	to the data structure  containing  the
	       local array information.

SEE ALSO
       HPL_pdgesv (3).

HPL 2.1			       October 26, 2012			 HPL_pdtrsv(3)

NAME | SYNOPSIS | DESCRIPTION | ARGUMENTS | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=HPL_pdtrsv&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help