PaStiX Handbook  6.4.0

Functions

void starpu_task_csytrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 Submits starpu sytrfsp cblk or blok task. More...
 
void starpu_task_sytrf_cgemmsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, SolverBlok *blokB, SolverCblk *fcblk, int prio)
 Submits starpu cgemmsp cblk or blok task. More...
 
void starpu_csytrf_sp1dplus_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^t factorization with 1D kernels. More...
 
void starpu_csytrf_sp1dplus_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^t factorization with 1D kernels. More...
 
void starpu_csytrf_sp2d_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^t factorization with 1D and 2D kernels. More...
 
void starpu_csytrf_sp2d_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^t factorization with 1D and 2D kernels. More...
 
void starpu_csytrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse LDL^t factorization using StarPU runtime. More...
 
void starpu_task_zsytrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 Submits starpu sytrfsp cblk or blok task. More...
 
void starpu_task_sytrf_zgemmsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, SolverBlok *blokB, SolverCblk *fcblk, int prio)
 Submits starpu zgemmsp cblk or blok task. More...
 
void starpu_zsytrf_sp1dplus_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^t factorization with 1D kernels. More...
 
void starpu_zsytrf_sp1dplus_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^t factorization with 1D kernels. More...
 
void starpu_zsytrf_sp2d_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^t factorization with 1D and 2D kernels. More...
 
void starpu_zsytrf_sp2d_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^t factorization with 1D and 2D kernels. More...
 
void starpu_zsytrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse LDL^t factorization using StarPU runtime. More...
 
void starpu_task_dsytrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 Submits starpu sytrfsp cblk or blok task. More...
 
void starpu_task_sytrf_dgemmsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, SolverBlok *blokB, SolverCblk *fcblk, int prio)
 Submits starpu dgemmsp cblk or blok task. More...
 
void starpu_dsytrf_sp1dplus_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^t factorization with 1D kernels. More...
 
void starpu_dsytrf_sp1dplus_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^t factorization with 1D kernels. More...
 
void starpu_dsytrf_sp2d_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^t factorization with 1D and 2D kernels. More...
 
void starpu_dsytrf_sp2d_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^t factorization with 1D and 2D kernels. More...
 
void starpu_dsytrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse LDL^t factorization using StarPU runtime. More...
 
void starpu_task_ssytrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 Submits starpu sytrfsp cblk or blok task. More...
 
void starpu_task_sytrf_sgemmsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, SolverBlok *blokB, SolverCblk *fcblk, int prio)
 Submits starpu sgemmsp cblk or blok task. More...
 
void starpu_ssytrf_sp1dplus_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^t factorization with 1D kernels. More...
 
void starpu_ssytrf_sp1dplus_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^t factorization with 1D kernels. More...
 
void starpu_ssytrf_sp2d_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^t factorization with 1D and 2D kernels. More...
 
void starpu_ssytrf_sp2d_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^t factorization with 1D and 2D kernels. More...
 
void starpu_ssytrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse LDL^t factorization using StarPU runtime. More...
 

Detailed Description

Function Documentation

◆ starpu_task_csytrfsp()

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

Submits starpu sytrfsp 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_csytrf.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, pastix_int_t, PastixLCoef, PastixNonUnit, PastixNoTrans, PastixRight, PastixUpper, starpu_task_blok_csytrf(), starpu_task_blok_ctrsmsp(), and starpu_task_cblk_csytrfsp().

Referenced by starpu_csytrf_sp2d_ll(), and starpu_csytrf_sp2d_rl().

◆ starpu_task_sytrf_cgemmsp()

void starpu_task_sytrf_cgemmsp ( sopalin_data_t *  sopalin_data,
SolverCblk cblk,
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 104 of file starpu_csytrf.c.

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

Referenced by starpu_csytrf_sp2d_ll(), and starpu_csytrf_sp2d_rl().

◆ starpu_csytrf_sp1dplus_rl()

void starpu_csytrf_sp1dplus_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LDL^t factorization with 1D kernels.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix unitary on the diagonal, and D a diagonal matrix.

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

Definition at line 163 of file starpu_csytrf.c.

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

Referenced by starpu_csytrf().

◆ starpu_csytrf_sp1dplus_ll()

void starpu_csytrf_sp1dplus_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LDL^t factorization with 1D kernels.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix unitary on the diagonal, and D a diagonal matrix.

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

Definition at line 245 of file starpu_csytrf.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::handler, solver_blok_s::lcblknm, pastix_int_t, PastixLCoef, PastixTrans, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_cadd_1dp_fanin(), starpu_task_cadd_1dp_recv(), starpu_task_cblk_cgemmsp(), and starpu_task_cblk_csytrfsp().

Referenced by starpu_csytrf().

◆ starpu_csytrf_sp2d_rl()

void starpu_csytrf_sp2d_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LDL^t factorization with 1D and 2D kernels.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix unitary on the diagonal, and D a diagonal matrix.

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

Definition at line 332 of file starpu_csytrf.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, solver_cblk_s::handler, pastix_int_t, PastixLCoef, 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_csytrfsp(), and starpu_task_sytrf_cgemmsp().

Referenced by starpu_csytrf().

◆ starpu_csytrf_sp2d_ll()

void starpu_csytrf_sp2d_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LDL^t factorization with 1D and 2D kernels.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix unitary on the diagonal, and D a diagonal matrix.

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

Definition at line 470 of file starpu_csytrf.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_cblk_s::handler, solver_blok_s::lcblknm, pastix_int_t, PastixLCoef, starpu_sparse_cblk_wont_use(), starpu_task_cadd_fanin(), starpu_task_cadd_recv(), starpu_task_csytrfsp(), and starpu_task_sytrf_cgemmsp().

Referenced by starpu_csytrf().

◆ starpu_csytrf()

void starpu_csytrf ( pastix_data_t pastix_data,
sopalin_data_t *  sopalin_data 
)

Perform a sparse LDL^t factorization using StarPU runtime.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix unitary on the diagonal, and D a diagonal matrix.

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 570 of file starpu_csytrf.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, PastixSymmetric, PastixTraceNumfact, pastix_data_s::solvmatr, starpu_sparse_matrix_desc_s::solvmtx, pastix_data_s::starpu, starpu_csytrf_sp1dplus_ll(), starpu_csytrf_sp1dplus_rl(), starpu_csytrf_sp2d_ll(), starpu_csytrf_sp2d_rl(), starpu_sparse_matrix_getoncpu(), and starpu_sparse_matrix_init().

◆ starpu_task_zsytrfsp()

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

Submits starpu sytrfsp 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_zsytrf.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, pastix_int_t, PastixLCoef, PastixNonUnit, PastixNoTrans, PastixRight, PastixUpper, starpu_task_blok_zsytrf(), starpu_task_blok_ztrsmsp(), and starpu_task_cblk_zsytrfsp().

Referenced by starpu_zsytrf_sp2d_ll(), and starpu_zsytrf_sp2d_rl().

◆ starpu_task_sytrf_zgemmsp()

void starpu_task_sytrf_zgemmsp ( sopalin_data_t *  sopalin_data,
SolverCblk cblk,
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 104 of file starpu_zsytrf.c.

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

Referenced by starpu_zsytrf_sp2d_ll(), and starpu_zsytrf_sp2d_rl().

◆ starpu_zsytrf_sp1dplus_rl()

void starpu_zsytrf_sp1dplus_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LDL^t factorization with 1D kernels.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix unitary on the diagonal, and D a diagonal matrix.

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

Definition at line 163 of file starpu_zsytrf.c.

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

Referenced by starpu_zsytrf().

◆ starpu_zsytrf_sp1dplus_ll()

void starpu_zsytrf_sp1dplus_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LDL^t factorization with 1D kernels.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix unitary on the diagonal, and D a diagonal matrix.

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

Definition at line 245 of file starpu_zsytrf.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::handler, solver_blok_s::lcblknm, pastix_int_t, PastixLCoef, PastixTrans, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_cblk_zgemmsp(), starpu_task_cblk_zsytrfsp(), starpu_task_zadd_1dp_fanin(), and starpu_task_zadd_1dp_recv().

Referenced by starpu_zsytrf().

◆ starpu_zsytrf_sp2d_rl()

void starpu_zsytrf_sp2d_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LDL^t factorization with 1D and 2D kernels.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix unitary on the diagonal, and D a diagonal matrix.

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

Definition at line 332 of file starpu_zsytrf.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, solver_cblk_s::handler, pastix_int_t, PastixLCoef, starpu_sparse_cblk_wont_use(), starpu_task_sytrf_zgemmsp(), starpu_task_zadd_1dp_fanin(), starpu_task_zadd_1dp_recv(), starpu_task_zadd_2d_fanin(), starpu_task_zadd_2d_recv(), and starpu_task_zsytrfsp().

Referenced by starpu_zsytrf().

◆ starpu_zsytrf_sp2d_ll()

void starpu_zsytrf_sp2d_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LDL^t factorization with 1D and 2D kernels.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix unitary on the diagonal, and D a diagonal matrix.

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

Definition at line 470 of file starpu_zsytrf.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_cblk_s::handler, solver_blok_s::lcblknm, pastix_int_t, PastixLCoef, starpu_sparse_cblk_wont_use(), starpu_task_sytrf_zgemmsp(), starpu_task_zadd_fanin(), starpu_task_zadd_recv(), and starpu_task_zsytrfsp().

Referenced by starpu_zsytrf().

◆ starpu_zsytrf()

void starpu_zsytrf ( pastix_data_t pastix_data,
sopalin_data_t *  sopalin_data 
)

Perform a sparse LDL^t factorization using StarPU runtime.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix unitary on the diagonal, and D a diagonal matrix.

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 570 of file starpu_zsytrf.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, PastixSymmetric, PastixTraceNumfact, pastix_data_s::solvmatr, starpu_sparse_matrix_desc_s::solvmtx, pastix_data_s::starpu, starpu_sparse_matrix_getoncpu(), starpu_sparse_matrix_init(), starpu_zsytrf_sp1dplus_ll(), starpu_zsytrf_sp1dplus_rl(), starpu_zsytrf_sp2d_ll(), and starpu_zsytrf_sp2d_rl().

◆ starpu_task_dsytrfsp()

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

Submits starpu sytrfsp 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_dsytrf.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, pastix_int_t, PastixLCoef, PastixNonUnit, PastixNoTrans, PastixRight, PastixUpper, starpu_task_blok_dsytrf(), starpu_task_blok_dtrsmsp(), and starpu_task_cblk_dsytrfsp().

Referenced by starpu_dsytrf_sp2d_ll(), and starpu_dsytrf_sp2d_rl().

◆ starpu_task_sytrf_dgemmsp()

void starpu_task_sytrf_dgemmsp ( sopalin_data_t *  sopalin_data,
SolverCblk cblk,
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 104 of file starpu_dsytrf.c.

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

Referenced by starpu_dsytrf_sp2d_ll(), and starpu_dsytrf_sp2d_rl().

◆ starpu_dsytrf_sp1dplus_rl()

void starpu_dsytrf_sp1dplus_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LDL^t factorization with 1D kernels.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix orthogonal on the diagonal, and D a diagonal matrix.

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

Definition at line 163 of file starpu_dsytrf.c.

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

Referenced by starpu_dsytrf().

◆ starpu_dsytrf_sp1dplus_ll()

void starpu_dsytrf_sp1dplus_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LDL^t factorization with 1D kernels.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix orthogonal on the diagonal, and D a diagonal matrix.

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

Definition at line 245 of file starpu_dsytrf.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::handler, solver_blok_s::lcblknm, pastix_int_t, PastixLCoef, PastixTrans, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_cblk_dgemmsp(), starpu_task_cblk_dsytrfsp(), starpu_task_dadd_1dp_fanin(), and starpu_task_dadd_1dp_recv().

Referenced by starpu_dsytrf().

◆ starpu_dsytrf_sp2d_rl()

void starpu_dsytrf_sp2d_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LDL^t factorization with 1D and 2D kernels.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix orthogonal on the diagonal, and D a diagonal matrix.

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

Definition at line 332 of file starpu_dsytrf.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, solver_cblk_s::handler, pastix_int_t, PastixLCoef, 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_dsytrfsp(), and starpu_task_sytrf_dgemmsp().

Referenced by starpu_dsytrf().

◆ starpu_dsytrf_sp2d_ll()

void starpu_dsytrf_sp2d_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LDL^t factorization with 1D and 2D kernels.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix orthogonal on the diagonal, and D a diagonal matrix.

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

Definition at line 470 of file starpu_dsytrf.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_cblk_s::handler, solver_blok_s::lcblknm, pastix_int_t, PastixLCoef, starpu_sparse_cblk_wont_use(), starpu_task_dadd_fanin(), starpu_task_dadd_recv(), starpu_task_dsytrfsp(), and starpu_task_sytrf_dgemmsp().

Referenced by starpu_dsytrf().

◆ starpu_dsytrf()

void starpu_dsytrf ( pastix_data_t pastix_data,
sopalin_data_t *  sopalin_data 
)

Perform a sparse LDL^t factorization using StarPU runtime.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix orthogonal on the diagonal, and D a diagonal matrix.

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 570 of file starpu_dsytrf.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, PastixSymmetric, PastixTraceNumfact, pastix_data_s::solvmatr, starpu_sparse_matrix_desc_s::solvmtx, pastix_data_s::starpu, starpu_dsytrf_sp1dplus_ll(), starpu_dsytrf_sp1dplus_rl(), starpu_dsytrf_sp2d_ll(), starpu_dsytrf_sp2d_rl(), starpu_sparse_matrix_getoncpu(), and starpu_sparse_matrix_init().

◆ starpu_task_ssytrfsp()

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

Submits starpu sytrfsp 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_ssytrf.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, pastix_int_t, PastixLCoef, PastixNonUnit, PastixNoTrans, PastixRight, PastixUpper, starpu_task_blok_ssytrf(), starpu_task_blok_strsmsp(), and starpu_task_cblk_ssytrfsp().

Referenced by starpu_ssytrf_sp2d_ll(), and starpu_ssytrf_sp2d_rl().

◆ starpu_task_sytrf_sgemmsp()

void starpu_task_sytrf_sgemmsp ( sopalin_data_t *  sopalin_data,
SolverCblk cblk,
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 104 of file starpu_ssytrf.c.

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

Referenced by starpu_ssytrf_sp2d_ll(), and starpu_ssytrf_sp2d_rl().

◆ starpu_ssytrf_sp1dplus_rl()

void starpu_ssytrf_sp1dplus_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LDL^t factorization with 1D kernels.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix orthogonal on the diagonal, and D a diagonal matrix.

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

Definition at line 163 of file starpu_ssytrf.c.

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

Referenced by starpu_ssytrf().

◆ starpu_ssytrf_sp1dplus_ll()

void starpu_ssytrf_sp1dplus_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LDL^t factorization with 1D kernels.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix orthogonal on the diagonal, and D a diagonal matrix.

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

Definition at line 245 of file starpu_ssytrf.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::handler, solver_blok_s::lcblknm, pastix_int_t, PastixLCoef, PastixTrans, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_cblk_sgemmsp(), starpu_task_cblk_ssytrfsp(), starpu_task_sadd_1dp_fanin(), and starpu_task_sadd_1dp_recv().

Referenced by starpu_ssytrf().

◆ starpu_ssytrf_sp2d_rl()

void starpu_ssytrf_sp2d_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LDL^t factorization with 1D and 2D kernels.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix orthogonal on the diagonal, and D a diagonal matrix.

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

Definition at line 332 of file starpu_ssytrf.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, solver_cblk_s::handler, pastix_int_t, PastixLCoef, starpu_sparse_cblk_wont_use(), starpu_task_sadd_1dp_fanin(), starpu_task_sadd_1dp_recv(), starpu_task_sadd_2d_fanin(), starpu_task_sadd_2d_recv(), starpu_task_ssytrfsp(), and starpu_task_sytrf_sgemmsp().

Referenced by starpu_ssytrf().

◆ starpu_ssytrf_sp2d_ll()

void starpu_ssytrf_sp2d_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

Perform a sparse LDL^t factorization with 1D and 2D kernels.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix orthogonal on the diagonal, and D a diagonal matrix.

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

Definition at line 470 of file starpu_ssytrf.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_cblk_s::handler, solver_blok_s::lcblknm, pastix_int_t, PastixLCoef, starpu_sparse_cblk_wont_use(), starpu_task_sadd_fanin(), starpu_task_sadd_recv(), starpu_task_ssytrfsp(), and starpu_task_sytrf_sgemmsp().

Referenced by starpu_ssytrf().

◆ starpu_ssytrf()

void starpu_ssytrf ( pastix_data_t pastix_data,
sopalin_data_t *  sopalin_data 
)

Perform a sparse LDL^t factorization using StarPU runtime.

The function performs the LDL^t factorization of a sparse symmetric matrix A. The factorization has the form

\[ A = L \times D \times L^t \]

where L is a sparse lower triangular matrix orthogonal on the diagonal, and D a diagonal matrix.

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 570 of file starpu_ssytrf.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, PastixSymmetric, PastixTraceNumfact, pastix_data_s::solvmatr, starpu_sparse_matrix_desc_s::solvmtx, pastix_data_s::starpu, starpu_sparse_matrix_getoncpu(), starpu_sparse_matrix_init(), starpu_ssytrf_sp1dplus_ll(), starpu_ssytrf_sp1dplus_rl(), starpu_ssytrf_sp2d_ll(), and starpu_ssytrf_sp2d_rl().