PaStiX Handbook 6.4.0
Loading...
Searching...
No Matches
pastix_dstarpu.h File Reference

Go to the source code of this file.

Functions

void starpu_task_cblk_dgetrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO.
 
void starpu_task_cblk_dsytrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO.
 
void starpu_task_cblk_dpotrfsp (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO.
 
void starpu_task_blok_dgetrf (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO.
 
void starpu_task_blok_dsytrf (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO.
 
void starpu_task_blok_dpotrf (sopalin_data_t *sopalin_data, SolverCblk *cblk, int prio)
 TODO.
 
void starpu_stask_cblk_ddiag (sopalin_data_t *sopalin_data, pastix_rhs_t rhsb, SolverCblk *cblk, int prio)
 Submit a task to perform a diagonal solve related to one cblk to all the right hand side.
 
void starpu_stask_blok_dgemm (sopalin_data_t *sopalin_data, pastix_rhs_t rhsb, 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.
 
void starpu_stask_blok_dtrsm (sopalin_data_t *sopalin_data, pastix_rhs_t rhsb, 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.
 
void starpu_task_cblk_dgemmsp (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.
 
void starpu_task_cblk_dadd_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.
 
void starpu_task_cblk_dadd_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.
 
void starpu_task_blok_dadd_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.
 
void starpu_task_blok_dadd_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.
 
void starpu_task_blok_dgemmsp (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.
 
void starpu_task_blok_dtrsmsp (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.
 
void starpu_task_blok_dscalo (sopalin_data_t *sopalin_data, pastix_trans_t trans, const SolverCblk *cblk, SolverBlok *blok, int prio)
 TODO.
 
void starpu_task_dadd_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.
 
void starpu_task_dadd_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.
 
void starpu_task_dadd_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.
 
void starpu_task_dadd_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.
 
void starpu_task_dadd_fanin (sopalin_data_t *sopalin_data, pastix_coefside_t side, const SolverCblk *cblk, int prio)
 Submits starpu zadd task to send the fanin cblk.
 
void starpu_task_dadd_recv (sopalin_data_t *sopalin_data, pastix_coefside_t side, const SolverCblk *cblk, int prio)
 Submits starpu zadd task to send the recv cblk.
 
void starpu_stask_blok_dadd_fwd_recv (sopalin_data_t *sopalin_data, pastix_rhs_t rhsb, 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.
 
void starpu_stask_blok_dcpy_bwd_recv (sopalin_data_t *sopalin_data, pastix_rhs_t rhsb, SolverCblk *cblk, const 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.
 
void starpu_ddiag (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data, pastix_rhs_t rhsb)
 Apply the diagonal solve (StarPU version)
 
void starpu_dpotrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse Cholesky factorization using StarPU runtime.
 
void starpu_dgetrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse LU factorization using StarPU runtime.
 
void starpu_dsytrf (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data)
 Perform a sparse LDL^t factorization using StarPU runtime.
 
void starpu_dtrsm (pastix_data_t *pastix_data, const args_solve_t *enums, sopalin_data_t *sopalin_data, pastix_rhs_t rhsb)
 Apply the TRSM solve (StarPU version).
 

Detailed Description

Pastix StarPU codelets header

Version
6.4.0
Author
Mathieu Faverge
Pierre Ramet
Vincent Bridonneau
Alycia Lisito
Date
2024-07-05
Generated arithmetic file
from /builds/j2uR5rszh/0/solverstack/pastix/sopalin/starpu/pastix_zstarpu.h, normal z -> d, Fri Jul 25 09:29:33 2025

Definition in file pastix_dstarpu.h.

Function Documentation

◆ starpu_task_dadd_1dp_fanin()

void starpu_task_dadd_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_dadd.c.

References solver_cblk_s::cblktype, and starpu_task_cblk_dadd_fanin().

Referenced by starpu_dgetrf_sp1dplus_ll(), starpu_dgetrf_sp1dplus_rl(), starpu_dgetrf_sp2d_rl(), starpu_dpotrf_sp1dplus_ll(), starpu_dpotrf_sp1dplus_rl(), starpu_dpotrf_sp2d_rl(), starpu_dsytrf_sp1dplus_ll(), starpu_dsytrf_sp1dplus_rl(), starpu_dsytrf_sp2d_rl(), and starpu_task_dadd_fanin().

◆ starpu_task_dadd_1dp_recv()

void starpu_task_dadd_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_dadd.c.

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

Referenced by starpu_dgetrf_sp1dplus_ll(), starpu_dgetrf_sp1dplus_rl(), starpu_dgetrf_sp2d_rl(), starpu_dpotrf_sp1dplus_ll(), starpu_dpotrf_sp1dplus_rl(), starpu_dpotrf_sp2d_rl(), starpu_dsytrf_sp1dplus_ll(), starpu_dsytrf_sp1dplus_rl(), starpu_dsytrf_sp2d_rl(), and starpu_task_dadd_recv().

◆ starpu_task_dadd_2d_fanin()

void starpu_task_dadd_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_dadd.c.

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

Referenced by starpu_dgetrf_sp2d_rl(), starpu_dpotrf_sp2d_rl(), starpu_dsytrf_sp2d_rl(), and starpu_task_dadd_fanin().

◆ starpu_task_dadd_2d_recv()

void starpu_task_dadd_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_dadd.c.

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

Referenced by starpu_dgetrf_sp2d_rl(), starpu_dpotrf_sp2d_rl(), starpu_dsytrf_sp2d_rl(), and starpu_task_dadd_recv().

◆ starpu_task_dadd_fanin()

void starpu_task_dadd_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_dadd.c.

References solver_cblk_s::cblktype, starpu_task_dadd_1dp_fanin(), and starpu_task_dadd_2d_fanin().

Referenced by starpu_dgetrf_sp2d_ll(), starpu_dpotrf_sp2d_ll(), and starpu_dsytrf_sp2d_ll().

◆ starpu_task_dadd_recv()

void starpu_task_dadd_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_dadd.c.

References solver_cblk_s::cblktype, starpu_task_dadd_1dp_recv(), and starpu_task_dadd_2d_recv().

Referenced by starpu_dgetrf_sp2d_ll(), starpu_dpotrf_sp2d_ll(), and starpu_dsytrf_sp2d_ll().