PaStiX Handbook 6.4.0
Loading...
Searching...
No Matches
sequential_cdiag.c File Reference
#include "common.h"
#include "blend/solver.h"
#include "sopalin/sopalin_data.h"
#include "pastix_ccores.h"

Go to the source code of this file.

Functions

void sequential_cdiag (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data, pastix_rhs_t rhsb)
 Apply the diagonal solve (sequential version)
 
void thread_cdiag_static (isched_thread_t *ctx, void *args)
 Applies the diagonal solve.
 
void static_cdiag (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data, pastix_rhs_t rhsb)
 Apply the diagonal solve (static version)
 
void thread_cdiag_dynamic (isched_thread_t *ctx, void *args)
 Applies the diagonal solve.
 
void dynamic_cdiag (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data, pastix_rhs_t rhsb)
 Apply the diagonal solve (dynamic version)
 
void sopalin_cdiag (pastix_data_t *pastix_data, sopalin_data_t *sopalin_data, pastix_rhs_t rhsb)
 Apply the diagonal solve.
 

Detailed Description

Version
6.4.0
Author
Pascal Henon
Xavier Lacoste
Pierre Ramet
Mathieu Faverge
Tony Delarue
Vincent Bridonneau
Alycia Lisito
Date
2024-07-05
Generated arithmetic file
from /builds/2mk6rsew/0/solverstack/pastix/sopalin/sequential_zdiag.c, normal z -> c, Tue Feb 25 14:36:05 2025

Definition in file sequential_cdiag.c.

Function Documentation

◆ sequential_cdiag()

void sequential_cdiag ( pastix_data_t pastix_data,
sopalin_data_t *  sopalin_data,
pastix_rhs_t  rhsb 
)

Apply the diagonal solve (sequential version)

Parameters
[in]pastix_dataThe pastix_data structure.
[in]sopalin_dataThe SolverMatrix structure from PaStiX.
[in]rhsbThe pointer to the rhs data structure that holds the vectors of the right hand side.

Definition at line 49 of file sequential_cdiag.c.

References pastix_rhs_s::b, cblk_getdataL(), solver_matrix_s::cblknbr, solver_matrix_s::cblkschur, solver_matrix_s::cblktab, pastix_data_s::iparm, IPARM_SCHUR_SOLV_MODE, solver_cblk_s::lcolidx, pastix_rhs_s::ld, pastix_rhs_s::n, solver_cblk_s::ownerid, pastix_int_t, and solve_cblk_cdiag().

◆ thread_cdiag_static()

void thread_cdiag_static ( isched_thread_t *  ctx,
void *  args 
)

Applies the diagonal solve.

Parameters
[in]ctxThread structure of the execution context of one instance of the scheduler.
[in]argsArguments for the kernel diagonal call.

Definition at line 97 of file sequential_cdiag.c.

References cblk_getdataL(), solver_matrix_s::cblknbr, task_s::cblknum, solver_matrix_s::cblkschur, solver_matrix_s::cblktab, pastix_data_s::iparm, IPARM_SCHUR_SOLV_MODE, solver_cblk_s::lcolidx, solver_cblk_s::ownerid, pastix_int_t, and solve_cblk_cdiag().

Referenced by dynamic_cdiag(), and static_cdiag().

◆ static_cdiag()

void static_cdiag ( pastix_data_t pastix_data,
sopalin_data_t *  sopalin_data,
pastix_rhs_t  rhsb 
)

Apply the diagonal solve (static version)

Parameters
[in]pastix_dataThe pastix_data structure.
[in]sopalin_dataThe SolverMatrix structure from PaStiX.
[in]rhsbThe pointer to the rhs data structure that holds the vectors of the right hand side.

Definition at line 153 of file sequential_cdiag.c.

References pastix_data_s::isched, and thread_cdiag_static().

Referenced by sopalin_cdiag().

◆ thread_cdiag_dynamic()

void thread_cdiag_dynamic ( isched_thread_t *  ctx,
void *  args 
)

Applies the diagonal solve.

Parameters
[in]ctxThread structure of the execution context of one instance of the scheduler.
[in]argsArguments for the kernel diagonal call.

Definition at line 177 of file sequential_cdiag.c.

References cblk_getdataL(), solver_matrix_s::cblknbr, task_s::cblknum, solver_matrix_s::cblkschur, solver_matrix_s::cblktab, pastix_data_s::iparm, IPARM_SCHUR_SOLV_MODE, solver_cblk_s::lcolidx, pastix_int_t, pqueueExit(), pqueueInit(), pqueuePop(), pqueuePush1(), solver_cblk_s::priority, solve_cblk_cdiag(), and stealQueue().

◆ dynamic_cdiag()

void dynamic_cdiag ( pastix_data_t pastix_data,
sopalin_data_t *  sopalin_data,
pastix_rhs_t  rhsb 
)

Apply the diagonal solve (dynamic version)

Parameters
[in]pastix_dataThe pastix_data structure.
[in]sopalin_dataThe SolverMatrix structure from PaStiX.
[in]rhsbThe pointer to the rhs data structure that holds the vectors of the right hand side.

Definition at line 262 of file sequential_cdiag.c.

References pastix_data_s::iparm, IPARM_SCHUR_SOLV_MODE, pastix_data_s::isched, pastix_int_t, and thread_cdiag_static().

◆ sopalin_cdiag()

void sopalin_cdiag ( pastix_data_t pastix_data,
sopalin_data_t *  sopalin_data,
pastix_rhs_t  rhsb 
)

Apply the diagonal solve.

Parameters
[in]pastix_dataThe pastix_data structure.
[in]sopalin_dataThe SolverMatrix structure from PaStiX.
[in]rhsbThe pointer to the rhs data structure that holds the vectors of the right hand side.

Definition at line 315 of file sequential_cdiag.c.

References pastix_data_s::iparm, IPARM_SCHEDULER, and static_cdiag().

Referenced by pastix_subtask_diag().