PaStiX Handbook  6.3.2
bvec_scompute.c File Reference
#include "common.h"
#include <math.h>
#include "lapacke.h"
#include "bcsc/bcsc.h"
#include "bcsc_s.h"
#include "order/order_internal.h"
#include "frobeniusupdate.h"
#include "cblas.h"
#include "blend/solver.h"

Go to the source code of this file.

Functions

static void pthread_bvec_snrm2 (isched_thread_t *ctx, void *args)
 Compute the norm 2 of a vector. (Parallel version) More...
 
static void pthread_bvec_sscal (isched_thread_t *ctx, void *args)
 Scale a vector (Parallel version) More...
 
static void pthread_bvec_saxpy (isched_thread_t *ctx, void *args)
 Compute y <- alpha * x + y (Parallel version). More...
 
static void pthread_bvec_sdot (isched_thread_t *ctx, void *args)
 Compute the scalar product x.y. (Parallel version) More...
 
static void pthread_bvec_scopy (isched_thread_t *ctx, void *args)
 Copy a vector y = x (parallel version) More...
 
static void pthread_bvec_sgemv (isched_thread_t *ctx, void *args)
 Compute. More...
 
PastixFloat vector(s) operations
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...
 
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...
 
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_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...
 
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...
 
PastixFloat matrix operations
void bcsc_sspsv (pastix_data_t *pastix_data, float *b, float *work)
 Solve A x = b with A the sparse matrix. More...
 
PastixFloat MPI vector operations
void bvec_snullify_remote (const pastix_data_t *pastix_data, float *y)
 Set to 0 remote coefficients. More...
 
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_sallreduce (const pastix_data_t *pastix_data, float *y)
 Apply an all reduce of the vector on all nodes. More...
 

Detailed Description

Functions computing operations on the BCSC.

Version
6.3.2
Author
Mathieu Faverge
Pierre Ramet
Xavier Lacoste
Gregoire Pichon
Theophile Terraz
Tony Delarue
Vincent Bridonneau
Date
2023-07-21
Generated arithmetic file
from /builds/solverstack/pastix/bcsc/bvec_zcompute.c, normal z -> s, Wed Dec 13 12:09:45 2023

Definition in file bvec_scompute.c.