SuperLU Distributed 9.0.0
gpu3d
slustruct_gpu.h File Reference

Descriptions and declarations for structures used in GPU. More...

#include "superlu_sdefs.h"
#include "gpu_api_utils.h"
Include dependency graph for slustruct_gpu.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  sSCUbuf_gpu_t
 
struct  sLUstruct_gpu_t
 
struct  ssluGPU_t
 

Macros

#define MAX_NGPU_STREAMS   32
 
#define checkGPUErrors(val)   check ( (val), #val, __FILE__, __LINE__ )
 

Functions

static void check (gpuError_t result, char const *const func, const char *const file, int const line)
 
int ssparseTreeFactor_ASYNC_GPU (sForest_t *sforest, commRequests_t **comReqss, sscuBufs_t *scuBufs, packLUInfo_t *packLUInfo, msgs_t **msgss, sLUValSubBuf_t **LUvsbs, sdiagFactBufs_t **dFBufs, factStat_t *factStat, factNodelists_t *fNlists, gEtreeInfo_t *gEtreeInfo, superlu_dist_options_t *options, int_t *gIperm_c_supno, int ldt, ssluGPU_t *sluGPU, d2Hreduce_t *d2Hred, HyP_t *HyP, sLUstruct_t *LUstruct, gridinfo3d_t *grid3d, SuperLUStat_t *stat, double thresh, SCT_t *SCT, int tag_ub, int *info)
 
int sinitD2Hreduce (int next_k, d2Hreduce_t *d2Hred, int last_flag, HyP_t *HyP, ssluGPU_t *sluGPU, gridinfo_t *grid, sLUstruct_t *LUstruct, SCT_t *SCT)
 
int sreduceGPUlu (int last_flag, d2Hreduce_t *d2Hred, ssluGPU_t *sluGPU, SCT_t *SCT, gridinfo_t *grid, sLUstruct_t *LUstruct)
 
int swaitGPUscu (int streamId, ssluGPU_t *sluGPU, SCT_t *SCT)
 
int ssendLUpanelGPU2HOST (int_t k0, d2Hreduce_t *d2Hred, ssluGPU_t *sluGPU, SuperLUStat_t *)
 
int ssendSCUdataHost2GPU (int_t streamId, int_t *lsub, int_t *usub, float *bigU, int_t bigu_send_size, int_t Remain_lbuf_send_size, ssluGPU_t *sluGPU, HyP_t *HyP)
 
int sinitSluGPU3D_t (ssluGPU_t *sluGPU, sLUstruct_t *LUstruct, gridinfo3d_t *grid3d, int_t *perm_c_supno, int_t n, int_t buffer_size, int_t bigu_size, int_t ldt, SuperLUStat_t *)
 
int sSchurCompUpdate_GPU (int_t streamId, int_t jj_cpu, int_t nub, int_t klst, int_t knsupc, int_t Rnbrow, int_t RemainBlk, int_t Remain_lbuf_send_size, int_t bigu_send_size, int_t ldu, int_t mcb, int_t buffer_size, int_t lsub_len, int_t usub_len, int_t ldt, int_t k0, ssluGPU_t *sluGPU, gridinfo_t *grid, SuperLUStat_t *)
 
void sCopyLUToGPU3D (int *isNodeInMyGrid, sLocalLU_t *A_host, ssluGPU_t *sluGPU, Glu_persist_t *Glu_persist, int_t n, gridinfo3d_t *grid3d, int_t buffer_size, int_t bigu_size, int_t ldt, SuperLUStat_t *)
 
int sreduceAllAncestors3d_GPU (int_t ilvl, int_t *myNodeCount, int_t **treePerm, sLUValSubBuf_t *LUvsb, sLUstruct_t *LUstruct, gridinfo3d_t *grid3d, ssluGPU_t *sluGPU, d2Hreduce_t *d2Hred, factStat_t *factStat, HyP_t *HyP, SCT_t *SCT, SuperLUStat_t *)
 
void ssyncAllfunCallStreams (ssluGPU_t *sluGPU, SCT_t *SCT)
 
int sfree_LUstruct_gpu (ssluGPU_t *sluGPU, SuperLUStat_t *)
 
void sPrint_matrix (char *desc, int_t m, int_t n, float *dA, int_t lda)
 

Detailed Description

Descriptions and declarations for structures used in GPU.

-- Distributed SuperLU routine (version 9.0) --
Lawrence Berkeley National Lab, Univ. of California Berkeley,
Georgia Institute of Technology, Oak Ridge National Laboratory
March 14, 2021 version 7.0.0

Last update: December 12, 2021  v7.2.0

Macro Definition Documentation

◆ checkGPUErrors

#define checkGPUErrors (   val)    check ( (val), #val, __FILE__, __LINE__ )

◆ MAX_NGPU_STREAMS

#define MAX_NGPU_STREAMS   32

Function Documentation

◆ check()

static void check ( gpuError_t  result,
char const *const  func,
const char *const  file,
int const  line 
)
static

◆ sCopyLUToGPU3D()

void sCopyLUToGPU3D ( int *  isNodeInMyGrid,
sLocalLU_t A_host,
ssluGPU_t sluGPU,
Glu_persist_t Glu_persist,
int_t  n,
gridinfo3d_t grid3d,
int_t  buffer_size,
int_t  bigu_size,
int_t  ldt,
SuperLUStat_t  
)

◆ sfree_LUstruct_gpu()

int sfree_LUstruct_gpu ( ssluGPU_t sluGPU,
SuperLUStat_t  
)
Here is the caller graph for this function:

◆ sinitD2Hreduce()

int sinitD2Hreduce ( int  next_k,
d2Hreduce_t d2Hred,
int  last_flag,
HyP_t HyP,
ssluGPU_t sluGPU,
gridinfo_t grid,
sLUstruct_t LUstruct,
SCT_t SCT 
)

◆ sinitSluGPU3D_t()

int sinitSluGPU3D_t ( ssluGPU_t sluGPU,
sLUstruct_t LUstruct,
gridinfo3d_t grid3d,
int_t perm_c_supno,
int_t  n,
int_t  buffer_size,
int_t  bigu_size,
int_t  ldt,
SuperLUStat_t  
)
Here is the caller graph for this function:

◆ sPrint_matrix()

void sPrint_matrix ( char *  desc,
int_t  m,
int_t  n,
float *  dA,
int_t  lda 
)

◆ sreduceAllAncestors3d_GPU()

int sreduceAllAncestors3d_GPU ( int_t  ilvl,
int_t myNodeCount,
int_t **  treePerm,
sLUValSubBuf_t LUvsb,
sLUstruct_t LUstruct,
gridinfo3d_t grid3d,
ssluGPU_t sluGPU,
d2Hreduce_t d2Hred,
factStat_t factStat,
HyP_t HyP,
SCT_t SCT,
SuperLUStat_t  
)
Here is the caller graph for this function:

◆ sreduceGPUlu()

int sreduceGPUlu ( int  last_flag,
d2Hreduce_t d2Hred,
ssluGPU_t sluGPU,
SCT_t SCT,
gridinfo_t grid,
sLUstruct_t LUstruct 
)

◆ sSchurCompUpdate_GPU()

int sSchurCompUpdate_GPU ( int_t  streamId,
int_t  jj_cpu,
int_t  nub,
int_t  klst,
int_t  knsupc,
int_t  Rnbrow,
int_t  RemainBlk,
int_t  Remain_lbuf_send_size,
int_t  bigu_send_size,
int_t  ldu,
int_t  mcb,
int_t  buffer_size,
int_t  lsub_len,
int_t  usub_len,
int_t  ldt,
int_t  k0,
ssluGPU_t sluGPU,
gridinfo_t grid,
SuperLUStat_t  
)

◆ ssendLUpanelGPU2HOST()

int ssendLUpanelGPU2HOST ( int_t  k0,
d2Hreduce_t d2Hred,
ssluGPU_t sluGPU,
SuperLUStat_t  
)

◆ ssendSCUdataHost2GPU()

int ssendSCUdataHost2GPU ( int_t  streamId,
int_t lsub,
int_t usub,
float *  bigU,
int_t  bigu_send_size,
int_t  Remain_lbuf_send_size,
ssluGPU_t sluGPU,
HyP_t HyP 
)

◆ ssparseTreeFactor_ASYNC_GPU()

int ssparseTreeFactor_ASYNC_GPU ( sForest_t sforest,
commRequests_t **  comReqss,
sscuBufs_t scuBufs,
packLUInfo_t packLUInfo,
msgs_t **  msgss,
sLUValSubBuf_t **  LUvsbs,
sdiagFactBufs_t **  dFBufs,
factStat_t factStat,
factNodelists_t fNlists,
gEtreeInfo_t gEtreeInfo,
superlu_dist_options_t options,
int_t gIperm_c_supno,
int  ldt,
ssluGPU_t sluGPU,
d2Hreduce_t d2Hred,
HyP_t HyP,
sLUstruct_t LUstruct,
gridinfo3d_t grid3d,
SuperLUStat_t stat,
double  thresh,
SCT_t SCT,
int  tag_ub,
int *  info 
)
Here is the caller graph for this function:

◆ ssyncAllfunCallStreams()

void ssyncAllfunCallStreams ( ssluGPU_t sluGPU,
SCT_t SCT 
)

◆ swaitGPUscu()

int swaitGPUscu ( int  streamId,
ssluGPU_t sluGPU,
SCT_t SCT 
)