PaStiX Handbook  6.4.0

Functions

void starpu_task_cgetrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 Submits starpu getrfsp cblk or blok task. More...
 
void starpu_task_getrf_cgemmsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, const SolverBlok *blokB, SolverCblk *fcblk, int prio)
 Submits starpu cgemmsp cblk or blok task. More...
 
void starpu_cgetrf_sp1dplus_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LU factorization with 1D kernels. More...
 
void starpu_cgetrf_sp1dplus_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LU factorization with 1D kernels. More...
 
void starpu_cgetrf_sp2d_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LU factorization with 1D and 2D kernels. More...
 
void starpu_cgetrf_sp2d_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LU factorization with 1D and 2D kernels. More...
 
void starpu_cgetrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse LU factorization using StarPU runtime. More...
 
void starpu_task_sgetrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 Submits starpu getrfsp cblk or blok task. More...
 
void starpu_task_getrf_sgemmsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, const SolverBlok *blokB, SolverCblk *fcblk, int prio)
 Submits starpu sgemmsp cblk or blok task. More...
 
void starpu_sgetrf_sp1dplus_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LU factorization with 1D kernels. More...
 
void starpu_sgetrf_sp1dplus_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LU factorization with 1D kernels. More...
 
void starpu_sgetrf_sp2d_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LU factorization with 1D and 2D kernels. More...
 
void starpu_sgetrf_sp2d_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LU factorization with 1D and 2D kernels. More...
 
void starpu_sgetrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse LU factorization using StarPU runtime. More...
 
void starpu_task_dgetrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 Submits starpu getrfsp cblk or blok task. More...
 
void starpu_task_getrf_dgemmsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, const SolverBlok *blokB, SolverCblk *fcblk, int prio)
 Submits starpu dgemmsp cblk or blok task. More...
 
void starpu_dgetrf_sp1dplus_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LU factorization with 1D kernels. More...
 
void starpu_dgetrf_sp1dplus_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LU factorization with 1D kernels. More...
 
void starpu_dgetrf_sp2d_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LU factorization with 1D and 2D kernels. More...
 
void starpu_dgetrf_sp2d_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LU factorization with 1D and 2D kernels. More...
 
void starpu_dgetrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse LU factorization using StarPU runtime. More...
 
void starpu_task_zgetrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 Submits starpu getrfsp cblk or blok task. More...
 
void starpu_task_getrf_zgemmsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, const SolverBlok *blokB, SolverCblk *fcblk, int prio)
 Submits starpu zgemmsp cblk or blok task. More...
 
void starpu_zgetrf_sp1dplus_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LU factorization with 1D kernels. More...
 
void starpu_zgetrf_sp1dplus_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LU factorization with 1D kernels. More...
 
void starpu_zgetrf_sp2d_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LU factorization with 1D and 2D kernels. More...
 
void starpu_zgetrf_sp2d_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LU factorization with 1D and 2D kernels. More...
 
void starpu_zgetrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse LU factorization using StarPU runtime. More...
 

Detailed Description

Function Documentation

◆ starpu_task_cgetrfsp()

void starpu_task_cgetrfsp ( sopalin_data_t *  sopalin_data,
SolverCblk cblk,
int  prio 
)

Submits starpu getrfsp cblk or blok task.

Parameters
[in]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in]cblkThe column block.
[in]prioThe task priority.

Definition at line 49 of file starpu_cgetrf.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, pastix_int_t, PastixLCoef, PastixNonUnit, PastixNoTrans, PastixRight, PastixUCoef, PastixUnit, PastixUpper, starpu_task_blok_cgetrf(), starpu_task_blok_ctrsmsp(), and starpu_task_cblk_cgetrfsp().

Referenced by starpu_cgetrf_sp1dplus_ll(), starpu_cgetrf_sp1dplus_rl(), starpu_cgetrf_sp2d_ll(), and starpu_cgetrf_sp2d_rl().

◆ starpu_task_getrf_cgemmsp()

void starpu_task_getrf_cgemmsp ( sopalin_data_t *  sopalin_data,
SolverCblk cblk,
const SolverBlok blokB,
SolverCblk fcblk,
int  prio 
)

Submits starpu cgemmsp cblk or blok task.

Parameters
[in]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in]cblkThe column block.
[in]blokBThe block.
[in]fcblkThe facing column block.
[in]prioThe task priority.

Definition at line 108 of file starpu_cgetrf.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, PastixLCoef, PastixTrans, PastixUCoef, starpu_task_blok_cgemmsp(), and starpu_task_cblk_cgemmsp().

Referenced by starpu_cgetrf_sp2d_ll(), and starpu_cgetrf_sp2d_rl().

◆ starpu_cgetrf_sp1dplus_rl()

void starpu_cgetrf_sp1dplus_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LU factorization with 1D kernels.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

Parameters
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in,out]descStarPU descriptor of the sparse matrix.

Definition at line 183 of file starpu_cgetrf.c.

References solver_matrix_s::cblknbr, solver_matrix_s::cblktab, solver_cblk_s::cblktype, solver_cblk_s::fblokptr, solver_blok_s::fcblknm, pastix_int_t, PastixLCoef, PastixLUCoef, PastixTrans, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_cadd_1dp_fanin(), starpu_task_cadd_1dp_recv(), starpu_task_cblk_cgemmsp(), and starpu_task_cgetrfsp().

Referenced by starpu_cgetrf().

◆ starpu_cgetrf_sp1dplus_ll()

void starpu_cgetrf_sp1dplus_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LU factorization with 1D kernels.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

Parameters
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in,out]descStarPU descriptor of the sparse matrix.

Definition at line 266 of file starpu_cgetrf.c.

References solver_matrix_s::bloktab, solver_cblk_s::brownum, solver_matrix_s::browtab, solver_matrix_s::cblknbr, solver_matrix_s::cblktab, solver_cblk_s::cblktype, solver_cblk_s::fblokptr, solver_blok_s::lcblknm, pastix_int_t, PastixLCoef, PastixLUCoef, PastixTrans, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_cadd_1dp_fanin(), starpu_task_cadd_1dp_recv(), starpu_task_cblk_cgemmsp(), and starpu_task_cgetrfsp().

Referenced by starpu_cgetrf().

◆ starpu_cgetrf_sp2d_rl()

void starpu_cgetrf_sp2d_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LU factorization with 1D and 2D kernels.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

Parameters
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in,out]descStarPU descriptor of the sparse matrix.

Definition at line 357 of file starpu_cgetrf.c.

References solver_matrix_s::cblkmax1d, solver_matrix_s::cblkmin2d, solver_matrix_s::cblknbr, solver_matrix_s::cblktab, solver_cblk_s::cblktype, solver_cblk_s::fblokptr, solver_blok_s::fcblknm, pastix_int_t, PastixLCoef, PastixLUCoef, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_cadd_1dp_fanin(), starpu_task_cadd_1dp_recv(), starpu_task_cadd_2d_fanin(), starpu_task_cadd_2d_recv(), starpu_task_cgetrfsp(), and starpu_task_getrf_cgemmsp().

Referenced by starpu_cgetrf().

◆ starpu_cgetrf_sp2d_ll()

void starpu_cgetrf_sp2d_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LU factorization with 1D and 2D kernels.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

Parameters
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in,out]descStarPU descriptor of the sparse matrix.

Definition at line 492 of file starpu_cgetrf.c.

References solver_matrix_s::bloktab, solver_cblk_s::brownum, solver_matrix_s::browtab, solver_matrix_s::cblknbr, solver_matrix_s::cblktab, solver_cblk_s::cblktype, solver_blok_s::fcblknm, solver_blok_s::lcblknm, pastix_int_t, PastixLCoef, PastixLUCoef, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_cadd_fanin(), starpu_task_cadd_recv(), starpu_task_cgetrfsp(), and starpu_task_getrf_cgemmsp().

Referenced by starpu_cgetrf().

◆ starpu_cgetrf()

void starpu_cgetrf ( pastix_data_t pastix_data,
sopalin_data_t *  sopalin_data 
)

Perform a sparse LU factorization using StarPU runtime.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

