PaStiX Handbook  6.4.0
bcsc_s.h File Reference

Go to the source code of this file.

Functions

PastixFloat initialization functions
void bcsc_sinit (const spmatrix_t *spm, const pastix_order_t *ord, const SolverMatrix *solvmtx, int initAt, pastix_bcsc_t *bcsc, pastix_int_t valuesize)
 Initializes a centralize float block csc. More...
 
PastixFloat vector(s) operations
void bvec_saxpy_seq (pastix_data_t *pastix_data, pastix_int_t n, float alpha, const float *x, float *y)
 Compute y <- alpha * x + y. (Sequential version) More...
 
void bvec_saxpy_smp (pastix_data_t *pastix_data, pastix_int_t n, float alpha, const float *x, float *y)
 Perform y = alpha * x + y (Parallel version) More...
 
void bvec_scopy_seq (pastix_data_t *pastix_data, pastix_int_t n, const float *x, float *y)
 Copy a vector y = x (Sequential version) More...
 
void bvec_scopy_smp (pastix_data_t *pastix_data, pastix_int_t n, const float *x, float *y)
 Copy a vector y = x (parallel version) More...
 
float bvec_sdot_seq (pastix_data_t *pastix_data, pastix_int_t n, const float *x, const float *y)
 Compute the scalar product x.y. (Sequential version) More...
 
float bvec_sdot_smp (pastix_data_t *pastix_data, pastix_int_t n, const float *x, const float *y)
 Compute a regular scalar product x.y (Parallel version) More...
 
void bvec_sgemv_seq (pastix_data_t *pastix_data, pastix_int_t m, pastix_int_t n, float alpha, const float *A, pastix_int_t lda, const float *x, float beta, float *y)
 Compute. More...
 
void bvec_sgemv_smp (pastix_data_t *pastix_data, pastix_int_t m, pastix_int_t n, float alpha, const float *A, pastix_int_t lda, const float *x, float beta, float *y)
 Compute. More...
 
float bvec_snrm2_seq (pastix_data_t *pastix_data, pastix_int_t n, const float *x)
 Compute the norm 2 of a vector. (Sequential version) More...
 
float bvec_snrm2_smp (pastix_data_t *pastix_data, pastix_int_t n, const float *x)
 Compute the norm 2 of a vector. (Parallel version) More...
 
void bvec_sscal_seq (pastix_data_t *pastix_data, pastix_int_t n, float alpha, float *x)
 Scale a vector by the scalar alpha. (Sequential version) More...
 
void bvec_sscal_smp (pastix_data_t *pastix_data, pastix_int_t n, float alpha, float *x)
 Scale a vector (Parallel version) More...
 
int bvec_slapmr (pastix_data_t *pastix_data, pastix_dir_t dir, pastix_int_t m, pastix_int_t n, float *A, pastix_int_t lda, pastix_rhs_t PA)
 Apply a row permutation to a right hand side A (LAPACK xlatmr) More...
 
PastixFloat matrix operations
float bcsc_snorm (pastix_normtype_t ntype, const pastix_bcsc_t *bcsc)
 Compute the norm of an bcsc matrix. More...
 
void bcsc_sspsv (pastix_data_t *pastix_data, float *b, float *work)
 Solve A x = b with A the sparse matrix. More...
 
void bcsc_sspmv (const pastix_data_t *pastix_data, pastix_trans_t trans, float alpha, const float *x, float beta, float *y)
 Compute the matrix-vector product y = alpha * op(A) * x + beta * y. More...
 
void bcsc_sspmv_seq (const pastix_data_t *pastix_data, pastix_trans_t trans, float alpha, const float *x, float beta, float *y)
 Compute the matrix-vector product y = alpha * A * x + beta * y (Sequential version) More...
 
void bcsc_sspmv_smp (const pastix_data_t *pastix_data, pastix_trans_t trans, float alpha, const float *x, float beta, float *y)
 Perform y = alpha A x + beta y (Parallel version) More...
 
PastixFloat MPI vector operations
const float * bvec_sgather_remote (const pastix_data_t *pastix_data, const float *y)
 Gather a distributed right hand side (bvec storage) on all nodes. More...
 
void bvec_snullify_remote (const pastix_data_t *pastix_data, float *y)
 Set to 0 remote coefficients. More...
 
void bvec_sallreduce (const pastix_data_t *pastix_data, float *y)
 Apply an all reduce of the vector on all nodes. More...
 

Detailed Description

Version
6.4.0
Author
Mathieu Faverge
Pierre Ramet
Xavier Lacoste
Vincent Bridonneau
Date
2024-07-05
Generated arithmetic file
from /builds/solverstack/pastix/bcsc/bcsc_z.h, normal z -> s, Tue Oct 8 14:17:10 2024

Definition in file bcsc_s.h.