PaStiX Handbook
6.4.0
|
Go to the source code of this file.
Data Structures | |
struct | pastix_lrblock_s |
The block low-rank structure to hold a matrix in low-rank form. More... | |
struct | pastix_lr_s |
Structure to define the type of function to use for the low-rank kernels and their parameters. More... | |
Macros | |
#define | PASTIX_LRM3_ORTHOU (1 << 0) |
Macro to specify if the U part of a low-rank matrix is orthogonal or not (Used in LRMM functions). | |
#define | PASTIX_LRM3_ALLOCU (1 << 1) |
Macro to specify if the U part of a low-rank matrix has been allocated and need to be freed or not (Used in LRMM functions). | |
#define | PASTIX_LRM3_ALLOCV (1 << 2) |
Macro to specify if the V part of a low-rank matrix has been allocated and need to be freed or not (Used in LRMM functions). | |
#define | PASTIX_LRM3_TRANSB (1 << 3) |
Macro to specify if the the operator on B, still needs to be applied to the V part of the low-rank matrix or not (Used in LRMM functions). | |
Typedefs | |
typedef struct pastix_lr_s | pastix_lr_t |
Structure to define the type of function to use for the low-rank kernels and their parameters. | |
typedef struct pastix_lrblock_s | pastix_lrblock_t |
The block low-rank structure to hold a matrix in low-rank form. | |
typedef pastix_fixdbl_t(* | fct_ge2lr_t) (int, pastix_fixdbl_t, pastix_int_t, pastix_int_t, pastix_int_t, const void *, pastix_int_t, pastix_lrblock_t *) |
Type of the functions to compress a dense block into a low-rank form. | |
typedef pastix_fixdbl_t(* | fct_rradd_t) (const pastix_lr_t *, pastix_trans_t, const void *, pastix_int_t, pastix_int_t, const pastix_lrblock_t *, pastix_int_t, pastix_int_t, pastix_lrblock_t *, pastix_int_t, pastix_int_t) |
Type of the functions to add two low-rank blocks together. | |
typedef enum memory_stats_e | memory_stats_t |
Enum to define the type of block. | |
Enumerations | |
enum | memory_stats_e { FR_InDiag = 0 , FR_OffDiag = 1 , LR_InDiag = 2 , LR_InSele = 3 , LR_OffDiag = 4 , LR_DInD = 5 , MEMORY_STATS_SIZE } |
Enum to define the type of block. More... | |
Functions | |
static pastix_int_t | core_get_rklimit_max (pastix_int_t M, pastix_int_t N) |
Compute the maximal rank accepted for a given matrix size for testings. More... | |
static pastix_int_t | core_get_rklimit_end (pastix_int_t M, pastix_int_t N) |
Compute the maximal rank accepted for a given matrix size for Just-In-Time strategy. More... | |
static pastix_int_t | core_get_rklimit_begin (pastix_int_t M, pastix_int_t N) |
Compute the maximal rank accepted for a given matrix size for Minimal-Memory strategy. More... | |
static pastix_int_t | core_get_rklimit_test (pastix_int_t M, pastix_int_t N) |
TODO. More... | |
Variables | |
const char * | compmeth_shnames [PastixCompressMethodNbr] |
List of short names for the compression kernels. | |
const char * | compmeth_lgnames [PastixCompressMethodNbr] |
List of long names for the compression kernels. | |
double | pastix_lr_minratio |
Define the minimal ratio for which we accept to compress a matrix into a low-rank form or not. More... | |
pastix_int_t | pastix_lr_ortho |
Define the orthogonalization method. | |
pastix_int_t(* | core_get_rklimit )(pastix_int_t, pastix_int_t) |
Compute the maximal rank accepted for a given matrix size. The pointer is set according to the low-rank strategy used. More... | |
const fct_ge2lr_t | ge2lrMethods [PastixCompressMethodNbr][4] |
Array of pointers to the multiple arithmetic and algorithmic variants of ge2lr. | |
const fct_rradd_t | rraddMethods [PastixCompressMethodNbr][4] |
Array of pointers to the multiple arithmetic and algorithmic variants of rradd. | |
PaStiX kernel header.
Definition in file pastix_lowrank.h.