PaStiX Handbook  6.4.0

Functions

void starpu_task_cpxtrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 Submits starpu pxtrfsp cblk or blok task. More...
 
void starpu_task_pxtrf_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_cpxtrf_sp1dplus_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LL^t factorization with 1D kernels. More...
 
void starpu_cpxtrf_sp1dplus_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LL^t factorization with 1D kernels. More...
 
void starpu_cpxtrf_sp2d_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LL^t factorization with 1D and 2D kernels. More...
 
void starpu_cpxtrf_sp2d_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LL^t factorization with 1D and 2D kernels. More...
 
void starpu_cpxtrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse LL^t factorization using StarPU runtime. More...
 
void starpu_task_zpxtrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 Submits starpu pxtrfsp cblk or blok task. More...
 
void starpu_task_pxtrf_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_zpxtrf_sp1dplus_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LL^t factorization with 1D kernels. More...
 
void starpu_zpxtrf_sp1dplus_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LL^t factorization with 1D kernels. More...
 
void starpu_zpxtrf_sp2d_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LL^t factorization with 1D and 2D kernels. More...
 
void starpu_zpxtrf_sp2d_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LL^t factorization with 1D and 2D kernels. More...
 
void starpu_zpxtrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse LL^t factorization using StarPU runtime. More...
 

Detailed Description

Function Documentation

◆ starpu_task_cpxtrfsp()

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

Submits starpu pxtrfsp 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 45 of file starpu_cpxtrf.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, pastix_int_t, PastixConjTrans, PastixLCoef, PastixLower, PastixNonUnit, PastixRight, starpu_task_blok_cpxtrf(), starpu_task_blok_ctrsmsp(), and starpu_task_cblk_cpxtrfsp().

Referenced by starpu_cpxtrf_sp2d_ll(), and starpu_cpxtrf_sp2d_rl().

◆ starpu_task_pxtrf_cgemmsp()

void starpu_task_pxtrf_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 100 of file starpu_cpxtrf.c.

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

Referenced by starpu_cpxtrf_sp2d_ll(), and starpu_cpxtrf_sp2d_rl().

◆ starpu_cpxtrf_sp1dplus_rl()

void starpu_cpxtrf_sp1dplus_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

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

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

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

where L is a sparse lower triangular 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 153 of file starpu_cpxtrf.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, PastixConjTrans, PastixLCoef, starpu_sparse_cblk_wont_use(), starpu_task_cadd_1dp_fanin(), starpu_task_cadd_1dp_recv(), starpu_task_cblk_cgemmsp(), and starpu_task_cblk_cpxtrfsp().

Referenced by starpu_cpxtrf().

◆ starpu_cpxtrf_sp1dplus_ll()

void starpu_cpxtrf_sp1dplus_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

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

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

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

where L is a sparse lower triangular 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 227 of file starpu_cpxtrf.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::lcblknm, pastix_int_t, PastixConjTrans, PastixLCoef, starpu_sparse_cblk_wont_use(), starpu_task_cadd_1dp_fanin(), starpu_task_cadd_1dp_recv(), starpu_task_cblk_cgemmsp(), and starpu_task_cblk_cpxtrfsp().

Referenced by starpu_cpxtrf().

◆ starpu_cpxtrf_sp2d_rl()

void starpu_cpxtrf_sp2d_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

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

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

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

where L is a sparse lower triangular 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 307 of file starpu_cpxtrf.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, 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_cpxtrfsp(), and starpu_task_pxtrf_cgemmsp().

Referenced by starpu_cpxtrf().

◆ starpu_cpxtrf_sp2d_ll()

void starpu_cpxtrf_sp2d_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

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

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

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

where L is a sparse lower triangular 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 437 of file starpu_cpxtrf.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, starpu_sparse_cblk_wont_use(), starpu_task_cadd_fanin(), starpu_task_cadd_recv(), starpu_task_cpxtrfsp(), and starpu_task_pxtrf_cgemmsp().

Referenced by starpu_cpxtrf().

◆ starpu_cpxtrf()

void starpu_cpxtrf ( pastix_data_t pastix_data,
sopalin_data_t *  sopalin_data 
)

Perform a sparse LL^t factorization using StarPU runtime.

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

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

where L is a sparse lower triangular 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 530 of file starpu_cpxtrf.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_cpxtrf_sp1dplus_ll(), starpu_cpxtrf_sp1dplus_rl(), starpu_cpxtrf_sp2d_ll(), starpu_cpxtrf_sp2d_rl(), starpu_sparse_matrix_getoncpu(), and starpu_sparse_matrix_init().

◆ starpu_task_zpxtrfsp()

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

Submits starpu pxtrfsp 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 45 of file starpu_zpxtrf.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, pastix_int_t, PastixConjTrans, PastixLCoef, PastixLower, PastixNonUnit, PastixRight, starpu_task_blok_zpxtrf(), starpu_task_blok_ztrsmsp(), and starpu_task_cblk_zpxtrfsp().

Referenced by starpu_zpxtrf_sp2d_ll(), and starpu_zpxtrf_sp2d_rl().

◆ starpu_task_pxtrf_zgemmsp()

void starpu_task_pxtrf_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 100 of file starpu_zpxtrf.c.

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

Referenced by starpu_zpxtrf_sp2d_ll(), and starpu_zpxtrf_sp2d_rl().

◆ starpu_zpxtrf_sp1dplus_rl()

void starpu_zpxtrf_sp1dplus_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

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

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

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

where L is a sparse lower triangular 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 153 of file starpu_zpxtrf.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, PastixConjTrans, PastixLCoef, starpu_sparse_cblk_wont_use(), starpu_task_cblk_zgemmsp(), starpu_task_cblk_zpxtrfsp(), starpu_task_zadd_1dp_fanin(), and starpu_task_zadd_1dp_recv().

Referenced by starpu_zpxtrf().

◆ starpu_zpxtrf_sp1dplus_ll()

void starpu_zpxtrf_sp1dplus_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

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

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

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

where L is a sparse lower triangular 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 227 of file starpu_zpxtrf.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::lcblknm, pastix_int_t, PastixConjTrans, PastixLCoef, starpu_sparse_cblk_wont_use(), starpu_task_cblk_zgemmsp(), starpu_task_cblk_zpxtrfsp(), starpu_task_zadd_1dp_fanin(), and starpu_task_zadd_1dp_recv().

Referenced by starpu_zpxtrf().

◆ starpu_zpxtrf_sp2d_rl()

void starpu_zpxtrf_sp2d_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

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

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

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

where L is a sparse lower triangular 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 307 of file starpu_zpxtrf.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, starpu_sparse_cblk_wont_use(), starpu_task_pxtrf_zgemmsp(), starpu_task_zadd_1dp_fanin(), starpu_task_zadd_1dp_recv(), starpu_task_zadd_2d_fanin(), starpu_task_zadd_2d_recv(), and starpu_task_zpxtrfsp().

Referenced by starpu_zpxtrf().

◆ starpu_zpxtrf_sp2d_ll()

void starpu_zpxtrf_sp2d_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

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

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

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

where L is a sparse lower triangular 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 437 of file starpu_zpxtrf.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, starpu_sparse_cblk_wont_use(), starpu_task_pxtrf_zgemmsp(), starpu_task_zadd_fanin(), starpu_task_zadd_recv(), and starpu_task_zpxtrfsp().

Referenced by starpu_zpxtrf().

◆ starpu_zpxtrf()

void starpu_zpxtrf ( pastix_data_t pastix_data,
sopalin_data_t *  sopalin_data 
)

Perform a sparse LL^t factorization using StarPU runtime.

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

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

where L is a sparse lower triangular 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 530 of file starpu_zpxtrf.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_zpxtrf_sp1dplus_ll(), starpu_zpxtrf_sp1dplus_rl(), starpu_zpxtrf_sp2d_ll(), and starpu_zpxtrf_sp2d_rl().