SuperLU Distributed 9.0.0
gpu3d
psgssvx3d_csc_batch.c File Reference
#include "superlu_ddefs.h"
#include "superlu_defs.h"
#include "superlu_upacked.h"
#include <stdbool.h>
Include dependency graph for psgssvx3d_csc_batch.c:

Functions

int file_sPrint_CompRowLoc_to_Triples (SuperMatrix *A)
 
int psgssvx3d_csc_batch (superlu_dist_options_t *options, int batchCount, int m, int n, int nnz, int nrhs, handle_t *SparseMatrix_handles, float **RHSptr, int *ldRHS, float **ReqPtr, float **CeqPtr, int **RpivPtr, int **CpivPtr, DiagScale_t *DiagScale, handle_t *F, float **Xptr, int *ldX, float **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 each matrix Ai;
This is the fixed-size interface: all the input matrices have the same sparsity structure. More...
 

Detailed Description

Copyright (c) 2003, The Regents of the University of California, through Lawrence Berkeley National Laboratory (subject to receipt of any required approvals from U.S. Dept. of Energy)

All rights reserved.

The source code is distributed under BSD license, see the file License.txt at the top-level directory.

Function Documentation

◆ file_sPrint_CompRowLoc_to_Triples()

int file_sPrint_CompRowLoc_to_Triples ( SuperMatrix A)

◆ psgssvx3d_csc_batch()

int psgssvx3d_csc_batch ( superlu_dist_options_t options,
int  batchCount,
int  m,
int  n,
int  nnz,
int  nrhs,
handle_t SparseMatrix_handles,
float **  RHSptr,
int *  ldRHS,
float **  ReqPtr,
float **  CeqPtr,
int **  RpivPtr,
int **  CpivPtr,
DiagScale_t DiagScale,
handle_t F,
float **  Xptr,
int *  ldX,
float **  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 each matrix Ai;
This is the fixed-size interface: all the input matrices have the same sparsity structure.

Parameters
[in]optionssolver options
[in]batchCountnumber of matrices in the batch
[in]mrow dimension of the matrices
[in]ncolumn dimension of the matrices
[in]nnznumber of non-zero entries in each matrix
[in]nrhsnumber of right-hand-sides
[in,out]SparseMatrix_handles array of sparse matrix handles, of size 'batchCount', each pointing to the actual storage in CSC format, see 'NCformat' in SuperMatix structure Each A is overwritten by row/col scaling R*A*C
[in,out]RHSptr array of pointers to dense storage of right-hand sides B Each B is overwritten by row/col scaling R*B*C
[in]ldRHSarray of leading dimensions of RHS
[in,out]ReqPtrarray of pointers to diagonal row scaling vectors R, each of size m ReqPtr[] are allocated internally if equilibration is asked for
[in,out]CeqPtrarray of pointers to diagonal colum scaling vectors C, each of size n CeqPtr[] are allocated internally if equilibration is asked for
[in,out]RpivPtrarray of pointers to row permutation vectors, each of size m
[in,out]CpivPtrarray of pointers to column permutation vectors, each of size n
[in,out]DiagScalearray of indicators how equilibration is done for each matrix
[out]Farray of handles pointing to the factored matrices
[out]Xptrarray of pointers to dense storage of solution
[in]ldXarray of leading dimensions of X
[out]Berrsarray of poiniters to backward errors
[in]
grid3d contains MPI communicator
Parameters
[out]statrecords algorithms statistics such as runtime, memory usage, etc.
[out]infoflags the errors on return

!!! CHECK SETTING: TO BE SURE TO USE GPU VERSIONS !!!! gpu3dVersion superlu_acc_offload

Here is the call graph for this function:
Here is the caller graph for this function: