SuperLU Distributed 8.2.1
Distributed memory sparse direct solver
psdrive3d1.c File Reference

Driver program for PSGSSVX3D example. More...

#include "superlu_sdefs.h"
Include dependency graph for psdrive3d1.c:

Functions

static void matCheck (int n, int m, float *A, int LDA, float *B, int LDB)
 
static void checkNRFMT (NRformat_loc *A, NRformat_loc *B)
 
int main (int argc, char *argv[])
 
int cpp_defs ()
 

Detailed Description

Driver program for PSGSSVX3D example.

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.

   -- Distributed SuperLU routine (version 7.0) --
   Lawrence Berkeley National Lab, Georgia Institute of Technology,
   Oak Ridge National Lab 
   September 10, 2021

 */


/*!


   
   Purpose
   =======

   The driver program PSDRIVE3D1.

   This example illustrates how to use PSGSSVX3D to sovle the systems
   with the same A but different right-hand side, possibly with
   different number of right-hand sides.
   In this case, we factorize A only once in the first call to PSGSSVX3D,
   and reuse the following data structures in the subsequent call to
   PSGSSVX3D:
          ScalePermstruct  : DiagScale, R, C, perm_r, perm_c
          LUstruct         : Glu_persist, Llu
          SOLVEstruct      : communication metadata for SpTRSV, SpMV, and
                             3D<->2D gather/scatter of {A,B} stored in A3d.

   The program may be run by typing:
      mpiexec -np 
 psdrive3d1 -r <proc rows> -c <proc columns> \
                                      -d <proc Z-dimension> <input_file>
   NOTE: total number of processes p = r * c * d
         (d must be a power-of-two, e.g., 1, 2, 4, ...)

   

Function Documentation

◆ checkNRFMT()

static void checkNRFMT ( NRformat_loc A,
NRformat_loc B 
)
static
Here is the call graph for this function:

◆ cpp_defs()

int cpp_defs ( )
Here is the caller graph for this function:

◆ main()

int main ( int  argc,
char *  argv[] 
)
Here is the call graph for this function:

◆ matCheck()

static void matCheck ( int  n,
int  m,
float *  A,
int  LDA,
float *  B,
int  LDB 
)
static
Here is the caller graph for this function: