PaStiX Handbook  6.3.2

Functions

void starpu_task_zhetrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO. More...
 
void starpu_task_hetrf_zgemmsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, SolverBlok *blokB, SolverCblk *fcblk, int prio)
 TODO. More...
 
void starpu_zhetrf_sp1dplus_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^h factorization with 1D kernels. More...
 
void starpu_zhetrf_sp1dplus_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^h factorization with 1D kernels. More...
 
void starpu_zhetrf_sp2d_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^h factorization with 1D and 2D kernels. More...
 
void starpu_zhetrf_sp2d_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^h factorization with 1D and 2D kernels. More...
 
void starpu_zhetrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse LDL^h factorization using StarPU runtime. More...
 
void starpu_task_chetrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO. More...
 
void starpu_task_hetrf_cgemmsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, SolverBlok *blokB, SolverCblk *fcblk, int prio)
 TODO. More...
 
void starpu_chetrf_sp1dplus_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^h factorization with 1D kernels. More...
 
void starpu_chetrf_sp1dplus_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^h factorization with 1D kernels. More...
 
void starpu_chetrf_sp2d_rl (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^h factorization with 1D and 2D kernels. More...
 
void starpu_chetrf_sp2d_ll (sopalin_data_t *sopalin_data, starpu_sparse_matrix_desc_t *desc)
 Perform a sparse LDL^h factorization with 1D and 2D kernels. More...
 
void starpu_chetrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse LDL^h factorization using StarPU runtime. More...
 

Detailed Description

Function Documentation

◆ starpu_task_zhetrfsp()

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

◆ starpu_task_hetrf_zgemmsp()

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

TODO.

Parameters
[in]sopalin_dataTODO
[in]cblkTODO
[in]fcblkTODO
[in]blokATODO
[in]prioTODO

Definition at line 104 of file starpu_zhetrf.c.

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

Referenced by starpu_zhetrf_sp2d_ll(), and starpu_zhetrf_sp2d_rl().

◆ starpu_zhetrf_sp1dplus_rl()

void starpu_zhetrf_sp1dplus_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

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

The function performs the LDL^h factorization of a sparse hermitian matrix A. The factorization has the form

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

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_zhetrf.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(), and starpu_task_cblk_zhetrfsp().

Referenced by starpu_zhetrf().

◆ starpu_zhetrf_sp1dplus_ll()

void starpu_zhetrf_sp1dplus_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

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

The function performs the LDL^h factorization of a sparse hermitian matrix A. The factorization has the form

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

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 232 of file starpu_zhetrf.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, PastixTrans, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_cblk_zgemmsp(), and starpu_task_cblk_zhetrfsp().

Referenced by starpu_zhetrf().

◆ starpu_zhetrf_sp2d_rl()

void starpu_zhetrf_sp2d_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

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

The function performs the LDL^h factorization of a sparse hermitian matrix A. The factorization has the form

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

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 308 of file starpu_zhetrf.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_hetrf_zgemmsp(), and starpu_task_zhetrfsp().

Referenced by starpu_zhetrf().

◆ starpu_zhetrf_sp2d_ll()

void starpu_zhetrf_sp2d_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

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

The function performs the LDL^h factorization of a sparse hermitian matrix A. The factorization has the form

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

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 416 of file starpu_zhetrf.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_hetrf_zgemmsp(), and starpu_task_zhetrfsp().

Referenced by starpu_zhetrf().

◆ starpu_zhetrf()

void starpu_zhetrf ( pastix_data_t pastix_data,
sopalin_data_t *  sopalin_data 
)

Perform a sparse LDL^h factorization using StarPU runtime.

The function performs the LDL^h factorization of a sparse hermitian matrix A. The factorization has the form

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

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 499 of file starpu_zhetrf.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, PastixHermitian, PastixTraceNumfact, pastix_data_s::solvmatr, starpu_sparse_matrix_desc_s::solvmtx, pastix_data_s::starpu, starpu_sparse_matrix_getoncpu(), starpu_sparse_matrix_init(), starpu_zhetrf_sp1dplus_ll(), starpu_zhetrf_sp1dplus_rl(), starpu_zhetrf_sp2d_ll(), and starpu_zhetrf_sp2d_rl().

◆ starpu_task_chetrfsp()

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

◆ starpu_task_hetrf_cgemmsp()

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

TODO.

Parameters
[in]sopalin_dataTODO
[in]cblkTODO
[in]fcblkTODO
[in]blokATODO
[in]prioTODO

Definition at line 104 of file starpu_chetrf.c.

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

Referenced by starpu_chetrf_sp2d_ll(), and starpu_chetrf_sp2d_rl().

◆ starpu_chetrf_sp1dplus_rl()

void starpu_chetrf_sp1dplus_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

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

The function performs the LDL^h factorization of a sparse hermitian matrix A. The factorization has the form

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

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_chetrf.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_cgemmsp(), and starpu_task_cblk_chetrfsp().

Referenced by starpu_chetrf().

◆ starpu_chetrf_sp1dplus_ll()

void starpu_chetrf_sp1dplus_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

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

The function performs the LDL^h factorization of a sparse hermitian matrix A. The factorization has the form

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

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 232 of file starpu_chetrf.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, PastixTrans, PastixUCoef, starpu_sparse_cblk_wont_use(), starpu_task_cblk_cgemmsp(), and starpu_task_cblk_chetrfsp().

Referenced by starpu_chetrf().

◆ starpu_chetrf_sp2d_rl()

void starpu_chetrf_sp2d_rl ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

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

The function performs the LDL^h factorization of a sparse hermitian matrix A. The factorization has the form

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

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 308 of file starpu_chetrf.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_chetrfsp(), and starpu_task_hetrf_cgemmsp().

Referenced by starpu_chetrf().

◆ starpu_chetrf_sp2d_ll()

void starpu_chetrf_sp2d_ll ( sopalin_data_t *  sopalin_data,
starpu_sparse_matrix_desc_t desc 
)

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

The function performs the LDL^h factorization of a sparse hermitian matrix A. The factorization has the form

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

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 416 of file starpu_chetrf.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_chetrfsp(), and starpu_task_hetrf_cgemmsp().

Referenced by starpu_chetrf().

◆ starpu_chetrf()

void starpu_chetrf ( pastix_data_t pastix_data,
sopalin_data_t *  sopalin_data 
)

Perform a sparse LDL^h factorization using StarPU runtime.

The function performs the LDL^h factorization of a sparse hermitian matrix A. The factorization has the form

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

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 499 of file starpu_chetrf.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, PastixHermitian, PastixTraceNumfact, pastix_data_s::solvmatr, starpu_sparse_matrix_desc_s::solvmtx, pastix_data_s::starpu, starpu_chetrf_sp1dplus_ll(), starpu_chetrf_sp1dplus_rl(), starpu_chetrf_sp2d_ll(), starpu_chetrf_sp2d_rl(), starpu_sparse_matrix_getoncpu(), and starpu_sparse_matrix_init().