monolish  0.17.3-dev.16
MONOlithic LInear equation Solvers for Highly-parallel architecture
Functions
monolish::blas::matvec_N (CRS)

CRS format sparse matrix and vector multiplication: y = A^N x. More...

Functions

void monolish::blas::matvec_N (const matrix::CRS< double > &A, const vector< double > &x, vector< double > &y)
 CRS format sparse matrix and vector multiplication: y = A^N x. More...
 
void monolish::blas::matvec_N (const matrix::CRS< double > &A, const vector< double > &x, view1D< matrix::Dense< double >, double > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< double > &A, const vector< double > &x, view1D< tensor::tensor_Dense< double >, double > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< double > &A, const vector< double > &x, view1D< vector< double >, double > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< double > &A, const view1D< matrix::Dense< double >, double > &x, vector< double > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< double > &A, const view1D< matrix::Dense< double >, double > &x, view1D< matrix::Dense< double >, double > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< double > &A, const view1D< matrix::Dense< double >, double > &x, view1D< tensor::tensor_Dense< double >, double > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< double > &A, const view1D< matrix::Dense< double >, double > &x, view1D< vector< double >, double > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< double > &A, const view1D< tensor::tensor_Dense< double >, double > &x, vector< double > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< double > &A, const view1D< tensor::tensor_Dense< double >, double > &x, view1D< matrix::Dense< double >, double > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< double > &A, const view1D< tensor::tensor_Dense< double >, double > &x, view1D< tensor::tensor_Dense< double >, double > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< double > &A, const view1D< tensor::tensor_Dense< double >, double > &x, view1D< vector< double >, double > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< double > &A, const view1D< vector< double >, double > &x, vector< double > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< double > &A, const view1D< vector< double >, double > &x, view1D< matrix::Dense< double >, double > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< double > &A, const view1D< vector< double >, double > &x, view1D< tensor::tensor_Dense< double >, double > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< double > &A, const view1D< vector< double >, double > &x, view1D< vector< double >, double > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< float > &A, const vector< float > &x, vector< float > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< float > &A, const vector< float > &x, view1D< matrix::Dense< float >, float > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< float > &A, const vector< float > &x, view1D< tensor::tensor_Dense< float >, float > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< float > &A, const vector< float > &x, view1D< vector< float >, float > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< float > &A, const view1D< matrix::Dense< float >, float > &x, vector< float > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< float > &A, const view1D< matrix::Dense< float >, float > &x, view1D< matrix::Dense< float >, float > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< float > &A, const view1D< matrix::Dense< float >, float > &x, view1D< tensor::tensor_Dense< float >, float > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< float > &A, const view1D< matrix::Dense< float >, float > &x, view1D< vector< float >, float > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< float > &A, const view1D< tensor::tensor_Dense< float >, float > &x, vector< float > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< float > &A, const view1D< tensor::tensor_Dense< float >, float > &x, view1D< matrix::Dense< float >, float > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< float > &A, const view1D< tensor::tensor_Dense< float >, float > &x, view1D< tensor::tensor_Dense< float >, float > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< float > &A, const view1D< tensor::tensor_Dense< float >, float > &x, view1D< vector< float >, float > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< float > &A, const view1D< vector< float >, float > &x, vector< float > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< float > &A, const view1D< vector< float >, float > &x, view1D< matrix::Dense< float >, float > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< float > &A, const view1D< vector< float >, float > &x, view1D< tensor::tensor_Dense< float >, float > &y)
 
void monolish::blas::matvec_N (const matrix::CRS< float > &A, const view1D< vector< float >, float > &x, view1D< vector< float >, float > &y)
 

Detailed Description

CRS format sparse matrix and vector multiplication: y = A^N x.

Function Documentation

◆ matvec_N() [1/32]

void monolish::blas::matvec_N ( const matrix::CRS< double > &  A,
const vector< double > &  x,
vector< double > &  y 
)

CRS format sparse matrix and vector multiplication: y = A^N x.

Parameters
ACRS matrix (size M x N)
xmonolish vector (size M)
ymonolish vector (size M)
Note
  • # of computation: 2nnz
  • Multi-threading: true
  • GPU acceleration: true
    • # of data transfer: 0

◆ matvec_N() [2/32]

void monolish::blas::matvec_N ( const matrix::CRS< double > &  A,
const vector< double > &  x,
view1D< matrix::Dense< double >, double > &  y 
)

◆ matvec_N() [3/32]

void monolish::blas::matvec_N ( const matrix::CRS< double > &  A,
const vector< double > &  x,
view1D< tensor::tensor_Dense< double >, double > &  y 
)

◆ matvec_N() [4/32]

void monolish::blas::matvec_N ( const matrix::CRS< double > &  A,
const vector< double > &  x,
view1D< vector< double >, double > &  y 
)

◆ matvec_N() [5/32]

void monolish::blas::matvec_N ( const matrix::CRS< double > &  A,
const view1D< matrix::Dense< double >, double > &  x,
vector< double > &  y 
)

◆ matvec_N() [6/32]

void monolish::blas::matvec_N ( const matrix::CRS< double > &  A,
const view1D< matrix::Dense< double >, double > &  x,
view1D< matrix::Dense< double >, double > &  y 
)

◆ matvec_N() [7/32]

void monolish::blas::matvec_N ( const matrix::CRS< double > &  A,
const view1D< matrix::Dense< double >, double > &  x,
view1D< tensor::tensor_Dense< double >, double > &  y 
)