The algorithm is automatically chosen between the 1D and 2D version based on the API parameter IPARM_TASKS2D_LEVEL. If IPARM_TASKS2D_LEVEL != 0 the 2D scheme is applied, the 1D otherwise.

Parameters
[in,out]pastix_dataThe pastix_data structure that describes the solver instance.
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.

Definition at line 587 of file starpu_cgetrf.c.

References pastix_data_s::inter_node_comm, pastix_data_s::inter_node_procnbr, pastix_data_s::inter_node_procnum, pastix_data_s::iparm, IPARM_FACTO_LOOK_SIDE, IPARM_TASKS2D_LEVEL, IPARM_TRACE, pastix_data_s::pastix_comm, pastix_starpu_init(), PastixFactLeftLooking, PastixGeneral, PastixTraceNumfact, pastix_data_s::solvmatr, starpu_sparse_matrix_desc_s::solvmtx, pastix_data_s::starpu, starpu_cgetrf_sp1dplus_ll(), starpu_cgetrf_sp1dplus_rl(), starpu_cgetrf_sp2d_ll(), starpu_cgetrf_sp2d_rl(), starpu_sparse_matrix_getoncpu(), and starpu_sparse_matrix_init().

◆ starpu_task_sgetrfsp()

void starpu_task_sgetrfsp ( sopalin_data_t *  sopalin_data,
SolverCblk cblk,
int  prio 
)

Submits starpu getrfsp cblk or blok task.

Parameters
[in]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in]cblkThe column block.
[in]prioThe task priority.

Definition at line 49 of file starpu_sgetrf.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, pastix_int_t, PastixLCoef, PastixNonUnit, PastixNoTrans, PastixRight, PastixUCoef, PastixUnit, PastixUpper, starpu_task_blok_sgetrf(), starpu_task_blok_strsmsp(), and starpu_task_cblk_sgetrfsp().

Referenced by starpu_sgetrf_sp1dplus_ll(), starpu_sgetrf_sp1dplus_rl(), starpu_sgetrf_sp2d_ll(), and starpu_sgetrf_sp2d_rl().

◆ starpu_task_getrf_sgemmsp()

void starpu_task_getrf_sgemmsp ( sopalin_data_t *  sopalin_data,
SolverCblk cblk,
const SolverBlok blokB,
SolverCblk fcblk,
int  prio 
)

Submits starpu sgemmsp cblk or blok task.

Parameters
[in]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in]cblkThe column block.
[in]blokBThe block.
[in]fcblkThe facing column block.
[in]prioThe task priority.

Definition at line 108 of file starpu_sgetrf.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, PastixLCoef, PastixTrans, PastixUCoef, starpu_task_blok_sgemmsp(), and starpu_task_cblk_sgemmsp().

Referenced by starpu_sgetrf_sp2d_ll(), and starpu_sgetrf_sp2d_rl().

◆ starpu_sgetrf_sp1dplus_rl()

void starpu_sgetrf_sp1dplus_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LU factorization with 1D kernels.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

Parameters
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in,out]descStarPU descriptor of the sparse matrix.

Definition at line 183 of file starpu_sgetrf.c.

References solver_matrix_s::cblknbr, solver_matrix_s::cblktab, solver_cblk_s::cblktype, solver_cblk_s::fblokptr, solver_blok_s::fcblknm, pastix_int_t, PastixLCoef, PastixLUCoef, PastixTrans, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_cblk_sgemmsp(), starpu_task_sadd_1dp_fanin(), starpu_task_sadd_1dp_recv(), and starpu_task_sgetrfsp().

Referenced by starpu_sgetrf().

◆ starpu_sgetrf_sp1dplus_ll()

void starpu_sgetrf_sp1dplus_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LU factorization with 1D kernels.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

Parameters
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in,out]descStarPU descriptor of the sparse matrix.

Definition at line 266 of file starpu_sgetrf.c.

References solver_matrix_s::bloktab, solver_cblk_s::brownum, solver_matrix_s::browtab, solver_matrix_s::cblknbr, solver_matrix_s::cblktab, solver_cblk_s::cblktype, solver_cblk_s::fblokptr, solver_blok_s::lcblknm, pastix_int_t, PastixLCoef, PastixLUCoef, PastixTrans, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_cblk_sgemmsp(), starpu_task_sadd_1dp_fanin(), starpu_task_sadd_1dp_recv(), and starpu_task_sgetrfsp().

