HPL_pdlaswp00N - Man Page
Broadcast a column panel L and swap the row panel U.
Synopsis
#include "hpl.h"
 void HPL_pdlaswp00N( HPL_T_panel * PBCST, int * IFLAG, HPL_T_panel * PANEL, const int NN );
Description
HPL_pdlaswp00N applies the  NB  row interchanges to  NN columns of the trailing submatrix and broadcast a column panel.
 Bi-directional  exchange  is used to perform the  swap :: broadcast of the row  panel U at once, resulting in a lower number of messages than usual as well as a lower communication volume. With P process rows and assuming  bi-directional links,  the running time of this function can be approximated by:
 
  log_2(P) * (lat + NB*LocQ(N) / bdwth)
 where  NB  is the number of rows of the row panel U,  N is the global number of columns being updated,  lat and bdwth  are the latency  and bandwidth  of  the  network  for  double  precision real words.  Mono directional links will double this communication cost.
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 already 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 (to be broadcast and swapped) 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_pdupdateNN (3), HPL_pdupdateTN (3), HPL_pipid (3), HPL_plindx0 (3), HPL_dlaswp01N (3), HPL_dlaswp02N (3), HPL_dlaswp03N (3), HPL_dlaswp04N (3), HPL_dlaswp05N (3).
Referenced By
HPL_pdupdateNN(3), HPL_pdupdateTN(3), HPL_pipid(3), HPL_plindx0(3), HPL_plindx1(3), HPL_plindx10(3).