PaStiX Handbook  6.3.2
pastix_cstarpu.h File Reference

Go to the source code of this file.

Functions

void starpu_task_cblk_cgetrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO. More...
 
void starpu_task_cblk_chetrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO. More...
 
void starpu_task_cblk_cpotrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO. More...
 
void starpu_task_cblk_cpxtrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO. More...
 
void starpu_task_cblk_csytrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO. More...
 
void starpu_task_blok_cgetrf (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO. More...
 
void starpu_task_blok_chetrf (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO. More...
 
void starpu_task_blok_cpotrf (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO. More...
 
void starpu_task_blok_cpxtrf (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO. More...
 
void starpu_task_blok_csytrf (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO. More...
 
void starpu_stask_cblk_cdiag (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 Submit a task to perform a diagonal solve related to one cblk to all the right hand side. More...
 
void starpu_stask_blok_cgemm (sopalin_data_t *sopalin_data, pastix_coefside_t coef, pastix_side_t side, pastix_trans_t trans, const SolverCblk *cblk, const SolverBlok *blok, SolverCblk *fcbk, pastix_int_t prio)
 Submit a task to perform a gemm. More...
 
void starpu_stask_blok_ctrsm (sopalin_data_t *sopalin_data, pastix_coefside_t coef, pastix_side_t side, pastix_uplo_t uplo, pastix_trans_t trans, pastix_diag_t diag, const SolverCblk *cblk, pastix_int_t prio)
 Submit a task to do a trsm related to a diagonal block of the matrix A. More...
 
void starpu_task_cblk_cgemmsp (sopalin_data_t *sopalin_data, pastix_coefside_t sideA, pastix_coefside_t sideB, pastix_trans_t trans, const SolverCblk *cblk, const SolverBlok *blok, SolverCblk *fcblk, int prio)
 StarPU GPU implementation. More...
 
void starpu_task_cblk_cadd_recv (sopalin_data_t *sopalin_data, pastix_coefside_t side, const SolverCblk *cblk, SolverCblk *fcblk, int prio)
 Insert the task to add a fanin cblk on the receiver side (The fanin is seen on this side as the RECV cblk). Note that the caller always execute the task. More...
 
void starpu_task_cblk_cadd_fanin (sopalin_data_t *sopalin_data, pastix_coefside_t side, const SolverCblk *cblk, int prio)
 Insert the task to add a fanin cblk on the emitter side. Note that this task is submitted only to emit a send to the owner of the associated recv cblk that will perform the add. Thus, the task is always submitted but never executed. More...
 
void starpu_task_blok_cadd_recv (sopalin_data_t *sopalin_data, pastix_coefside_t side, const SolverCblk *cblk, const SolverBlok *blok, SolverCblk *fcblk, SolverBlok *fblok, int prio)
 Insert the task to add a fanin cblk on the receiver side (The fanin is seen on this side as the RECV cblk). Note that the caller always execute the task. More...
 
void starpu_task_blok_cadd_fanin (sopalin_data_t *sopalin_data, pastix_coefside_t side, const SolverCblk *cblk, const SolverBlok *blok, int prio)
 Insert the task to add a fanin cblk on the emitter side. Note that this task is submitted only to emit a send to the owner of the associated recv cblk that will perform the add. Thus, the task is always submitted but never executed. More...
 
void starpu_task_blok_cgemmsp (sopalin_data_t *sopalin_data, pastix_coefside_t sideA, pastix_coefside_t sideB, pastix_trans_t trans, SolverCblk *cblk, SolverCblk *fcblk, const SolverBlok *blokA, const SolverBlok *blokB, int prio)
 StarPU GPU implementation. More...
 
void starpu_task_blok_ctrsmsp (sopalin_data_t *sopalin_data, pastix_coefside_t coef, pastix_side_t side, pastix_uplo_t uplo, pastix_trans_t trans, pastix_diag_t diag, const SolverCblk *cblk, SolverBlok *blok, int prio)
 StarPU GPU implementation. More...
 
void starpu_task_blok_cscalo (sopalin_data_t *sopalin_data, pastix_trans_t trans, const SolverCblk *cblk, SolverBlok *blok, int prio)
 TODO. More...
 
void starpu_task_cadd_1dp_fanin (sopalin_data_t *sopalin_data, pastix_coefside_t side, const SolverCblk *cblk, int prio)
 Submits starpu zadd task to send the fanin cblk. More...
 
void starpu_task_cadd_1dp_recv (sopalin_data_t *sopalin_data, pastix_coefside_t side, const SolverCblk *cblk, int prio)
 Submits starpu zadd task to receive and add the recv cblk. More...
 
void starpu_task_cadd_2d_fanin (sopalin_data_t *sopalin_data, pastix_coefside_t side, const SolverCblk *cblk, int prio)
 Submits starpu zadd task to send the fanin block. More...
 
void starpu_task_cadd_2d_recv (sopalin_data_t *sopalin_data, pastix_coefside_t side, const SolverCblk *cblk, int prio)
 Submits starpu zadd task to receive and add the recv block. More...
 
void starpu_task_cadd_fanin (sopalin_data_t *sopalin_data, pastix_coefside_t side, const SolverCblk *cblk, int prio)
 Submits starpu zadd task to send the fanin cblk. More...
 
void starpu_task_cadd_recv (sopalin_data_t *sopalin_data, pastix_coefside_t side, const SolverCblk *cblk, int prio)
 Submits starpu zadd task to send the recv cblk. More...
 
void starpu_cdiag (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data, int nrhs, pastix_complex32_t *b, int ldb)
 Apply the diagonal solve (StarPU version) More...
 
void starpu_cpotrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse Cholesky factorization using StarPU runtime. 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_cgetrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse LU factorization using StarPU runtime. More...
 
void starpu_chetrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse LDL^h factorization using StarPU runtime. 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_ctrsm (pastix_data_t *pastix_data, const args_solve_t *enums, sopalin_data_t *sopalin_data, pastix_rhs_t b)
 Apply the TRSM solve (StarPU version). More...
 

Detailed Description

Pastix StarPU codelets header

Version
6.3.2
Author
Mathieu Faverge
Pierre Ramet
Vincent Bridonneau
Alycia Lisito
Date
2023-12-01
Generated arithmetic file
from /builds/solverstack/pastix/sopalin/starpu/pastix_zstarpu.h, normal z -> c, Wed Dec 13 12:09:04 2023

Definition in file pastix_cstarpu.h.

Function Documentation

◆ starpu_task_cadd_1dp_fanin()

void starpu_task_cadd_1dp_fanin ( sopalin_data_t *  sopalin_data,
pastix_coefside_t  side,
const SolverCblk cblk,
int  prio 
)

Submits starpu zadd task to send the fanin cblk.

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

Definition at line 46 of file starpu_task_cadd.c.

References solver_cblk_s::cblktype, and starpu_task_cblk_cadd_fanin().

Referenced by starpu_task_cadd_fanin().

◆ starpu_task_cadd_1dp_recv()

void starpu_task_cadd_1dp_recv ( sopalin_data_t *  sopalin_data,
pastix_coefside_t  side,
const SolverCblk cblk,
int  prio 
)

Submits starpu zadd task to receive and add the recv cblk.

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

Definition at line 77 of file starpu_task_cadd.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, solver_blok_s::fcblknm, and starpu_task_cblk_cadd_recv().

Referenced by starpu_task_cadd_recv().

◆ starpu_task_cadd_2d_fanin()

void starpu_task_cadd_2d_fanin ( sopalin_data_t *  sopalin_data,
pastix_coefside_t  side,
const SolverCblk cblk,
int  prio 
)

Submits starpu zadd task to send the fanin block.

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

Definition at line 109 of file starpu_task_cadd.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, and starpu_task_blok_cadd_fanin().

Referenced by starpu_task_cadd_fanin().

◆ starpu_task_cadd_2d_recv()

void starpu_task_cadd_2d_recv ( sopalin_data_t *  sopalin_data,
pastix_coefside_t  side,
const SolverCblk cblk,
int  prio 
)

Submits starpu zadd task to receive and add the recv block.

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

Definition at line 154 of file starpu_task_cadd.c.

References solver_cblk_s::cblktype, solver_cblk_s::fblokptr, solver_blok_s::fcblknm, solver_blok_s::lcblknm, and starpu_task_blok_cadd_recv().

Referenced by starpu_task_cadd_recv().

◆ starpu_task_cadd_fanin()

void starpu_task_cadd_fanin ( sopalin_data_t *  sopalin_data,
pastix_coefside_t  side,
const SolverCblk cblk,
int  prio 
)

Submits starpu zadd task to send the fanin cblk.

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

Definition at line 241 of file starpu_task_cadd.c.

References solver_cblk_s::cblktype, starpu_task_cadd_1dp_fanin(), and starpu_task_cadd_2d_fanin().

◆ starpu_task_cadd_recv()

void starpu_task_cadd_recv ( sopalin_data_t *  sopalin_data,
pastix_coefside_t  side,
const SolverCblk cblk,
int  prio 
)

Submits starpu zadd task to send the recv cblk.

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

Definition at line 205 of file starpu_task_cadd.c.

References solver_cblk_s::cblktype, starpu_task_cadd_1dp_recv(), and starpu_task_cadd_2d_recv().