Referenced by starpu_sgetrf().

◆ starpu_sgetrf_sp2d_rl()

void starpu_sgetrf_sp2d_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LU factorization with 1D and 2D kernels.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

Parameters
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in,out]descStarPU descriptor of the sparse matrix.

Definition at line 357 of file starpu_sgetrf.c.

References solver_matrix_s::cblkmax1d, solver_matrix_s::cblkmin2d, solver_matrix_s::cblknbr, solver_matrix_s::cblktab, solver_cblk_s::cblktype, solver_cblk_s::fblokptr, solver_blok_s::fcblknm, pastix_int_t, PastixLCoef, PastixLUCoef, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_getrf_sgemmsp(), starpu_task_sadd_1dp_fanin(), starpu_task_sadd_1dp_recv(), starpu_task_sadd_2d_fanin(), starpu_task_sadd_2d_recv(), and starpu_task_sgetrfsp().

Referenced by starpu_sgetrf().

◆ starpu_sgetrf_sp2d_ll()

void starpu_sgetrf_sp2d_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LU factorization with 1D and 2D kernels.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

Parameters
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in,out]descStarPU descriptor of the sparse matrix.

Definition at line 492 of file starpu_sgetrf.c.

References solver_matrix_s::bloktab, solver_cblk_s::brownum, solver_matrix_s::browtab, solver_matrix_s::cblknbr, solver_matrix_s::cblktab, solver_cblk_s::cblktype, solver_blok_s::fcblknm, solver_blok_s::lcblknm, pastix_int_t, PastixLCoef, PastixLUCoef, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_getrf_sgemmsp(), starpu_task_sadd_fanin(), starpu_task_sadd_recv(), and starpu_task_sgetrfsp().

Referenced by starpu_sgetrf().

◆ starpu_sgetrf()

void starpu_sgetrf ( pastix_data_t pastix_data,
sopalin_data_t *  sopalin_data 
)

Perform a sparse LU factorization using StarPU runtime.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

The algorithm is automatically chosen between the 1D and 2D version based on the API parameter IPARM_TASKS2D_LEVEL. If IPARM_TASKS2D_LEVEL != 0 the 2D scheme is applied, the 1D otherwise.

Parameters
[in,out]pastix_dataThe pastix_data structure that describes the solver instance.
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.

Definition at line 587 of file starpu_sgetrf.c.

References pastix_data_s::inter_node_comm, pastix_data_s::inter_node_procnbr, pastix_data_s::inter_node_procnum, pastix_data_s::iparm, IPARM_FACTO_LOOK_SIDE, IPARM_TASKS2D_LEVEL, IPARM_TRACE, pastix_data_s::pastix_comm, pastix_starpu_init(), PastixFactLeftLooking, PastixGeneral, PastixTraceNumfact, pastix_data_s::solvmatr, starpu_sparse_matrix_desc_s::solvmtx, pastix_data_s::starpu, starpu_sgetrf_sp1dplus_ll(), starpu_sgetrf_sp1dplus_rl(), starpu_sgetrf_sp2d_ll(), starpu_sgetrf_sp2d_rl(), starpu_sparse_matrix_getoncpu(), and starpu_sparse_matrix_init().

◆ starpu_task_dgetrfsp()

void starpu_task_dgetrfsp ( sopalin_data_t *  sopalin_data,
SolverCblk cblk,
int  prio 
)

Submits starpu getrfsp cblk or blok task.

Parameters
[in]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in]cblkThe column block.
[in]prioThe task priority.

Definition at line 49 of file starpu_dgetrf.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, pastix_int_t, PastixLCoef, PastixNonUnit, PastixNoTrans, PastixRight, PastixUCoef, PastixUnit, PastixUpper, starpu_task_blok_dgetrf(), starpu_task_blok_dtrsmsp(), and starpu_task_cblk_dgetrfsp().

