27#ifndef __SUPERLU_ZDEFS
28#define __SUPERLU_ZDEFS
96#define MAX_LOOKAHEADS 50
425 int_t first_l_block_acc , first_u_block_acc;
427 int_t *Lblock_dirty_bit, * Ublock_dirty_bit;
431 int_t num_look_aheads, nsupers;
433 int_t num_u_blks, num_u_blks_Phi;
443 int offloadCondition;
444 int superlu_acc_offload;
548 double *,
double *,
int *);
551 double,
double,
char *);
556 double,
double,
char *);
613 int klst,
int nbrow,
int_t lptr,
int temp_nbrow,
615 int* indirect_thread,
int* indirect2,
619 int klst,
int nbrow,
int_t lptr,
int temp_nbrow,
657 int,
int_t ,
int *fmod,
679extern void zlsum_fmod_inv_gpu_wrap(
int,
int,
int,
int,
doublecomplex *,
doublecomplex *,
int,
int,
int_t ,
int *fmod,
C_Tree *,
C_Tree *,
int_t *,
int_t *, int64_t *,
doublecomplex *, int64_t *,
doublecomplex *, int64_t *,
int_t *, int64_t *,
int_t *,
int *,
gridinfo_t *,
680int_t , uint64_t* ,uint64_t* ,
doublecomplex* ,
doublecomplex* ,
int* ,
int* ,
int* ,
int* ,
int* ,
int* ,
int* ,
int* ,
int* ,
int* ,
int* ,
int* ,
int* ,
int* ,
int* ,
int* ,
int* ,
int* ,
int);
682extern void zlsum_bmod_inv_gpu_wrap(
superlu_dist_options_t *,
int,
int,
int,
int,
doublecomplex *,
doublecomplex *,
int,
int,
int_t ,
int *,
C_Tree *,
C_Tree *,
int_t *,
int_t *, int64_t *,
int_t *, int64_t *,
int_t *, int64_t *,
doublecomplex *, int64_t *,
doublecomplex *, int64_t *,
doublecomplex *, int64_t *,
int_t *, int64_t *,
int_t *,
gridinfo_t *,
684 int*,
int*,
int*,
int*,
685 int*,
int*,
int*,
int*,
int*,
686 int*,
int*,
int*,
int*,
int*,
int*,
687 int*,
int*,
int*,
int);
726 MPI_Request * send_req,
734 MPI_Request * send_req,
762 MPI_Request * send_req,
769 MPI_Request * send_req,
797 MPI_Request send_req[],
816 MPI_Request send_req[],
835 MPI_Request send_req[],
853 MPI_Request send_req[],
892 MPI_Request * send_req,
int nrhs,
901 MPI_Request * send_req,
int nrhs,
909 MPI_Request * send_req,
int nrhs,
916 MPI_Request * send_req,
int nrhs,
927 int** sendList, MPI_Request *send_req,
993 int job,
int Equil,
int *rowequ,
int *colequ,
int *iinfo);
1037#ifdef USE_VENDOR_BLAS
1038extern void zgemm_(
const char*,
const char*,
const int*,
const int*,
const int*,
1043extern void ztrsm_(
const char*,
const char*,
const char*,
const char*,
1051extern int zgemm_(
const char*,
const char*,
const int*,
const int*,
const int*,
1056extern int ztrsm_(
const char*,
const char*,
const char*,
const char*,
1077 const char *transa,
const char *diag,
const int m,
const int n,
1093#ifdef SLU_HAVE_LAPACK
1141 int *indirect,
int *indirect2,
1145#ifdef SCATTER_PROFILE
1146 ,
double *Host_TheadScatterMOP,
double *Host_TheadScatterTimer
1153zblock_gemm_scatter_lock(
int_t lb,
int_t j, omp_lock_t* lock,
1161 int *indirect,
int *indirect2,
1165#ifdef SCATTER_PROFILE
1166 ,
double *Host_TheadScatterMOP,
double *Host_TheadScatterTimer
1175 int* indirect,
int* indirect2,
1183 int* indirect,
int* indirect2,
1190 int* indirect,
int* indirect2,
1197 int* indirect,
int* indirect2,
1360 int **ToSendR,
int_t *xsup,
int );
1366 int *ToSendD,
int );
1403 int* IrecvPlcd_D, MPI_Request *, MPI_Request *,
1407 SCT_t *,
int tag_ub);
1419 MPI_Request *, MPI_Request *,
1422 SCT_t *,
int tag_ub);
1462extern int_t treeFactor(
1464 int_t *perm_c_supno,
1474 int_t * gIperm_c_supno,
1477 double thresh,
SCT_t *SCT,
1484 int_t *perm_c_supno,
1495 int_t * gIperm_c_supno,
1498 double thresh,
SCT_t *SCT,
1504 int_t *perm_c_supno,
1514 int_t * gIperm_c_supno,
1517 double thresh,
SCT_t *SCT,
int tag_ub,
1533 int_t * gIperm_c_supno,
1537 double thresh,
SCT_t *SCT,
int tag_ub,
1572extern int_t ancestorFactor(
1585 int_t * gIperm_c_supno,
1589 double thresh,
SCT_t *SCT,
int tag_ub,
int *info
1597 double **ReqPtr,
double **CeqPtr,
1598 int **RpivPtr,
int **CpivPtr,
DiagScale_t *DiagScale,
1610 double **ReqPtr,
double **CeqPtr,
DiagScale_t *,
int **RpivPtr
integer, parameter, public lsub
Definition: superlupara.f90:35
integer, parameter, public trans
Definition: superlupara.f90:35
integer, parameter, public factored
Definition: superlupara.f90:35
integer, parameter, public lusup
Definition: superlupara.f90:35
integer, parameter, public usub
Definition: superlupara.f90:35
Definition: superlu_defs.h:1256
Definition: superlu_defs.h:506
Definition: superlu_defs.h:451
Definition: superlu_defs.h:854
Definition: psymbfact.h:57
Definition: superlu_defs.h:799
Definition: util_dist.h:199
Definition: util_dist.h:101
Definition: supermatrix.h:54
Definition: superlu_defs.h:789
Definition: superlu_defs.h:781
Definition: superlu_defs.h:1012
Definition: dcomplex.h:30
Definition: superlu_defs.h:1025
Definition: superlu_defs.h:927
Definition: superlu_defs.h:978
Definition: superlu_defs.h:414
Definition: superlu_defs.h:404
Definition: superlu_defs.h:834
Definition: superlu_defs.h:1034
Definition: superlu_defs.h:844
Definition: superlu_defs.h:567
Definition: superlu_zdefs.h:350
void * val_tosend
Definition: superlu_zdefs.h:362
int_t * ptr_ind_torecv
Definition: superlu_zdefs.h:356
void * val_torecv
Definition: superlu_zdefs.h:363
int_t * extern_start
Definition: superlu_zdefs.h:351
int_t TotalValSend
Definition: superlu_zdefs.h:366
int_t * ind_torecv
Definition: superlu_zdefs.h:353
int * SendCounts
Definition: superlu_zdefs.h:358
int * RecvCounts
Definition: superlu_zdefs.h:360
int_t * ptr_ind_tosend
Definition: superlu_zdefs.h:354
int_t * ind_tosend
Definition: superlu_zdefs.h:352
int_t TotalIndSend
Definition: superlu_zdefs.h:364
Definition: superlu_defs.h:989
Definition: superlu_defs.h:773
Definition: superlu_defs.h:728
Definition: superlu_defs.h:970
Definition: superlu_defs.h:825
Definition: superlu_defs.h:1040
Definition: superlu_zdefs.h:310
int_t * Lsub_buf
Definition: superlu_zdefs.h:311
doublecomplex * Uval_buf
Definition: superlu_zdefs.h:314
int_t * Usub_buf
Definition: superlu_zdefs.h:313
doublecomplex * Lval_buf
Definition: superlu_zdefs.h:312
Definition: superlu_zdefs.h:340
zLocalLU_t * Llu
Definition: superlu_zdefs.h:343
int_t * etree
Definition: superlu_zdefs.h:341
ztrf3Dpartition_t * trf3Dpart
Definition: superlu_zdefs.h:344
char dt
Definition: superlu_zdefs.h:345
Glu_persist_t * Glu_persist
Definition: superlu_zdefs.h:342
Definition: superlu_zdefs.h:97
long int Uinv_bc_cnt
Definition: superlu_zdefs.h:162
int_t * d_Lrowind_bc_dat
Definition: superlu_zdefs.h:262
long int * Unzval_br_offset
Definition: superlu_zdefs.h:171
int_t ** Ufstnz_br_ptr
Definition: superlu_zdefs.h:164
int64_t * Ucolind_br_offset
Definition: superlu_zdefs.h:147
int_t * d_Ucolind_br_dat
Definition: superlu_zdefs.h:272
int_t ** Uind_br_ptr
Definition: superlu_zdefs.h:140
int64_t * Uind_br_offset
Definition: superlu_zdefs.h:142
int_t * d_xsup
Definition: superlu_zdefs.h:299
int64_t Unzval_br_new_cnt
Definition: superlu_zdefs.h:153
gridinfo_t * d_grid
Definition: superlu_zdefs.h:304
int_t n
Definition: superlu_zdefs.h:254
int_t * Uind_br_dat
Definition: superlu_zdefs.h:141
doublecomplex * d_Lnzval_bc_dat
Definition: superlu_zdefs.h:264
int_t * d_Uindval_loc_bc_dat
Definition: superlu_zdefs.h:283
int64_t * Ucolind_bc_offset
Definition: superlu_zdefs.h:127
int64_t * d_Ucolind_bc_offset
Definition: superlu_zdefs.h:267
long int * d_Uinv_bc_offset
Definition: superlu_zdefs.h:280
int_t * ut_modbit
Definition: superlu_zdefs.h:241
doublecomplex * d_Linv_bc_dat
Definition: superlu_zdefs.h:277
int nbrecvx
Definition: superlu_zdefs.h:213
int_t * utrecv
Definition: superlu_zdefs.h:237
int_t * Lindval_loc_bc_dat
Definition: superlu_zdefs.h:120
int_t FRECV
Definition: superlu_zdefs.h:232
int_t * Ufstnz_br_dat
Definition: superlu_zdefs.h:165
doublecomplex ** Unzval_br_new_ptr
Definition: superlu_zdefs.h:150
C_Tree * d_UBtree_ptr
Definition: superlu_zdefs.h:302
int * d_bcols_masked
Definition: superlu_zdefs.h:285
int_t SolveMsgVol
Definition: superlu_zdefs.h:223
int_t ut_ldalsum
Definition: superlu_zdefs.h:233
long int Linv_bc_cnt
Definition: superlu_zdefs.h:114
int_t inv
Definition: superlu_zdefs.h:256
int_t * Ucolind_bc_dat
Definition: superlu_zdefs.h:126
int_t * d_Uind_br_dat
Definition: superlu_zdefs.h:268
int * ToRecv
Definition: superlu_zdefs.h:199
C_Tree * LRtree_ptr
Definition: superlu_zdefs.h:176
doublecomplex ** Unzval_bc_ptr
Definition: superlu_zdefs.h:130
int_t n_utrecvx
Definition: superlu_zdefs.h:239
int nbsendx
Definition: superlu_zdefs.h:214
C_Tree * URtree_ptr
Definition: superlu_zdefs.h:178
int_t * ut_ilsum
Definition: superlu_zdefs.h:234
doublecomplex * ujrow
Definition: superlu_zdefs.h:189
int nroot
Definition: superlu_zdefs.h:217
int_t * Uindval_loc_bc_dat
Definition: superlu_zdefs.h:136
long int Unzval_br_cnt
Definition: superlu_zdefs.h:172
long int * d_Unzval_bc_offset
Definition: superlu_zdefs.h:271
int nfrecvx
Definition: superlu_zdefs.h:208
int * bcols_masked
Definition: superlu_zdefs.h:224
Ucb_indptr_t ** Ucb_indptr
Definition: superlu_zdefs.h:243
int ** fsendx_plist
Definition: superlu_zdefs.h:206
int64_t * d_Uindval_loc_bc_offset
Definition: superlu_zdefs.h:284
int_t nfrecvmod
Definition: superlu_zdefs.h:255
doublecomplex ** Uinv_bc_ptr
Definition: superlu_zdefs.h:159
doublecomplex * d_Unzval_br_new_dat
Definition: superlu_zdefs.h:274
C_Tree * LBtree_ptr
Definition: superlu_zdefs.h:175
int_t ** Lrowind_bc_2_lsum
Definition: superlu_zdefs.h:158
int ** ToSendR
Definition: superlu_zdefs.h:201
int64_t * Unzval_bc_offset
Definition: superlu_zdefs.h:132
doublecomplex * d_Uinv_bc_dat
Definition: superlu_zdefs.h:278
int64_t Uindval_loc_bc_cnt
Definition: superlu_zdefs.h:138
long int Ucb_indcnt
Definition: superlu_zdefs.h:246
int_t ** Lrowind_bc_ptr
Definition: superlu_zdefs.h:98
C_Tree * UBtree_ptr
Definition: superlu_zdefs.h:177
int_t * Ucolind_br_dat
Definition: superlu_zdefs.h:146
int_t ** Uindval_loc_bc_ptr
Definition: superlu_zdefs.h:135
int nfsendx
Definition: superlu_zdefs.h:209
long int * Lnzval_bc_offset
Definition: superlu_zdefs.h:107
int64_t * Uindval_loc_bc_offset
Definition: superlu_zdefs.h:137
int * bmod
Definition: superlu_zdefs.h:210
int64_t * d_Unzval_br_new_offset
Definition: superlu_zdefs.h:275
doublecomplex ** Lnzval_bc_ptr
Definition: superlu_zdefs.h:104
int * ToSendD
Definition: superlu_zdefs.h:200
Ucb_indptr_t * Ucb_inddat
Definition: superlu_zdefs.h:244
int nleaf
Definition: superlu_zdefs.h:216
C_Tree * d_LBtree_ptr
Definition: superlu_zdefs.h:300
int64_t * d_Uind_br_offset
Definition: superlu_zdefs.h:269
long int * Uinv_bc_offset
Definition: superlu_zdefs.h:161
long int * Ufstnz_br_offset
Definition: superlu_zdefs.h:166
long int * Ucb_valoffset
Definition: superlu_zdefs.h:250
long int Ufstnz_br_cnt
Definition: superlu_zdefs.h:167
int_t * Ucb_valdat
Definition: superlu_zdefs.h:249
int64_t * Unzval_br_new_offset
Definition: superlu_zdefs.h:152
int_t ** Ucb_valptr
Definition: superlu_zdefs.h:248
doublecomplex * d_Unzval_bc_dat
Definition: superlu_zdefs.h:270
int64_t * d_Lindval_loc_bc_offset
Definition: superlu_zdefs.h:282
int_t UT_SOLVE
Definition: superlu_zdefs.h:230
int * frecv
Definition: superlu_zdefs.h:207
doublecomplex ** Unzval_br_ptr
Definition: superlu_zdefs.h:169
long int Lnzval_bc_cnt
Definition: superlu_zdefs.h:108
doublecomplex ** Linv_bc_ptr
Definition: superlu_zdefs.h:110
int_t * utmod
Definition: superlu_zdefs.h:235
int_t * ilsum
Definition: superlu_zdefs.h:219
int_t n_utsendx
Definition: superlu_zdefs.h:238
long int Lrowind_bc_cnt
Definition: superlu_zdefs.h:102
doublecomplex * Unzval_bc_dat
Definition: superlu_zdefs.h:131
int_t * d_ilsum
Definition: superlu_zdefs.h:298
long int * Linv_bc_offset
Definition: superlu_zdefs.h:113
long int * Lindval_loc_bc_offset
Definition: superlu_zdefs.h:121
int_t * Unnz
Definition: superlu_zdefs.h:157
int64_t * d_Ucolind_br_offset
Definition: superlu_zdefs.h:273
int_t * Lrowind_bc_dat
Definition: superlu_zdefs.h:100
long int * Lrowind_bc_offset
Definition: superlu_zdefs.h:101
int_t ** ut_sendx_plist
Definition: superlu_zdefs.h:236
int_t * Urbs
Definition: superlu_zdefs.h:242
int_t L_SOLVE
Definition: superlu_zdefs.h:231
long int * d_Lnzval_bc_offset
Definition: superlu_zdefs.h:265
int_t n_utrecvmod
Definition: superlu_zdefs.h:240
int_t ** Ucolind_br_ptr
Definition: superlu_zdefs.h:145
int64_t Unzval_bc_cnt
Definition: superlu_zdefs.h:133
doublecomplex * Linv_bc_dat
Definition: superlu_zdefs.h:112
doublecomplex * Unzval_br_dat
Definition: superlu_zdefs.h:170
int nbcol_masked
Definition: superlu_zdefs.h:257
doublecomplex * Lnzval_bc_dat
Definition: superlu_zdefs.h:106
int ** bsendx_plist
Definition: superlu_zdefs.h:211
doublecomplex * Uinv_bc_dat
Definition: superlu_zdefs.h:160
int * fmod
Definition: superlu_zdefs.h:205
int_t ** Ucolind_bc_ptr
Definition: superlu_zdefs.h:125
int64_t Ucolind_bc_cnt
Definition: superlu_zdefs.h:128
int_t SolveMsgSent
Definition: superlu_zdefs.h:222
long int Ucb_valcnt
Definition: superlu_zdefs.h:251
long int * Ucb_indoffset
Definition: superlu_zdefs.h:245
int_t ** Lindval_loc_bc_ptr
Definition: superlu_zdefs.h:116
int_t * d_Ucolind_bc_dat
Definition: superlu_zdefs.h:266
int_t ldalsum
Definition: superlu_zdefs.h:221
int * brecv
Definition: superlu_zdefs.h:212
long int * d_Lrowind_bc_offset
Definition: superlu_zdefs.h:263
int64_t Uind_br_cnt
Definition: superlu_zdefs.h:143
int * mod_bit
Definition: superlu_zdefs.h:215
long int Lindval_loc_bc_cnt
Definition: superlu_zdefs.h:122
int_t * d_Lindval_loc_bc_dat
Definition: superlu_zdefs.h:281
doublecomplex * Unzval_br_new_dat
Definition: superlu_zdefs.h:151
long int * d_Linv_bc_offset
Definition: superlu_zdefs.h:279
int64_t Ucolind_br_cnt
Definition: superlu_zdefs.h:148
C_Tree * d_URtree_ptr
Definition: superlu_zdefs.h:303
C_Tree * d_LRtree_ptr
Definition: superlu_zdefs.h:301
Definition: superlu_zdefs.h:371
doublecomplex * d_lsum
Definition: superlu_zdefs.h:387
int_t * A_colind_gsmv
Definition: superlu_zdefs.h:378
int_t * diag_len
Definition: superlu_zdefs.h:374
int_t * xrow_to_proc
Definition: superlu_zdefs.h:382
pzgsmv_comm_t * gsmv_comm
Definition: superlu_zdefs.h:375
pxgstrs_comm_t * gstrs_comm
Definition: superlu_zdefs.h:377
int * d_fmod
Definition: superlu_zdefs.h:389
NRformat_loc3d * A3d
Definition: superlu_zdefs.h:383
int_t * row_to_proc
Definition: superlu_zdefs.h:372
doublecomplex * d_x
Definition: superlu_zdefs.h:388
int * d_bmod
Definition: superlu_zdefs.h:390
int_t * inv_perm_c
Definition: superlu_zdefs.h:373
Definition: superlu_zdefs.h:76
DiagScale_t DiagScale
Definition: superlu_zdefs.h:77
double * R
Definition: superlu_zdefs.h:78
int_t * perm_c
Definition: superlu_zdefs.h:81
double * C
Definition: superlu_zdefs.h:79
int_t * perm_r
Definition: superlu_zdefs.h:80
Definition: superlu_zdefs.h:467
doublecomplex * BlockUFactor
Definition: superlu_zdefs.h:469
doublecomplex * BlockLFactor
Definition: superlu_zdefs.h:468
Definition: superlu_zdefs.h:481
doublecomplex * tU
Definition: superlu_zdefs.h:483
int_t * indCols
Definition: superlu_zdefs.h:484
doublecomplex * tX
Definition: superlu_zdefs.h:482
Definition: superlu_zdefs.h:461
doublecomplex * bigU
Definition: superlu_zdefs.h:462
doublecomplex * bigV
Definition: superlu_zdefs.h:463
Definition: superlu_zdefs.h:318
sForest_t ** sForests
Definition: superlu_zdefs.h:326
int_t * iperm_c_supno
Definition: superlu_zdefs.h:321
int_t ** treePerm
Definition: superlu_zdefs.h:325
zLUValSubBuf_t * LUvsb
Definition: superlu_zdefs.h:329
SupernodeToGridMap_t * superGridMap
Definition: superlu_zdefs.h:330
int * gemmCsizes
Definition: superlu_zdefs.h:336
int_t * supernode2treeMap
Definition: superlu_zdefs.h:327
int_t * myZeroTrIdxs
Definition: superlu_zdefs.h:324
int_t * myTreeIdxs
Definition: superlu_zdefs.h:323
int_t * myNodeCount
Definition: superlu_zdefs.h:322
int_t nsupers
Definition: superlu_zdefs.h:319
int mxLeafNode
Definition: superlu_zdefs.h:334
int * supernodeMask
Definition: superlu_zdefs.h:328
int * diagDims
Definition: superlu_zdefs.h:335
int maxLvl
Definition: superlu_zdefs.h:331
gEtreeInfo_t gEtreeInfo
Definition: superlu_zdefs.h:320
Definition: superlu_zdefs.h:474
int_t * ilsumT
Definition: superlu_zdefs.h:477
int_t ldaspaT
Definition: superlu_zdefs.h:476
doublecomplex * xT
Definition: superlu_zdefs.h:475
Definitions which are precision-neutral.
SupernodeToGridMap_t
Definition: superlu_defs.h:1291
trtype_t
Definition: superlu_defs.h:1317
int64_t handle_t
Definition: superlu_defs.h:348
#define NBUFFERS
Definition: superlu_defs.h:205
int64_t int_t
Definition: superlu_defs.h:119
DiagScale_t
Definition: superlu_enum_consts.h:35
fact_t
Definition: superlu_enum_consts.h:30
float pzdistribute3d_Yang(superlu_dist_options_t *options, int_t n, SuperMatrix *A, zScalePermstruct_t *ScalePermstruct, Glu_freeable_t *Glu_freeable, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d)
Definition: pzdistribute3d.c:24
int zcreate_matrix_postfix3d(SuperMatrix *A, int nrhs, doublecomplex **rhs, int *ldb, doublecomplex **x, int *ldx, FILE *fp, char *postfix, gridinfo3d_t *grid3d)
Definition: zcreate_matrix3d.c:71
void z3D_printMemUse(ztrf3Dpartition_t *trf3Dpartition, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d)
Definition: zmemory_dist.c:242
int_t zlocalSolveXkYk(trtype_t trtype, int_t k, doublecomplex *x, int nrhs, zLUstruct_t *LUstruct, gridinfo_t *grid, SuperLUStat_t *stat)
Definition: pzgstrs3d.c:6149
int_t pzgstrs_init(int_t, int_t, int_t, int_t, int_t[], int_t[], gridinfo_t *grid, Glu_persist_t *, zSOLVEstruct_t *)
Definition: pzutil.c:649
int_t zUPanelUpdate(int_t k, int *factored_U, MPI_Request *, doublecomplex *BlockLFactor, doublecomplex *bigV, int_t ldt, Ublock_info_t *, gridinfo_t *, zLUstruct_t *, SuperLUStat_t *, SCT_t *)
int_t initPackLUInfo(int_t nsupers, packLUInfo_t *packLUInfo)
Definition: treeFactorization.c:168
void zlsum_bmod_inv_gpu_wrap(superlu_dist_options_t *, int, int, int, int, doublecomplex *, doublecomplex *, int, int, int_t, int *, C_Tree *, C_Tree *, int_t *, int_t *, int64_t *, int_t *, int64_t *, int_t *, int64_t *, doublecomplex *, int64_t *, doublecomplex *, int64_t *, doublecomplex *, int64_t *, int_t *, int64_t *, int_t *, gridinfo_t *, int_t, uint64_t *, uint64_t *, doublecomplex *, doublecomplex *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int)
void zCreate_CompRowLoc_Matrix_dist(SuperMatrix *, int_t, int_t, int_t, int_t, int_t, doublecomplex *, int_t *, int_t *, Stype_t, Dtype_t, Mtype_t)
void zDumpLblocks3D(int_t nsupers, gridinfo3d_t *grid3d, Glu_persist_t *Glu_persist, zLocalLU_t *Llu)
Dump the factored matrix L using matlab triple-let format.
Definition: zutil_dist.c:1102
int_t zgatherFactoredLU(int_t sender, int_t receiver, int_t nnodes, int_t *nodeList, zLUValSubBuf_t *LUvsb, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, SCT_t *SCT)
void zlsum_bmod_inv_master(doublecomplex *, doublecomplex *, doublecomplex *, doublecomplex *, int, int_t, int *bmod, int_t *, Ucb_indptr_t **, int_t **, int_t *, gridinfo_t *, zLocalLU_t *, SuperLUStat_t **, int_t, int_t, int, int)
Definition: pzgstrs_lsum.c:1899
void zinit3DLUstructForest(int_t *myTreeIdxs, int_t *myZeroTrIdxs, sForest_t **sForests, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d)
void zGenCSRLblocks(int, int_t, gridinfo_t *, Glu_persist_t *, zLocalLU_t *, doublecomplex **, int_t **, int_t **, int_t *, int_t *)
void pzgstrs2(int_t m, int_t k0, int_t k, Glu_persist_t *Glu_persist, gridinfo_t *grid, zLocalLU_t *Llu, SuperLUStat_t *stat)
int zpivot_batch(superlu_dist_options_t *, int batchCount, int m, int n, handle_t *, double **ReqPtr, double **CeqPtr, DiagScale_t *, int **RpivPtr)
Compute row pivotings for each matrix, for numerical stability.
Definition: zpivot_batch.c:44
void zFillRHS_dist(char *, int_t, doublecomplex *, int_t, SuperMatrix *, doublecomplex *, int_t)
Let rhs[i] = sum of i-th row of A, so the solution vector is all 1's.
Definition: zutil_dist.c:572
void zPrint_CompCol_Matrix_dist(SuperMatrix *)
int updateDirtyBit(int_t k0, HyP_t *HyP, gridinfo_t *grid)
Definition: sec_structs.c:651
int zreduceAllAncestors3d(int_t ilvl, int_t *myNodeCount, int_t **treePerm, zLUValSubBuf_t *LUvsb, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, SCT_t *SCT)
int_t zlsumReducePrK(int_t k, doublecomplex *x, doublecomplex *lsum, doublecomplex *recvbuf, int nrhs, zLUstruct_t *LUstruct, gridinfo_t *grid, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:4157
void pzgsmv_init(SuperMatrix *, int_t *, gridinfo_t *, pzgsmv_comm_t *)
Definition: pzgsmv.c:26
int zDeAllocLlu_3d(int_t n, zLUstruct_t *, gridinfo3d_t *)
Definition: zutil_dist.c:490
int_t zlasum_bmod_Tree(int_t pTree, int_t cTree, doublecomplex *lsum, doublecomplex *x, zxT_struct *xT_s, int nrhs, zlsumBmod_buff_t *lbmod_buf, zLUstruct_t *LUstruct, ztrf3Dpartition_t *trf3Dpartition, gridinfo3d_t *grid3d, SuperLUStat_t *stat)
Definition: pzgstrs3d.c:3901
int_t zIRecv_UDiagBlock(int_t k0, doublecomplex *ublk_ptr, int_t size, int_t src, MPI_Request *, gridinfo_t *, SCT_t *, int)
doublecomplex * zgetBigV(int_t, int_t)
int sp_ztrsv_dist(char *, char *, char *, SuperMatrix *, SuperMatrix *, doublecomplex *, int *)
Definition: zsp_blas2_dist.c:94
int ztrsm_(const char *, const char *, const char *, const char *, const int *, const int *, const doublecomplex *, const doublecomplex *, const int *, doublecomplex *, const int *)
float zdistribute(superlu_dist_options_t *, int_t, SuperMatrix *, Glu_freeable_t *, zLUstruct_t *, gridinfo_t *)
Definition: zdistribute.c:66
void zlaqgs_dist(SuperMatrix *, double *, double *, double, double, double, char *)
Definition: zlaqgs_dist.c:92
void pzgssvx_ABglobal(superlu_dist_options_t *, SuperMatrix *, zScalePermstruct_t *, doublecomplex *, int, int, gridinfo_t *, zLUstruct_t *, double *, SuperLUStat_t *, int *)
int_t pzReDistribute3d_B_to_X(doublecomplex *B, int_t m_loc, int nrhs, int_t ldb, int_t fst_row, int_t *ilsum, doublecomplex *x, zScalePermstruct_t *ScalePermstruct, Glu_persist_t *Glu_persist, gridinfo3d_t *grid3d, zSOLVEstruct_t *SOLVEstruct)
Definition: pzgstrs3d.c:6285
int_t zDiagFactIBCast(int_t k, int_t k0, doublecomplex *BlockUFactor, doublecomplex *BlockLFactor, int *IrecvPlcd_D, MPI_Request *, MPI_Request *, MPI_Request *, MPI_Request *, gridinfo_t *, superlu_dist_options_t *, double thresh, zLUstruct_t *LUstruct, SuperLUStat_t *, int *info, SCT_t *, int tag_ub)
void pzgsmv(int_t, SuperMatrix *, gridinfo_t *, pzgsmv_comm_t *, doublecomplex x[], doublecomplex ax[])
Definition: pzgsmv.c:234
int_t scuStatUpdate(int_t knsupc, HyP_t *HyP, SCT_t *SCT, SuperLUStat_t *stat)
Definition: sec_structs.c:668
int_t zleafForestBackSolve3d(superlu_dist_options_t *options, int_t treeId, int_t n, zLUstruct_t *LUstruct, zScalePermstruct_t *ScalePermstruct, ztrf3Dpartition_t *trf3Dpartition, gridinfo3d_t *grid3d, doublecomplex *x, doublecomplex *lsum, doublecomplex *recvbuf, MPI_Request *send_req, int nrhs, zlsumBmod_buff_t *lbmod_buf, zSOLVEstruct_t *SOLVEstruct, SuperLUStat_t *stat, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:4288
void Local_Zgstrf2(superlu_dist_options_t *options, int_t k, double thresh, doublecomplex *BlockUFactor, Glu_persist_t *, gridinfo_t *, zLocalLU_t *, SuperLUStat_t *, int *info, SCT_t *)
int_t zlsumForestBsolve(int_t k, int_t treeId, doublecomplex *lsum, doublecomplex *x, zxT_struct *xT_s, int nrhs, zlsumBmod_buff_t *lbmod_buf, zLUstruct_t *LUstruct, ztrf3Dpartition_t *trf3Dpartition, gridinfo3d_t *grid3d, SuperLUStat_t *stat)
Definition: pzgstrs3d.c:4054
doublecomplex * zready_lsum
Definition: pzgstrs3d.c:149
int_t zLPanelUpdate(int_t k, int *IrecvPlcd_D, int *factored_L, MPI_Request *, doublecomplex *BlockUFactor, gridinfo_t *, zLUstruct_t *, SCT_t *)
void zgstrf2(int_t k, doublecomplex *diagBlk, int_t LDA, doublecomplex *BlockUfactor, int_t LDU, double thresh, int_t *xsup, superlu_dist_options_t *options, SuperLUStat_t *stat, int *info)
Definition: pzgstrf2.c:404
int sp_zgemv_dist(char *, doublecomplex, SuperMatrix *, doublecomplex *, int, doublecomplex, doublecomplex *, int)
SpGEMV.
Definition: zsp_blas2_dist.c:398
void zreadtriple_dist(FILE *, int_t *, int_t *, int_t *, doublecomplex **, int_t **, int_t **)
Definition: zreadtriple.c:34
int_t pzgstrs_delete_device_lsum_x(zSOLVEstruct_t *)
Definition: pzutil.c:1067
int zcreate_matrix3d(SuperMatrix *A, int nrhs, doublecomplex **rhs, int *ldb, doublecomplex **x, int *ldx, FILE *fp, gridinfo3d_t *grid3d)
Definition: zcreate_matrix3d_Jake.c:67
void zreadMM_dist(FILE *, int_t *, int_t *, int_t *, doublecomplex **, int_t **, int_t **)
Definition: zreadMM.c:37
int_t zIBcast_UPanel(int_t k, int_t k0, int_t *usub, doublecomplex *uval, gridinfo_t *, int *msgcnt, MPI_Request *, int *ToSendD, int)
struct zxT_struct zxT_struct
int_t znonLeafForestForwardSolve3d(int_t treeId, zLUstruct_t *LUstruct, zScalePermstruct_t *ScalePermstruct, ztrf3Dpartition_t *trf3Dpartition, gridinfo3d_t *grid3d, doublecomplex *x, doublecomplex *lsum, zxT_struct *xT_s, doublecomplex *recvbuf, doublecomplex *rtemp, MPI_Request *send_req, int nrhs, zSOLVEstruct_t *SOLVEstruct, SuperLUStat_t *stat, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:1899
void pzgstrf2(superlu_dist_options_t *, int_t nsupers, int_t k0, int_t k, double thresh, Glu_persist_t *, gridinfo_t *, zLocalLU_t *, MPI_Request *, int, SuperLUStat_t *, int *)
zdiagFactBufs_t ** zinitDiagFactBufsArr(int mxLeafNode, int ldt, gridinfo_t *grid)
struct zlsumBmod_buff_t zlsumBmod_buff_t
double pzlangs(char *, SuperMatrix *, gridinfo_t *)
Definition: pzlangs.c:64
void pzgstrs3d_newsolve(superlu_dist_options_t *options, int_t n, zLUstruct_t *LUstruct, zScalePermstruct_t *ScalePermstruct, ztrf3Dpartition_t *trf3Dpartition, gridinfo3d_t *grid3d, doublecomplex *B, int_t m_loc, int_t fst_row, int_t ldb, int nrhs, zSOLVEstruct_t *SOLVEstruct, SuperLUStat_t *stat, int *info)
Definition: pzgstrs3d.c:6954
int getNsupers(int, Glu_persist_t *)
Definition: trfAux.c:42
void pzinf_norm_error(int, int_t, int_t, doublecomplex[], int_t, doublecomplex[], int_t, MPI_Comm)
Check the inf-norm of the error vector.
Definition: pzutil.c:1274
double zMaxAbsLij(int iam, int n, Glu_persist_t *, zLUstruct_t *, gridinfo_t *)
Find max(abs(L(i,j)))
Definition: zutil_dist.c:639
void pzgssvx(superlu_dist_options_t *, SuperMatrix *, zScalePermstruct_t *, doublecomplex *, int, int, gridinfo_t *, zLUstruct_t *, zSOLVEstruct_t *, double *, SuperLUStat_t *, int *)
void zCreate_CompCol_Matrix_dist(SuperMatrix *, int_t, int_t, int_t, doublecomplex *, int_t *, int_t *, Stype_t, Dtype_t, Mtype_t)
void pzgstrs2_omp(int_t k0, int_t k, Glu_persist_t *, gridinfo_t *, zLocalLU_t *, Ublock_info_t *, SuperLUStat_t *)
Definition: pzgstrf2.c:852
int_t zAllocLlu_3d(int_t nsupers, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d)
int superlu_zgemv(const char *trans, const int m, const int n, const doublecomplex alpha, const doublecomplex *a, const int lda, const doublecomplex *x, const int incx, const doublecomplex beta, doublecomplex *y, const int incy)
void pzCompute_Diag_Inv(int_t, zLUstruct_t *, gridinfo_t *, SuperLUStat_t *, int *)
Definition: pzgstrs.c:664
void zDestroy_LU(int_t, gridinfo_t *, zLUstruct_t *)
Destroy distributed L & U matrices.
Definition: pzutil.c:441
void Free_HyP(HyP_t *HyP)
Definition: sec_structs.c:627
int_t zPackLBlock(int_t k, doublecomplex *Dest, Glu_persist_t *, gridinfo_t *, zLocalLU_t *)
void * zuser_malloc_dist(int_t, int_t)
Definition: zmemory_dist.c:29
int_t ztrs_X_gather3d(doublecomplex *x, int nrhs, ztrf3Dpartition_t *trf3Dpartition, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:1551
void zlsum_bmod_GG(doublecomplex *lsum, doublecomplex *x, doublecomplex *xk, int nrhs, zlsumBmod_buff_t *lbmod_buf, int_t k, int *bmod, int_t *Urbs, Ucb_indptr_t **Ucb_indptr, int_t **Ucb_valptr, int_t *xsup, gridinfo_t *grid, zLocalLU_t *Llu, MPI_Request send_req[], SuperLUStat_t *stat, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:5703
int zPrint_CompRowLoc_Matrix_dist(SuperMatrix *)
int zcreate_matrix_postfix(SuperMatrix *, int, doublecomplex **, int *, doublecomplex **, int *, FILE *, char *, gridinfo_t *)
Definition: zcreate_matrix.c:75
void zlsum_bmod_GG_newsolve(ztrf3Dpartition_t *trf3Dpartition, doublecomplex *lsum, doublecomplex *x, doublecomplex *xk, int nrhs, zlsumBmod_buff_t *lbmod_buf, int_t k, int *bmod, int_t *Urbs, Ucb_indptr_t **Ucb_indptr, int_t **Ucb_valptr, int_t *xsup, gridinfo_t *grid, zLocalLU_t *Llu, MPI_Request send_req[], SuperLUStat_t *stat, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:5888
int_t zWait_LRecv(MPI_Request *, int *msgcnt, int *msgcntsU, gridinfo_t *, SCT_t *)
int_t zQuerySpace_dist(int_t, zLUstruct_t *, gridinfo_t *, SuperLUStat_t *, superlu_dist_mem_usage_t *)
Definition: zmemory_dist.c:72
void zlsum_fmod(doublecomplex *, doublecomplex *, doublecomplex *, doublecomplex *, int, int, int_t, int *fmod, int_t, int_t, int_t, int_t *, gridinfo_t *, zLocalLU_t *, MPI_Request[], SuperLUStat_t *)
Definition: pzgstrs_lsum.c:61
int_t pzgstrs_init_device_lsum_x(superlu_dist_options_t *, int_t, int_t, int_t, gridinfo_t *, zLUstruct_t *, zSOLVEstruct_t *, int *)
Definition: pzutil.c:778
void pzgsequ(SuperMatrix *, double *, double *, double *, double *, double *, int *, gridinfo_t *)
Definition: pzgsequ.c:86
int_t zbroadcastAncestor3d(ztrf3Dpartition_t *trf3Dpartition, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, SCT_t *SCT)
int_t checkRecvUDiag(int_t k, commRequests_t *comReqs, gridinfo_t *grid, SCT_t *SCT)
Definition: treeFactorization.c:205
int_t zzRecvLPanel(int_t k, int_t sender, doublecomplex alpha, doublecomplex beta, doublecomplex *Lval_buf, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, SCT_t *SCT)
doublecomplex * doublecomplexMalloc_dist(int_t)
Definition: zmemory_dist.c:154
int_t zgatherAllFactoredLUFr(int_t *myZeroTrIdxs, sForest_t *sForests, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, SCT_t *SCT)
int_t zzSendUPanel(int_t k, int_t receiver, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, SCT_t *SCT)
int_t zblock_gemm_scatterTopRight(int_t lb, int_t j, doublecomplex *bigV, int_t knsupc, int_t klst, int_t *lsub, int_t *usub, int_t ldt, int *indirect, int *indirect2, HyP_t *HyP, zLUstruct_t *, gridinfo_t *, SCT_t *SCT, SuperLUStat_t *)
int_t zISend_LDiagBlock(int_t k0, doublecomplex *lblk_ptr, int_t size, MPI_Request *, gridinfo_t *, int)
void zgather_l(int_t num_LBlk, int_t knsupc, Remain_info_t *L_info, doublecomplex *lval, int_t LD_lval, doublecomplex *L_buff)
int_t zleafForestForwardSolve3d(superlu_dist_options_t *options, int_t treeId, int_t n, zLUstruct_t *LUstruct, zScalePermstruct_t *ScalePermstruct, ztrf3Dpartition_t *trf3Dpartition, gridinfo3d_t *grid3d, doublecomplex *x, doublecomplex *lsum, doublecomplex *recvbuf, doublecomplex *rtemp, MPI_Request *send_req, int nrhs, zSOLVEstruct_t *SOLVEstruct, SuperLUStat_t *stat, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:1989
int_t ziBcastXk2Pck(int_t k, doublecomplex *x, int nrhs, int **sendList, MPI_Request *send_req, zLUstruct_t *LUstruct, gridinfo_t *grid, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:6198
void pzgstrs3d(superlu_dist_options_t *, int_t n, zLUstruct_t *LUstruct, zScalePermstruct_t *ScalePermstruct, ztrf3Dpartition_t *trf3Dpartition, gridinfo3d_t *grid3d, doublecomplex *B, int_t m_loc, int_t fst_row, int_t ldb, int nrhs, zSOLVEstruct_t *SOLVEstruct, SuperLUStat_t *stat, int *info)
Definition: pzgstrs3d.c:6625
int pzPermute_Dense_Matrix(int_t, int_t, int_t[], int_t[], doublecomplex[], int, doublecomplex[], int, int, gridinfo_t *)
Permute the distributed dense matrix: B <= perm(X). perm[i] = j means the i-th row of X is in the j-t...
Definition: pzutil.c:296
void zDestroy_Tree(int_t, gridinfo_t *, zLUstruct_t *)
Destroy broadcast and reduction trees used in triangular solve.
Definition: pzutil.c:1313
int zfreeScuBufs(zscuBufs_t *scuBufs)
void pzconvert_flatten_skyline2UROWDATA(superlu_dist_options_t *, gridinfo_t *, zLUstruct_t *, SuperLUStat_t *, int n)
Definition: pzgssvx.c:2335
void zinf_norm_error_dist(int_t, int_t, doublecomplex *, int_t, doublecomplex *, int_t, gridinfo_t *)
Check the inf-norm of the error vector.
Definition: zutil_dist.c:595
int_t pzgsTrBackSolve3d(superlu_dist_options_t *options, int_t n, zLUstruct_t *LUstruct, zScalePermstruct_t *ScalePermstruct, ztrf3Dpartition_t *trf3Dpartition, gridinfo3d_t *grid3d, doublecomplex *x3d, doublecomplex *lsum3d, zxT_struct *xT_s, doublecomplex *recvbuf, MPI_Request *send_req, int nrhs, zSOLVEstruct_t *SOLVEstruct, SuperLUStat_t *stat, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:7584
int_t zIBcastRecvLPanel(int_t k, int_t k0, int *msgcnt, MPI_Request *, MPI_Request *, int_t *Lsub_buf, doublecomplex *Lval_buf, int *factored, gridinfo_t *, zLUstruct_t *, SCT_t *, int tag_ub)
int freePackLUInfo(packLUInfo_t *packLUInfo)
Definition: treeFactorization.c:177
void zZero_CompRowLoc_Matrix_dist(SuperMatrix *)
Sets all entries of a matrix to zero, A_{i,j}=0, for i,j=1,..,n.
Definition: zutil_dist.c:377
int_t zscatter3dLPanels(int_t nsupers, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, int *supernodeMask)
void PrintDoublecomplex(char *, int_t, doublecomplex *)
Definition: zutil_dist.c:618
void zreadrb_dist(int, FILE *, int_t *, int_t *, int_t *, doublecomplex **, int_t **, int_t **)
Definition: zreadrb.c:283
void zInit_HyP(superlu_dist_options_t *, HyP_t *HyP, zLocalLU_t *Llu, int_t mcb, int_t mrb)
int_t zTrs2_GatherTrsmScatter(int_t klst, int_t iukp, int_t rukp, int_t *usub, doublecomplex *uval, doublecomplex *tempv, int_t knsupc, int nsupr, doublecomplex *lusup, Glu_persist_t *Glu_persist)
Definition: pzgstrf2.c:806
void zuser_free_dist(int_t, int_t)
Definition: zmemory_dist.c:48
void nv_init_wrapper(MPI_Comm)
int zScatter_B3d(NRformat_loc3d *A3d, gridinfo3d_t *grid3d)
int_t zdenseTreeFactor(int_t nnnodes, int_t *perm_c_supno, commRequests_t *comReqs, zscuBufs_t *scuBufs, packLUInfo_t *packLUInfo, msgs_t *msgs, zLUValSubBuf_t *LUvsb, zdiagFactBufs_t *dFBuf, factStat_t *factStat, factNodelists_t *fNlists, superlu_dist_options_t *options, int_t *gIperm_c_supno, int_t ldt, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, SuperLUStat_t *stat, double thresh, SCT_t *SCT, int tag_ub, int *info)
void zscatter_u(int ib, int jb, int nsupc, int_t iukp, int_t *xsup, int klst, int nbrow, int_t lptr, int temp_nbrow, int_t *lsub, int_t *usub, doublecomplex *tempv, int_t **Ufstnz_br_ptr, doublecomplex **Unzval_br_ptr, gridinfo_t *grid)
int zaxpy_(const int *n, const doublecomplex *alpha, const doublecomplex *x, const int *incx, doublecomplex *y, const int *incy)
int_t zUDiagBlockRecvWait(int_t k, int *IrecvPlcd_D, int *factored_L, MPI_Request *, gridinfo_t *, zLUstruct_t *, SCT_t *)
float pzdistribute_allgrid(superlu_dist_options_t *options, int_t n, SuperMatrix *A, zScalePermstruct_t *ScalePermstruct, Glu_freeable_t *Glu_freeable, zLUstruct_t *LUstruct, gridinfo_t *grid, int *supernodeMask)
Definition: pzdistribute.c:2330
void pzgsrfs3d(superlu_dist_options_t *, int_t, SuperMatrix *, double, zLUstruct_t *, zScalePermstruct_t *, gridinfo3d_t *, ztrf3Dpartition_t *, doublecomplex *, int_t, doublecomplex *, int_t, int, zSOLVEstruct_t *, double *, SuperLUStat_t *, int *)
Definition: pzgsrfs.c:365
void zComputeLevelsets(int, int_t, gridinfo_t *, Glu_persist_t *, zLocalLU_t *, int_t *)
int_t zblock_gemm_scatterTopLeft(int_t lb, int_t j, doublecomplex *bigV, int_t knsupc, int_t klst, int_t *lsub, int_t *usub, int_t ldt, int *indirect, int *indirect2, HyP_t *HyP, zLUstruct_t *, gridinfo_t *, SCT_t *SCT, SuperLUStat_t *)
int ztrs_compute_communication_structure(superlu_dist_options_t *options, int_t n, zLUstruct_t *LUstruct, zScalePermstruct_t *ScalePermstruct, int *supernodeMask, gridinfo_t *grid, SuperLUStat_t *stat)
Definition: pzgstrs3d.c:152
int_t zTrs2_ScatterU(int_t iukp, int_t rukp, int_t klst, int_t nsupc, int_t ldu, int_t *usub, doublecomplex *uval, doublecomplex *tempv)
Definition: pzgstrf2.c:784
double zMaxAbsUij(int iam, int n, Glu_persist_t *, zLUstruct_t *, gridinfo_t *)
Find max(abs(U(i,j)))
Definition: zutil_dist.c:680
int_t zIBcast_LPanel(int_t k, int_t k0, int_t *lsub, doublecomplex *lusup, gridinfo_t *, int *msgcnt, MPI_Request *, int **ToSendR, int_t *xsup, int)
void zCompCol_to_CompRow_dist(int_t m, int_t n, int_t nnz, doublecomplex *a, int_t *colptr, int_t *rowind, doublecomplex **at, int_t **rowptr, int_t **colind)
int_t zBcast_LPanel(int_t k, int_t k0, int_t *lsub, doublecomplex *lusup, gridinfo_t *, int *msgcnt, int **ToSendR, int_t *xsup, SCT_t *, int)
void zCompRow_to_CompCol_dist(int_t, int_t, int_t, doublecomplex *, int_t *, int_t *, doublecomplex **, int_t **, int_t **)
int zgemm_(const char *, const char *, const int *, const int *, const int *, const doublecomplex *, const doublecomplex *, const int *, const doublecomplex *, const int *, const doublecomplex *, doublecomplex *, const int *)
void pzgstrs(superlu_dist_options_t *, int_t, zLUstruct_t *, zScalePermstruct_t *, gridinfo_t *, doublecomplex *, int_t, int_t, int_t, int, zSOLVEstruct_t *, SuperLUStat_t *, int *)
Definition: pzgstrs.c:862
int z_c2cpp_GetHWPM(SuperMatrix *, gridinfo_t *, zScalePermstruct_t *)
Definition: z_c2cpp_GetHWPM.cpp:54
int zldperm_dist(int, int, int_t, int_t[], int_t[], doublecomplex[], int_t *, double[], double[])
Definition: zldperm_dist.c:95
int_t zLPanelTrSolve(int_t k, int *factored_L, doublecomplex *BlockUFactor, gridinfo_t *, zLUstruct_t *)
void pzgssvx3d(superlu_dist_options_t *, SuperMatrix *, zScalePermstruct_t *, doublecomplex B[], int ldb, int nrhs, gridinfo3d_t *, zLUstruct_t *, zSOLVEstruct_t *, double *berr, SuperLUStat_t *, int *info)
Definition: pzgssvx3d.c:517
int_t zBcast_UPanel(int_t k, int_t k0, int_t *usub, doublecomplex *uval, gridinfo_t *, int *msgcnt, int *ToSendD, SCT_t *, int)
int superlu_ztrsv(char *uplo, char *trans, char *diag, int n, doublecomplex *a, int lda, doublecomplex *x, int incx)
int_t zp3dScatter(int_t n, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, int *supernodeMask)
int_t zcollect3dUpanels(int_t layer, int_t nsupers, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d)
void zbcastPermutedSparseA(SuperMatrix *A, zScalePermstruct_t *ScalePermstruct, Glu_freeable_t *Glu_freeable, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d)
Definition: z3DPartition.c:186
#define MAX_LOOKAHEADS
Definition: superlu_zdefs.h:96
int_t zinitLsumBmod_buff(int_t ns, int nrhs, zlsumBmod_buff_t *lbmod_buf)
Definition: pzgstrs3d.c:3934
void zGenCOOLblocks(int, int_t, gridinfo_t *, Glu_persist_t *, zLocalLU_t *, int_t **, int_t **, doublecomplex **, int_t *, int_t *)
int_t zcollect3dLpanels(int_t layer, int_t nsupers, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d)
int superlu_zgemm(const char *transa, const char *transb, int m, int n, int k, doublecomplex alpha, doublecomplex *a, int lda, doublecomplex *b, int ldb, doublecomplex beta, doublecomplex *c, int ldc)
void zCreate_Dense_Matrix_dist(SuperMatrix *, int_t, int_t, doublecomplex *, int_t, Stype_t, Dtype_t, Mtype_t)
void zRgather_U(int_t k, int_t jj0, int_t *usub, doublecomplex *uval, doublecomplex *bigU, gEtreeInfo_t *, Glu_persist_t *, gridinfo_t *, HyP_t *, int_t *myIperm, int_t *iperm_c_supno, int_t *perm_u)
int_t zsparseTreeFactor_ASYNC(sForest_t *sforest, commRequests_t **comReqss, zscuBufs_t *scuBufs, packLUInfo_t *packLUInfo, msgs_t **msgss, zLUValSubBuf_t **LUvsbs, zdiagFactBufs_t **dFBufs, factStat_t *factStat, factNodelists_t *fNlists, gEtreeInfo_t *gEtreeInfo, superlu_dist_options_t *options, int_t *gIperm_c_supno, int_t ldt, HyP_t *HyP, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, SuperLUStat_t *stat, double thresh, SCT_t *SCT, int tag_ub, int *info)
void zlsum_bmod_inv(doublecomplex *, doublecomplex *, doublecomplex *, doublecomplex *, int, int_t, int *bmod, int_t *, Ucb_indptr_t **, int_t **, int_t *, gridinfo_t *, zLocalLU_t *, SuperLUStat_t **, int_t *, int_t *, int_t, int_t, int, int)
Definition: pzgstrs_lsum.c:1404
int_t pzgsTrForwardSolve3d(superlu_dist_options_t *options, int_t n, zLUstruct_t *LUstruct, zScalePermstruct_t *ScalePermstruct, ztrf3Dpartition_t *trf3Dpartition, gridinfo3d_t *grid3d, doublecomplex *x3d, doublecomplex *lsum3d, zxT_struct *xT_s, doublecomplex *recvbuf, MPI_Request *send_req, int nrhs, zSOLVEstruct_t *SOLVEstruct, SuperLUStat_t *stat, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:7330
doublecomplex * doublecomplexCalloc_dist(int_t)
Definition: zmemory_dist.c:161
void zGenXtrue_dist(int_t, int_t, doublecomplex *, int_t)
Definition: zutil_dist.c:526
void zfill_dist(doublecomplex *, int_t, doublecomplex)
Fills a doublecomplex precision array with a given value.
Definition: zutil_dist.c:585
int pzgsmv_AXglobal_abs(int_t, int_t[], doublecomplex[], int_t[], doublecomplex[], double[])
Definition: pzgsmv_AXglobal.c:288
int zstatic_schedule(superlu_dist_options_t *, int, int, zLUstruct_t *, gridinfo_t *, SuperLUStat_t *, int_t *, int_t *, int *)
Definition: zstatic_schedule.c:45
int superlu_zscal(const int n, const doublecomplex alpha, doublecomplex *x, const int incx)
doublecomplex * zgetBigU(superlu_dist_options_t *, int_t, gridinfo_t *, zLUstruct_t *)
ztrf3Dpartition_t * zinitTrf3Dpartition_allgrid(int_t n, superlu_dist_options_t *options, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d)
void zLUstructFree(zLUstruct_t *)
Deallocate LUstruct.
Definition: pzutil.c:421
void zCopy_CompRowLoc_Matrix_dist(SuperMatrix *, SuperMatrix *)
Definition: zutil_dist.c:362
int zcreate_matrix(SuperMatrix *, int, doublecomplex **, int *, doublecomplex **, int *, FILE *, gridinfo_t *)
Definition: zcreate_matrix.c:347
int sp_zgemm_dist(char *, int, doublecomplex, SuperMatrix *, doublecomplex *, int, doublecomplex, doublecomplex *, int)
Definition: zsp_blas3_dist.c:125
int zwriteLUtoDisk(int nsupers, int_t *xsup, zLUstruct_t *LUstruct)
Definition: zutil_dist.c:998
void zDestroy_trf3Dpartition(ztrf3Dpartition_t *trf3Dpartition)
void zallocateA_dist(int_t, int_t, doublecomplex **, int_t **, int_t **)
Definition: zmemory_dist.c:146
void zlsum_fmod_leaf_newsolve(ztrf3Dpartition_t *trf3Dpartition, doublecomplex *lsum, doublecomplex *x, doublecomplex *xk, doublecomplex *rtemp, int nrhs, int knsupc, int_t k, int *fmod, int_t nlb, int_t lptr, int_t luptr, int_t *xsup, gridinfo_t *grid, zLocalLU_t *Llu, MPI_Request send_req[], SuperLUStat_t *stat, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:3713
int_t zfsolveReduceLsum3d(int_t treeId, int_t sender, int_t receiver, doublecomplex *lsum, doublecomplex *recvbuf, int nrhs, ztrf3Dpartition_t *trf3Dpartition, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:1646
int_t zinit3DLUstruct(int_t *myTreeIdxs, int_t *myZeroTrIdxs, int_t *nodeCount, int_t **nodeList, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d)
int_t zp2pSolvedX3d(int_t treeId, int_t sender, int_t receiver, doublecomplex *x, int nrhs, ztrf3Dpartition_t *trf3Dpartition, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:1596
int zSolveInit(superlu_dist_options_t *, SuperMatrix *, int_t[], int_t[], int_t, zLUstruct_t *, gridinfo_t *, zSOLVEstruct_t *)
Initialize the data structure for the solution phase.
Definition: pzutil.c:1108
void pzconvertU(superlu_dist_options_t *, gridinfo_t *, zLUstruct_t *, SuperLUStat_t *, int)
int_t zblock_gemm_scatterBottomRight(int_t lb, int_t j, doublecomplex *bigV, int_t knsupc, int_t klst, int_t *lsub, int_t *usub, int_t ldt, int *indirect, int *indirect2, HyP_t *HyP, zLUstruct_t *, gridinfo_t *, SCT_t *SCT, SuperLUStat_t *)
void zLUstructInit(const int_t, zLUstruct_t *)
Allocate storage in LUstruct.
Definition: pzutil.c:407
void zGatherNRformat_loc3d_allgrid(fact_t Fact, NRformat_loc *A, doublecomplex *B, int ldb, int nrhs, gridinfo3d_t *grid3d, NRformat_loc3d **)
int_t zsparseTreeFactor(int_t nnodes, int_t *perm_c_supno, treeTopoInfo_t *treeTopoInfo, commRequests_t *comReqs, zscuBufs_t *scuBufs, packLUInfo_t *packLUInfo, msgs_t *msgs, zLUValSubBuf_t *LUvsb, zdiagFactBufs_t *dFBuf, factStat_t *factStat, factNodelists_t *fNlists, superlu_dist_options_t *options, int_t *gIperm_c_supno, int_t ldt, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, SuperLUStat_t *stat, double thresh, SCT_t *SCT, int *info)
void pzlaqgs(SuperMatrix *, double *, double *, double, double, double, char *)
Definition: pzlaqgs.c:84
void pzgsrfs(superlu_dist_options_t *, int_t, SuperMatrix *, double, zLUstruct_t *, zScalePermstruct_t *, gridinfo_t *, doublecomplex[], int_t, doublecomplex[], int_t, int, zSOLVEstruct_t *, double *, SuperLUStat_t *, int *)
int pzCompRow_loc_to_CompCol_global(int_t, SuperMatrix *, gridinfo_t *, SuperMatrix *)
Gather A from the distributed compressed row format to global A in compressed column format.
Definition: pzutil.c:34
int_t zinitScuBufs(superlu_dist_options_t *, int_t ldt, int_t num_threads, int_t nsupers, zscuBufs_t *, zLUstruct_t *, gridinfo_t *)
int_t pzReDistribute3d_X_to_B(int_t n, doublecomplex *B, int_t m_loc, int_t ldb, int_t fst_row, int nrhs, doublecomplex *x, int_t *ilsum, zScalePermstruct_t *ScalePermstruct, Glu_persist_t *Glu_persist, gridinfo3d_t *grid3d, zSOLVEstruct_t *SOLVEstruct)
Definition: pzgstrs3d.c:6425
void zlsum_fmod_leaf(int_t treeId, ztrf3Dpartition_t *trf3Dpartition, doublecomplex *lsum, doublecomplex *x, doublecomplex *xk, doublecomplex *rtemp, int nrhs, int knsupc, int_t k, int *fmod, int_t nlb, int_t lptr, int_t luptr, int_t *xsup, gridinfo_t *grid, zLocalLU_t *Llu, MPI_Request send_req[], SuperLUStat_t *stat, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:2179
int zAllocGlu_3d(int_t n, int_t nsupers, zLUstruct_t *)
Definition: zutil_dist.c:472
void zZeroUblocks(int iam, int n, gridinfo_t *, zLUstruct_t *)
Sets all entries of matrix U to zero.
Definition: zutil_dist.c:953
void pzgstrs_Bglobal(superlu_dist_options_t *, int_t, zLUstruct_t *, gridinfo_t *, doublecomplex *, int_t, int, SuperLUStat_t *, int *)
Definition: pzgstrs_Bglobal.c:107
int_t zWait_URecv(MPI_Request *, int *msgcnt, SCT_t *)
void validateInput_pzgssvx3d(superlu_dist_options_t *, SuperMatrix *A, int ldb, int nrhs, gridinfo3d_t *, int *info)
Validates the input parameters for a given problem.
Definition: zssvx3dAux.c:23
void pzgsrfs_ABXglobal(superlu_dist_options_t *, int_t, SuperMatrix *, double, zLUstruct_t *, gridinfo_t *, doublecomplex *, int_t, doublecomplex *, int_t, int, double *, SuperLUStat_t *, int *)
Definition: pzgsrfs_ABXglobal.c:124
void ztrtri_(char *, char *, int *, doublecomplex *, int *, int *)
void zScalePermstructFree(zScalePermstruct_t *)
Deallocate ScalePermstruct.
Definition: zutil_dist.c:449
int_t zIrecv_UPanel(int_t k, int_t k0, int_t *Usub_buf, doublecomplex *, zLocalLU_t *, gridinfo_t *, MPI_Request *, int)
void zGatherNRformat_loc3d(fact_t Fact, NRformat_loc *A, doublecomplex *B, int ldb, int nrhs, gridinfo3d_t *grid3d, NRformat_loc3d **)
void pxgstrs_finalize(pxgstrs_comm_t *)
Definition: util.c:318
int_t zbCastXk2Pck(int_t k, zxT_struct *xT_s, int nrhs, zLUstruct_t *LUstruct, gridinfo_t *grid, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:4127
void zgeru_(const int *, const int *, const doublecomplex *, const doublecomplex *, const int *, const doublecomplex *, const int *, doublecomplex *, const int *)
void zPrintLblocks(int, int_t, gridinfo_t *, Glu_persist_t *, zLocalLU_t *)
Print the blocks in the factored matrix L.
Definition: zutil_dist.c:728
int_t zTrs2_GatherU(int_t iukp, int_t rukp, int_t klst, int_t nsupc, int_t ldu, int_t *usub, doublecomplex *uval, doublecomplex *tempv)
Definition: pzgstrf2.c:759
int_t zWaitU(int_t k, int *msgcnt, MPI_Request *, MPI_Request *, gridinfo_t *, zLUstruct_t *, SCT_t *)
double * doubleMalloc_dist(int_t)
Definition: dmemory_dist.c:155
int zscal_(const int *n, const doublecomplex *alpha, doublecomplex *dx, const int *incx)
int_t zblock_gemm_scatterBottomLeft(int_t lb, int_t j, doublecomplex *bigV, int_t knsupc, int_t klst, int_t *lsub, int_t *usub, int_t ldt, int *indirect, int *indirect2, HyP_t *HyP, zLUstruct_t *, gridinfo_t *, SCT_t *SCT, SuperLUStat_t *)
int zcheckArr(doublecomplex *A, doublecomplex *B, int n)
Definition: zutil_dist.c:1040
void zscatter_l(int ib, int ljb, int nsupc, int_t iukp, int_t *xsup, int klst, int nbrow, int_t lptr, int temp_nbrow, int_t *usub, int_t *lsub, doublecomplex *tempv, int *indirect_thread, int *indirect2, int_t **Lrowind_bc_ptr, doublecomplex **Lnzval_bc_ptr, gridinfo_t *grid)
void pzGetDiagU(int_t, zLUstruct_t *, gridinfo_t *, doublecomplex *)
Definition: pzGetDiagU.c:65
double zcomputeA_Norm(int notran, SuperMatrix *, gridinfo_t *)
int superlu_zaxpy(const int n, const doublecomplex alpha, const doublecomplex *x, const int incx, doublecomplex *y, const int incy)
int zcreate_matrix_rb(SuperMatrix *, int, doublecomplex **, int *, doublecomplex **, int *, FILE *, gridinfo_t *)
int pzflatten_LDATA(superlu_dist_options_t *options, int_t n, zLUstruct_t *LUstruct, gridinfo_t *grid, SuperLUStat_t *stat)
Definition: pzgssvx.c:2525
int zcheckLUFromDisk(int nsupers, int_t *xsup, zLUstruct_t *LUstruct)
Definition: zutil_dist.c:1053
void zCopy_CompCol_Matrix_dist(SuperMatrix *, SuperMatrix *)
void zClone_CompRowLoc_Matrix_dist(SuperMatrix *, SuperMatrix *)
int_t pzgstrf(superlu_dist_options_t *, int, int, double anorm, zLUstruct_t *, gridinfo_t *, SuperLUStat_t *, int *)
Definition: pzgstrf.c:242
void zCreate_SuperNode_Matrix_dist(SuperMatrix *, int_t, int_t, int_t, doublecomplex *, int_t *, int_t *, int_t *, int_t *, int_t *, Stype_t, Dtype_t, Mtype_t)
int_t zgatherAllFactoredLU(ztrf3Dpartition_t *trf3Dpartition, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, SCT_t *SCT)
int_t zRecv_UDiagBlock(int_t k0, doublecomplex *ublk_ptr, int_t size, int_t src, gridinfo_t *, SCT_t *, int)
int_t zIrecv_LPanel(int_t k, int_t k0, int_t *Lsub_buf, doublecomplex *Lval_buf, gridinfo_t *, MPI_Request *, zLocalLU_t *, int)
int file_zPrint_CompRowLoc_Matrix_dist(FILE *fp, SuperMatrix *A)
void pzconvertUROWDATA2skyline(superlu_dist_options_t *, gridinfo_t *, zLUstruct_t *, SuperLUStat_t *, int n)
Definition: pzgssvx.c:2309
void zPrint_Dense_Matrix_dist(SuperMatrix *)
doublecomplex * zready_x
Definition: pzgstrs3d.c:149
int zcreate_batch_systems(handle_t *SparseMatrix_handles, int batchCount, int nrhs, doublecomplex **rhs, int *ldb, doublecomplex **x, int *ldx, FILE *fp, char *postfix, gridinfo3d_t *grid3d)
Definition: zcreate_matrix3d.c:300
void zlsum_fmod_inv_gpu_wrap(int, int, int, int, doublecomplex *, doublecomplex *, int, int, int_t, int *fmod, C_Tree *, C_Tree *, int_t *, int_t *, int64_t *, doublecomplex *, int64_t *, doublecomplex *, int64_t *, int_t *, int64_t *, int_t *, int *, gridinfo_t *, int_t, uint64_t *, uint64_t *, doublecomplex *, doublecomplex *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int *, int)
void zgsequ_dist(SuperMatrix *, double *, double *, double *, double *, double *, int *)
Definition: zgsequ_dist.c:91
void zblock_gemm_scatter(int_t lb, int_t j, Ublock_info_t *Ublock_info, Remain_info_t *Remain_info, doublecomplex *L_mat, int ldl, doublecomplex *U_mat, int ldu, doublecomplex *bigV, int_t knsupc, int_t klst, int_t *lsub, int_t *usub, int_t ldt, int_t thread_id, int *indirect, int *indirect2, int_t **Lrowind_bc_ptr, doublecomplex **Lnzval_bc_ptr, int_t **Ufstnz_br_ptr, doublecomplex **Unzval_br_ptr, int_t *xsup, gridinfo_t *, SuperLUStat_t *)
void zPrintUblocks(int, int_t, gridinfo_t *, Glu_persist_t *, zLocalLU_t *)
Print the blocks in the factored matrix U.
Definition: zutil_dist.c:912
void zdelete_multiGPU_buffers()
int_t zzSendLPanel(int_t k, int_t receiver, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, SCT_t *SCT)
void zallocScalePermstruct_RC(zScalePermstruct_t *, int_t m, int_t n)
zdiagFactBufs_t ** zinitDiagFactBufsArrMod(int mxLeafNode, int *ldts, gridinfo_t *grid)
int_t zISend_UDiagBlock(int_t k0, doublecomplex *ublk_ptr, int_t size, MPI_Request *, gridinfo_t *, int)
void zscaleMatrixDiagonally(fact_t Fact, zScalePermstruct_t *, SuperMatrix *, SuperLUStat_t *, gridinfo_t *, int *rowequ, int *colequ, int *iinfo)
Definition: zssvx3dAux.c:162
double zlangs_dist(char *, SuperMatrix *)
Definition: zlangs_dist.c:71
void zprepare_multiGPU_buffers(int, int, int, int, int, int)
void zScalePermstructInit(const int_t, const int_t, zScalePermstruct_t *)
Allocate storage in ScalePermstruct.
Definition: zutil_dist.c:438
int zcreate_block_diag_3d(SuperMatrix *A, int batchCount, int nrhs, doublecomplex **rhs, int *ldb, doublecomplex **x, int *ldx, FILE *fp, char *postfix, gridinfo3d_t *grid3d)
void zScaleAddId_CompRowLoc_Matrix_dist(SuperMatrix *, doublecomplex)
Scale and add I: scales a matrix and adds an identity. A_{i,j} = c * A_{i,j} + \delta_{i,...
Definition: zutil_dist.c:394
void zperform_row_permutation(superlu_dist_options_t *, fact_t Fact, zScalePermstruct_t *, zLUstruct_t *LUstruct, int_t m, int_t n, gridinfo_t *, SuperMatrix *A, SuperMatrix *GA, SuperLUStat_t *, int job, int Equil, int *rowequ, int *colequ, int *iinfo)
Definition: zssvx3dAux.c:464
int_t zUPanelTrSolve(int_t k, doublecomplex *BlockLFactor, doublecomplex *bigV, int_t ldt, Ublock_info_t *, gridinfo_t *, zLUstruct_t *, SuperLUStat_t *, SCT_t *)
int_t zLpanelUpdate(int_t off0, int_t nsupc, doublecomplex *ublk_ptr, int_t ld_ujrow, doublecomplex *lusup, int_t nsupr, SCT_t *)
int_t pzReDistribute_B_to_X(doublecomplex *B, int_t m_loc, int nrhs, int_t ldb, int_t fst_row, int_t *ilsum, doublecomplex *x, zScalePermstruct_t *, Glu_persist_t *, gridinfo_t *, zSOLVEstruct_t *)
Definition: pzgstrs.c:164
void zDestroy_A3d_gathered_on_2d(zSOLVEstruct_t *, gridinfo3d_t *)
Definition: pzutil.c:1244
void zlsum_bmod(doublecomplex *, doublecomplex *, doublecomplex *, int, int_t, int *bmod, int_t *, Ucb_indptr_t **, int_t **, int_t *, gridinfo_t *, zLocalLU_t *, MPI_Request[], SuperLUStat_t *)
Definition: pzgstrs_lsum.c:250
int_t zIBcastRecvUPanel(int_t k, int_t k0, int *msgcnt, MPI_Request *, MPI_Request *, int_t *Usub_buf, doublecomplex *Uval_buf, gridinfo_t *, zLUstruct_t *, SCT_t *, int tag_ub)
int zfreeDiagFactBufsArr(int mxLeafNode, zdiagFactBufs_t **dFBufs)
int superlu_zger(const int m, const int n, const doublecomplex alpha, const doublecomplex *x, const int incx, const doublecomplex *y, const int incy, doublecomplex *a, const int lda)
void zreadtriple_noheader(FILE *, int_t *, int_t *, int_t *, doublecomplex **, int_t **, int_t **)
Definition: zreadtriple_noheader.c:34
void zgemv_(const char *, const int *, const int *, const doublecomplex *, const doublecomplex *a, const int *, const doublecomplex *, const int *, const doublecomplex *, doublecomplex *, const int *)
float zdist_psymbtonum(superlu_dist_options_t *, int_t, SuperMatrix *, zScalePermstruct_t *, Pslu_freeable_t *, zLUstruct_t *, gridinfo_t *)
Definition: pzsymbfact_distdata.c:1218
int_t zzRecvUPanel(int_t k, int_t sender, doublecomplex alpha, doublecomplex beta, doublecomplex *Uval_buf, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, SCT_t *SCT)
void zCopy_Dense_Matrix_dist(int_t, int_t, doublecomplex *, int_t, doublecomplex *, int_t)
int_t zLluBufInit(zLUValSubBuf_t *, zLUstruct_t *)
int zequil_batch(superlu_dist_options_t *, int batchCount, int m, int n, handle_t *, double **ReqPtr, double **CeqPtr, DiagScale_t *)
Equilibrate the systems using the LAPACK-style algorithm.
Definition: zequil_batch.c:42
int_t ztrs_B_init3d(int_t nsupers, doublecomplex *x, int nrhs, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d)
Definition: pzgstrs3d.c:31
int pzgsmv_AXglobal_setup(SuperMatrix *, Glu_persist_t *, gridinfo_t *, int_t *, int_t *[], doublecomplex *[], int_t *[], int_t[])
int zDeAllocGlu_3d(zLUstruct_t *)
Definition: zutil_dist.c:482
int_t zbsolve_Xt_bcast(int_t ilvl, zxT_struct *xT_s, int nrhs, ztrf3Dpartition_t *trf3Dpartition, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:1719
float pzdistribute(superlu_dist_options_t *, int_t, SuperMatrix *, zScalePermstruct_t *, Glu_freeable_t *, zLUstruct_t *, gridinfo_t *)
Definition: pzdistribute.c:328
void zreadhb_dist(int, FILE *, int_t *, int_t *, int_t *, doublecomplex **, int_t **, int_t **)
Definition: zreadhb.c:105
int_t pzgsTrBackSolve3d_newsolve(superlu_dist_options_t *options, int_t n, zLUstruct_t *LUstruct, ztrf3Dpartition_t *trf3Dpartition, gridinfo3d_t *grid3d, doublecomplex *x3d, doublecomplex *lsum3d, doublecomplex *recvbuf, MPI_Request *send_req, int nrhs, zSOLVEstruct_t *SOLVEstruct, SuperLUStat_t *stat, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:7712
int zcreate_matrix_dat(SuperMatrix *, int, doublecomplex **, int *, doublecomplex **, int *, FILE *, gridinfo_t *)
int_t zSchurComplementSetupGPU(int_t k, msgs_t *msgs, packLUInfo_t *, int_t *, int_t *, int_t *, gEtreeInfo_t *, factNodelists_t *, zscuBufs_t *, zLUValSubBuf_t *LUvsb, gridinfo_t *, zLUstruct_t *, HyP_t *)
int_t checkRecvLDiag(int_t k, commRequests_t *comReqs, gridinfo_t *, SCT_t *)
Definition: treeFactorization.c:226
int file_PrintDoublecomplex(FILE *fp, char *, int_t, doublecomplex *)
Definition: zutil_dist.c:627
int_t pzgstrf3d(superlu_dist_options_t *, int m, int n, double anorm, ztrf3Dpartition_t *, SCT_t *, zLUstruct_t *, gridinfo3d_t *, SuperLUStat_t *, int *)
Definition: pzgstrf3d.c:120
int superlu_ztrsm(const char *sideRL, const char *uplo, const char *transa, const char *diag, const int m, const int n, const doublecomplex alpha, const doublecomplex *a, const int lda, doublecomplex *b, const int ldb)
ztrf3Dpartition_t * zinitTrf3DpartitionLUstructgrid0(int_t n, superlu_dist_options_t *options, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d)
int_t zp3dCollect(int_t layer, int_t n, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d)
float pzdistribute_allgrid_index_only(superlu_dist_options_t *options, int_t n, SuperMatrix *A, zScalePermstruct_t *ScalePermstruct, Glu_freeable_t *Glu_freeable, zLUstruct_t *LUstruct, gridinfo_t *grid, int *supernodeMask)
Definition: pzdistribute.c:3422
int zinitDiagFactBufs(int ldt, zdiagFactBufs_t *dFBuf)
void znewTrfPartitionInit(int_t nsupers, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d)
Definition: z3DPartition.c:4
void zSolveFinalize(superlu_dist_options_t *, zSOLVEstruct_t *)
Release the resources used for the solution phase.
Definition: pzutil.c:1196
void zGenCSCLblocks(int, int_t, gridinfo_t *, Glu_persist_t *, zLocalLU_t *, doublecomplex **, int_t **, int_t **, int_t *, int_t *)
int ztrsv_(char *, char *, char *, int *, doublecomplex *, int *, doublecomplex *, int *)
int pzgssvx3d_csc_batch(superlu_dist_options_t *, int batchCount, int m, int n, int nnz, int nrhs, handle_t *, doublecomplex **RHSptr, int *ldRHS, double **ReqPtr, double **CeqPtr, int **RpivPtr, int **CpivPtr, DiagScale_t *DiagScale, handle_t *F, doublecomplex **Xptr, int *ldX, double **Berrs, gridinfo3d_t *grid3d, SuperLUStat_t *stat, int *info)
Solve a batch of linear systems Ai * Xi = Bi with direct method, computing the LU factorization of ea...
Definition: pzgssvx3d_csc_batch.c:80
double * doubleCalloc_dist(int_t)
Definition: dmemory_dist.c:162
void pzgsmv_finalize(pzgsmv_comm_t *)
Definition: pzgsmv.c:373
int_t znonLeafForestBackSolve3d(int_t treeId, zLUstruct_t *LUstruct, zScalePermstruct_t *ScalePermstruct, ztrf3Dpartition_t *trf3Dpartition, gridinfo3d_t *grid3d, doublecomplex *x, doublecomplex *lsum, zxT_struct *xT_s, doublecomplex *recvbuf, MPI_Request *send_req, int nrhs, zlsumBmod_buff_t *lbmod_buf, zSOLVEstruct_t *SOLVEstruct, SuperLUStat_t *stat, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:4199
int zread_binary(FILE *, int_t *, int_t *, int_t *, doublecomplex **, int_t **, int_t **)
Definition: zbinary_io.c:4
void pzgstrf2_trsm(superlu_dist_options_t *options, int_t k0, int_t k, double thresh, Glu_persist_t *, gridinfo_t *, zLocalLU_t *, MPI_Request *, int tag_ub, SuperLUStat_t *, int *info)
Definition: pzgstrf2.c:142
int_t zscatter3dUPanels(int_t nsupers, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, int *supernodeMask)
int_t pzgsTrForwardSolve3d_newsolve(superlu_dist_options_t *options, int_t n, zLUstruct_t *LUstruct, zScalePermstruct_t *ScalePermstruct, ztrf3Dpartition_t *trf3Dpartition, gridinfo3d_t *grid3d, doublecomplex *x3d, doublecomplex *lsum3d, doublecomplex *recvbuf, MPI_Request *send_req, int nrhs, zSOLVEstruct_t *SOLVEstruct, SuperLUStat_t *stat, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:7477
int_t zreduceAncestors3d(int_t sender, int_t receiver, int_t nnodes, int_t *nodeList, doublecomplex *Lval_buf, doublecomplex *Uval_buf, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, SCT_t *SCT)
int_t zzeroSetLU(int_t nnodes, int_t *nodeList, zLUstruct_t *, gridinfo3d_t *)
void zlsum_fmod_inv(doublecomplex *, doublecomplex *, doublecomplex *, doublecomplex *, int, int_t, int *fmod, int_t *, gridinfo_t *, zLocalLU_t *, SuperLUStat_t **, int_t *, int_t *, int_t, int_t, int_t, int_t, int, int)
Definition: pzgstrs_lsum.c:427
zLUValSubBuf_t ** zLluBufInitArr(int_t numLA, zLUstruct_t *LUstruct)
void zZeroLblocks(int, int, gridinfo_t *, zLUstruct_t *)
Sets all entries of matrix L to zero.
Definition: zutil_dist.c:777
void zgather_u(int_t num_u_blks, Ublock_info_t *Ublock_info, int_t *usub, doublecomplex *uval, doublecomplex *bigU, int_t ldu, int_t *xsup, int_t klst)
int pzgsmv_AXglobal(int_t, int_t[], doublecomplex[], int_t[], doublecomplex[], doublecomplex[])
Definition: pzgsmv_AXglobal.c:258
void zRgather_L(int_t k, int_t *lsub, doublecomplex *lusup, gEtreeInfo_t *, Glu_persist_t *, gridinfo_t *, HyP_t *, int_t *myIperm, int_t *iperm_c_supno)
int_t zIRecv_LDiagBlock(int_t k0, doublecomplex *L_blk_ptr, int_t size, int_t src, MPI_Request *, gridinfo_t *, SCT_t *, int)
ztrf3Dpartition_t * zinitTrf3Dpartition(int_t nsupers, superlu_dist_options_t *options, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d)
int_t zSchurComplementSetup(int_t k, int *msgcnt, Ublock_info_t *, Remain_info_t *, uPanelInfo_t *, lPanelInfo_t *, int_t *, int_t *, int_t *, doublecomplex *bigU, int_t *Lsub_buf, doublecomplex *Lval_buf, int_t *Usub_buf, doublecomplex *Uval_buf, gridinfo_t *, zLUstruct_t *)
int_t zreduceSolvedX_newsolve(int_t treeId, int_t sender, int_t receiver, doublecomplex *x, int nrhs, ztrf3Dpartition_t *trf3Dpartition, zLUstruct_t *LUstruct, gridinfo3d_t *grid3d, doublecomplex *recvbuf, xtrsTimer_t *xtrsTimer)
Definition: pzgstrs3d.c:1492
void zScaleAdd_CompRowLoc_Matrix_dist(SuperMatrix *, SuperMatrix *, doublecomplex)
Scale and add: adds a scalar multiple of one matrix to another. A_{i,j} = c * A_{i,...
Definition: zutil_dist.c:420
int_t zReDistribute_A(SuperMatrix *A, zScalePermstruct_t *ScalePermstruct, Glu_freeable_t *Glu_freeable, int_t *xsup, int_t *supno, gridinfo_t *grid, int_t *colptr[], int_t *rowind[], doublecomplex *a[])
Definition: pzdistribute.c:66
void zlsum_fmod_inv_master(doublecomplex *, doublecomplex *, doublecomplex *, doublecomplex *, int, int, int_t, int *fmod, int_t, int_t *, gridinfo_t *, zLocalLU_t *, SuperLUStat_t **, int_t, int_t, int_t, int_t, int, int)
Definition: pzgstrs_lsum.c:992
int zLluBufFreeArr(int_t numLA, zLUValSubBuf_t **LUvsbs)
int_t zWaitL(int_t k, int *msgcnt, int *msgcntU, MPI_Request *, MPI_Request *, gridinfo_t *, zLUstruct_t *, SCT_t *)
Mtype_t
Definition: supermatrix.h:42
Dtype_t
Definition: supermatrix.h:35
Stype_t
Definition: supermatrix.h:22
int j
Definition: sutil_dist.c:287