PaStiX Handbook  6.3.2
Flops and time cost models

Data Structures

struct  cost_matrix_s
 Arrays of double to store the cost of each element in the matrix. More...
 

Typedefs

typedef struct cost_matrix_s CostMatrix
 Arrays of double to store the cost of each element in the matrix.
 

Functions

void costMatrixInit (CostMatrix *costmtx)
 Initialize the cost matrix structure. More...
 
void costMatrixExit (CostMatrix *costmtx)
 Free the cost matrix structure. More...
 
CostMatrixcostMatrixBuild (const symbol_matrix_t *symbmtx, pastix_coeftype_t flttype, pastix_factotype_t factotype)
 Build the cost matrix structure from the symbol matrix structure. More...
 

Detailed Description

This module contains all subroutines to initialize the cost arrays for a single matrix that will be used in the proportionnal mapping algorithm, as well as the simulation of the numerical factorization that defines the final mapping.


Data Type Documentation

◆ cost_matrix_s

struct cost_matrix_s

Arrays of double to store the cost of each element in the matrix.

Definition at line 30 of file cost.h.

Data Fields
double * blokcost

Cost of the update generated by this block for off-diagonal block, fact+solve otherwise

double * cblkcost

Cost of all the operations linked to a panel

Function Documentation

◆ costMatrixInit()

void costMatrixInit ( CostMatrix costmtx)

Initialize the cost matrix structure.

Parameters
[in,out]costmtxThe cost matrix structure to initialize.

Definition at line 38 of file cost.c.

References cost_matrix_s::blokcost, and cost_matrix_s::cblkcost.

Referenced by costMatrixBuild().

◆ costMatrixExit()

void costMatrixExit ( CostMatrix costmtx)

Free the cost matrix structure.

Parameters
[in,out]costmtxThe cost matrix structure to free.

Definition at line 57 of file cost.c.

References cost_matrix_s::blokcost, and cost_matrix_s::cblkcost.

Referenced by pastix_subtask_blend(), and splitSymbol().

◆ costMatrixBuild()

CostMatrix * costMatrixBuild ( const symbol_matrix_t symbmtx,
pastix_coeftype_t  flttype,
pastix_factotype_t  factotype 
)

Build the cost matrix structure from the symbol matrix structure.

Parameters
[in]symbmtxThe symbol matrix structure.
[in]flttypeThe floating point arithmetic that will be used to adapt the cost models.
[in]factotypeThe factorization that will be appplied to adapt the cost models.
Returns
The cost matrix structure initialized with the cost of each block operation, and each cblk operation.

Definition at line 91 of file cost.c.

References cost_matrix_s::blokcost, symbol_matrix_s::bloknbr, cost_matrix_s::cblkcost, symbol_matrix_s::cblknbr, costMatrixInit(), and pastixSymbolGetTimes().

Referenced by pastix_subtask_blend(), and splitSymbol().