Referenced by starpu_dgetrf_sp1dplus_ll(), starpu_dgetrf_sp1dplus_rl(), starpu_dgetrf_sp2d_ll(), and starpu_dgetrf_sp2d_rl().

◆ starpu_task_getrf_dgemmsp()

void starpu_task_getrf_dgemmsp ( sopalin_data_t *  sopalin_data,
SolverCblk cblk,
const SolverBlok blokB,
SolverCblk fcblk,
int  prio 
)

Submits starpu dgemmsp cblk or blok task.

Parameters
[in]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in]cblkThe column block.
[in]blokBThe block.
[in]fcblkThe facing column block.
[in]prioThe task priority.

Definition at line 108 of file starpu_dgetrf.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, PastixLCoef, PastixTrans, PastixUCoef, starpu_task_blok_dgemmsp(), and starpu_task_cblk_dgemmsp().

Referenced by starpu_dgetrf_sp2d_ll(), and starpu_dgetrf_sp2d_rl().

◆ starpu_dgetrf_sp1dplus_rl()

void starpu_dgetrf_sp1dplus_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LU factorization with 1D kernels.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

Parameters
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in,out]descStarPU descriptor of the sparse matrix.

Definition at line 183 of file starpu_dgetrf.c.

References solver_matrix_s::cblknbr, solver_matrix_s::cblktab, solver_cblk_s::cblktype, solver_cblk_s::fblokptr, solver_blok_s::fcblknm, pastix_int_t, PastixLCoef, PastixLUCoef, PastixTrans, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_cblk_dgemmsp(), starpu_task_dadd_1dp_fanin(), starpu_task_dadd_1dp_recv(), and starpu_task_dgetrfsp().

Referenced by starpu_dgetrf().

◆ starpu_dgetrf_sp1dplus_ll()

void starpu_dgetrf_sp1dplus_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LU factorization with 1D kernels.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

Parameters
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in,out]descStarPU descriptor of the sparse matrix.

Definition at line 266 of file starpu_dgetrf.c.

References solver_matrix_s::bloktab, solver_cblk_s::brownum, solver_matrix_s::browtab, solver_matrix_s::cblknbr, solver_matrix_s::cblktab, solver_cblk_s::cblktype, solver_cblk_s::fblokptr, solver_blok_s::lcblknm, pastix_int_t, PastixLCoef, PastixLUCoef, PastixTrans, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_cblk_dgemmsp(), starpu_task_dadd_1dp_fanin(), starpu_task_dadd_1dp_recv(), and starpu_task_dgetrfsp().

Referenced by starpu_dgetrf().

◆ starpu_dgetrf_sp2d_rl()

void starpu_dgetrf_sp2d_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LU factorization with 1D and 2D kernels.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

Parameters
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in,out]descStarPU descriptor of the sparse matrix.

Definition at line 357 of file starpu_dgetrf.c.

References solver_matrix_s::cblkmax1d, solver_matrix_s::cblkmin2d, solver_matrix_s::cblknbr, solver_matrix_s::cblktab, solver_cblk_s::cblktype, solver_cblk_s::fblokptr, solver_blok_s::fcblknm, pastix_int_t, PastixLCoef, PastixLUCoef, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_dadd_1dp_fanin(), starpu_task_dadd_1dp_recv(), starpu_task_dadd_2d_fanin(), starpu_task_dadd_2d_recv(), starpu_task_dgetrfsp(), and starpu_task_getrf_dgemmsp().

Referenced by starpu_dgetrf().

◆ starpu_dgetrf_sp2d_ll()

void starpu_dgetrf_sp2d_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LU factorization with 1D and 2D kernels.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

Parameters
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in,out]descStarPU descriptor of the sparse matrix.

Definition at line 492 of file starpu_dgetrf.c.

References solver_matrix_s::bloktab, solver_cblk_s::brownum, solver_matrix_s::browtab, solver_matrix_s::cblknbr, solver_matrix_s::cblktab, solver_cblk_s::cblktype, solver_blok_s::fcblknm, solver_blok_s::lcblknm, pastix_int_t, PastixLCoef, PastixLUCoef, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_dadd_fanin(), starpu_task_dadd_recv(), starpu_task_dgetrfsp(), and starpu_task_getrf_dgemmsp().