◆ matvec_N() [8/32]

void monolish::blas::matvec_N ( const matrix::CRS< double > &  A,
const view1D< matrix::Dense< double >, double > &  x,
view1D< vector< double >, double > &  y 
)

◆ matvec_N() [9/32]

void monolish::blas::matvec_N ( const matrix::CRS< double > &  A,
const view1D< tensor::tensor_Dense< double >, double > &  x,
vector< double > &  y 
)

◆ matvec_N() [10/32]

void monolish::blas::matvec_N ( const matrix::CRS< double > &  A,
const view1D< tensor::tensor_Dense< double >, double > &  x,
view1D< matrix::Dense< double >, double > &  y 
)

◆ matvec_N() [11/32]

void monolish::blas::matvec_N ( const matrix::CRS< double > &  A,
const view1D< tensor::tensor_Dense< double >, double > &  x,
view1D< tensor::tensor_Dense< double >, double > &  y 
)

◆ matvec_N() [12/32]

void monolish::blas::matvec_N ( const matrix::CRS< double > &  A,
const view1D< tensor::tensor_Dense< double >, double > &  x,
view1D< vector< double >, double > &  y 
)

◆ matvec_N() [13/32]

void monolish::blas::matvec_N ( const matrix::CRS< double > &  A,
const view1D< vector< double >, double > &  x,
vector< double > &  y 
)

◆ matvec_N() [14/32]

void monolish::blas::matvec_N ( const matrix::CRS< double > &  A,
const view1D< vector< double >, double > &  x,
view1D< matrix::Dense< double >, double > &  y 
)

◆ matvec_N() [15/32]

void monolish::blas::matvec_N ( const matrix::CRS< double > &  A,
const view1D< vector< double >, double > &  x,
view1D< tensor::tensor_Dense< double >, double > &  y 
)

◆ matvec_N() [16/32]

void monolish::blas::matvec_N ( const matrix::CRS< double > &  A,
const view1D< vector< double >, double > &  x,
view1D< vector< double >, double > &  y 
)

◆ matvec_N() [17/32]

void monolish::blas::matvec_N ( const matrix::CRS< float > &  A,
const vector< float > &  x,
vector< float > &  y 
)

◆ matvec_N() [18/32]

void monolish::blas::matvec_N ( const matrix::CRS< float > &  A,
const vector< float > &  x,
view1D< matrix::Dense< float >, float > &  y 
)

◆ matvec_N() [19/32]

void monolish::blas::matvec_N ( const matrix::CRS< float > &  A,
const vector< float > &  x,
view1D< tensor::tensor_Dense< float >, float > &  y 
)

◆ matvec_N() [20/32]

void monolish::blas::matvec_N ( const matrix::CRS< float > &  A,
const vector< float > &  x,
view1D< vector< float >, float > &  y 
)

◆ matvec_N() [21/32]

void monolish::blas::matvec_N ( const matrix::CRS< float > &  A,
const view1D< matrix::Dense< float >, float > &  x,
vector< float > &  y 
)

◆ matvec_N() [22/32]

void monolish::blas::matvec_N ( const matrix::CRS< float > &  A,
const view1D< matrix::Dense< float >, float > &  x,
view1D< matrix::Dense< float >, float > &  y 
)

◆ matvec_N() [23/32]

void monolish::blas::matvec_N ( const matrix::CRS< float > &  A,
const view1D< matrix::Dense< float >, float > &  x,
view1D< tensor::tensor_Dense< float >, float > &  y 
)

◆ matvec_N() [24/32]

void monolish::blas::matvec_N ( const matrix::CRS< float > &  A,
const view1D< matrix::Dense< float >, float > &  x,
view1D< vector< float >, float > &  y 
)

◆ matvec_N() [25/32]

void monolish::blas::matvec_N ( const matrix::CRS< float > &  A,
const view1D< tensor::tensor_Dense< float >, float > &  x,
vector< float > &  y 
)

◆ matvec_N() [26/32]

void monolish::blas::matvec_N ( const matrix::CRS< float > &  A,
const view1D< tensor::tensor_Dense< float >, float > &  x,
view1D< matrix::Dense< float >, float > &  y 
)

◆ matvec_N() [27/32]

void monolish::blas::matvec_N ( const matrix::CRS< float > &  A,
const view1D< tensor::tensor_Dense< float >, float > &  x,
view1D< tensor::tensor_Dense< float >, float > &  y 
)

◆ matvec_N() [28/32]

void monolish::blas::matvec_N ( const matrix::CRS< float > &  A,
const view1D< tensor::tensor_Dense< float >, float > &  x,
view1D< vector< float >, float > &  y 
)

◆ matvec_N() [29/32]

void monolish::blas::matvec_N ( const matrix::CRS< float > &  A,
const view1D< vector< float >, float > &  x,
vector< float > &  y 
)

◆ matvec_N() [30/32]

void monolish::blas::matvec_N ( const matrix::CRS< float > &  A,
const view1D< vector< float >, float > &  x,
view1D< matrix::Dense< float >, float > &  y 
)

◆ matvec_N() [31/32]

void monolish::blas::matvec_N ( const matrix::CRS< float > &  A,
const view1D< vector< float >, float > &  x,
view1D< tensor::tensor_Dense< float >, float > &  y 
)

◆ matvec_N() [32/32]

void monolish::blas::matvec_N ( const matrix::CRS< float > &  A,
const view1D< vector< float >, float > &  x,
view1D< vector< float >, float > &  y 
)