Referenced by starpu_dgetrf().

◆ starpu_dgetrf()

void starpu_dgetrf ( pastix_data_t pastix_data,
sopalin_data_t *  sopalin_data 
)

Perform a sparse LU factorization using StarPU runtime.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

The algorithm is automatically chosen between the 1D and 2D version based on the API parameter IPARM_TASKS2D_LEVEL. If IPARM_TASKS2D_LEVEL != 0 the 2D scheme is applied, the 1D otherwise.

Parameters
[in,out]pastix_dataThe pastix_data structure that describes the solver instance.
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.

Definition at line 587 of file starpu_dgetrf.c.

References pastix_data_s::inter_node_comm, pastix_data_s::inter_node_procnbr, pastix_data_s::inter_node_procnum, pastix_data_s::iparm, IPARM_FACTO_LOOK_SIDE, IPARM_TASKS2D_LEVEL, IPARM_TRACE, pastix_data_s::pastix_comm, pastix_starpu_init(), PastixFactLeftLooking, PastixGeneral, PastixTraceNumfact, pastix_data_s::solvmatr, starpu_sparse_matrix_desc_s::solvmtx, pastix_data_s::starpu, starpu_dgetrf_sp1dplus_ll(), starpu_dgetrf_sp1dplus_rl(), starpu_dgetrf_sp2d_ll(), starpu_dgetrf_sp2d_rl(), starpu_sparse_matrix_getoncpu(), and starpu_sparse_matrix_init().

◆ starpu_task_zgetrfsp()

void starpu_task_zgetrfsp ( sopalin_data_t *  sopalin_data,
SolverCblk cblk,
int  prio 
)

Submits starpu getrfsp cblk or blok task.

Parameters
[in]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in]cblkThe column block.
[in]prioThe task priority.

Definition at line 49 of file starpu_zgetrf.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, pastix_int_t, PastixLCoef, PastixNonUnit, PastixNoTrans, PastixRight, PastixUCoef, PastixUnit, PastixUpper, starpu_task_blok_zgetrf(), starpu_task_blok_ztrsmsp(), and starpu_task_cblk_zgetrfsp().

Referenced by starpu_zgetrf_sp1dplus_ll(), starpu_zgetrf_sp1dplus_rl(), starpu_zgetrf_sp2d_ll(), and starpu_zgetrf_sp2d_rl().

◆ starpu_task_getrf_zgemmsp()

void starpu_task_getrf_zgemmsp ( sopalin_data_t *  sopalin_data,
SolverCblk cblk,
const SolverBlok blokB,
SolverCblk fcblk,
int  prio 
)

Submits starpu zgemmsp cblk or blok task.

Parameters
[in]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in]cblkThe column block.
[in]blokBThe block.
[in]fcblkThe facing column block.
[in]prioThe task priority.

Definition at line 108 of file starpu_zgetrf.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, PastixLCoef, PastixTrans, PastixUCoef, starpu_task_blok_zgemmsp(), and starpu_task_cblk_zgemmsp().

Referenced by starpu_zgetrf_sp2d_ll(), and starpu_zgetrf_sp2d_rl().

◆ starpu_zgetrf_sp1dplus_rl()

void starpu_zgetrf_sp1dplus_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LU factorization with 1D kernels.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

Parameters
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in,out]descStarPU descriptor of the sparse matrix.

Definition at line 183 of file starpu_zgetrf.c.

References solver_matrix_s::cblknbr, solver_matrix_s::cblktab, solver_cblk_s::cblktype, solver_cblk_s::fblokptr, solver_blok_s::fcblknm, pastix_int_t, PastixLCoef, PastixLUCoef, PastixTrans, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_cblk_zgemmsp(), starpu_task_zadd_1dp_fanin(), starpu_task_zadd_1dp_recv(), and starpu_task_zgetrfsp().

Referenced by starpu_zgetrf().

◆ starpu_zgetrf_sp1dplus_ll()

void starpu_zgetrf_sp1dplus_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LU factorization with 1D kernels.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

Parameters
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in,out]descStarPU descriptor of the sparse matrix.

Definition at line 266 of file starpu_zgetrf.c.

References solver_matrix_s::bloktab, solver_cblk_s::brownum, solver_matrix_s::browtab, solver_matrix_s::cblknbr, solver_matrix_s::cblktab, solver_cblk_s::cblktype, solver_cblk_s::fblokptr, solver_blok_s::lcblknm, pastix_int_t, PastixLCoef, PastixLUCoef, PastixTrans, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_cblk_zgemmsp(), starpu_task_zadd_1dp_fanin(), starpu_task_zadd_1dp_recv(), and starpu_task_zgetrfsp().

Referenced by starpu_zgetrf().

◆ starpu_zgetrf_sp2d_rl()

void starpu_zgetrf_sp2d_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LU factorization with 1D and 2D kernels.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

Parameters
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in,out]descStarPU descriptor of the sparse matrix.

Definition at line 357 of file starpu_zgetrf.c.

References solver_matrix_s::cblkmax1d, solver_matrix_s::cblkmin2d, solver_matrix_s::cblknbr, solver_matrix_s::cblktab, solver_cblk_s::cblktype, solver_cblk_s::fblokptr, solver_blok_s::fcblknm, pastix_int_t, PastixLCoef, PastixLUCoef, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_getrf_zgemmsp(), starpu_task_zadd_1dp_fanin(), starpu_task_zadd_1dp_recv(), starpu_task_zadd_2d_fanin(), starpu_task_zadd_2d_recv(), and starpu_task_zgetrfsp().

Referenced by starpu_zgetrf().

◆ starpu_zgetrf_sp2d_ll()

void starpu_zgetrf_sp2d_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LU factorization with 1D and 2D kernels.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

Parameters
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.
[in,out]descStarPU descriptor of the sparse matrix.

Definition at line 492 of file starpu_zgetrf.c.

References solver_matrix_s::bloktab, solver_cblk_s::brownum, solver_matrix_s::browtab, solver_matrix_s::cblknbr, solver_matrix_s::cblktab, solver_cblk_s::cblktype, solver_blok_s::fcblknm, solver_blok_s::lcblknm, pastix_int_t, PastixLCoef, PastixLUCoef, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_getrf_zgemmsp(), starpu_task_zadd_fanin(), starpu_task_zadd_recv(), and starpu_task_zgetrfsp().

Referenced by starpu_zgetrf().

◆ starpu_zgetrf()

void starpu_zgetrf ( pastix_data_t pastix_data,
sopalin_data_t *  sopalin_data 
)

Perform a sparse LU factorization using StarPU runtime.

The function performs the LU factorization of a sparse general matrix A. The factorization has the form

\[ A = L\times U \]

where L is a sparse lower triangular matrix, and U a sparse upper triangular with the same pattern as L^t.

The algorithm is automatically chosen between the 1D and 2D version based on the API parameter IPARM_TASKS2D_LEVEL. If IPARM_TASKS2D_LEVEL != 0 the 2D scheme is applied, the 1D otherwise.

Parameters
[in,out]pastix_dataThe pastix_data structure that describes the solver instance.
[in,out]sopalin_dataSolver matrix information structure that will guide the algorithm.

Definition at line 587 of file starpu_zgetrf.c.

References pastix_data_s::inter_node_comm, pastix_data_s::inter_node_procnbr, pastix_data_s::inter_node_procnum, pastix_data_s::iparm, IPARM_FACTO_LOOK_SIDE, IPARM_TASKS2D_LEVEL, IPARM_TRACE, pastix_data_s::pastix_comm, pastix_starpu_init(), PastixFactLeftLooking, PastixGeneral, PastixTraceNumfact, pastix_data_s::solvmatr, starpu_sparse_matrix_desc_s::solvmtx, pastix_data_s::starpu, starpu_sparse_matrix_getoncpu(), starpu_sparse_matrix_init(), starpu_zgetrf_sp1dplus_ll(), starpu_zgetrf_sp1dplus_rl(), starpu_zgetrf_sp2d_ll(), and starpu_zgetrf_sp2d_rl().