librsb  1.2.0.11
Public Member Functions
blas_sparse::usmm Interface Reference

multiplication : c <- beta c + alpha A b More...

Public Member Functions

subroutine susmm (order, transA, nrhs, alpha, A, b, ldb, c, ldc, istat)
 Multiply by a dense matrix (aka multi-vector). Either of $C \leftarrow \alpha AB+C,$ $C \leftarrow \alpha A^T B+C,$ $C \leftarrow \alpha A^H B+C$, depending on the value of transA. More...
 
subroutine dusmm (order, transA, nrhs, alpha, A, b, ldb, c, ldc, istat)
 Multiply by a dense matrix (aka multi-vector). Either of $C \leftarrow \alpha AB+C,$ $C \leftarrow \alpha A^T B+C,$ $C \leftarrow \alpha A^H B+C$, depending on the value of transA. More...
 
subroutine cusmm (order, transA, nrhs, alpha, A, b, ldb, c, ldc, istat)
 Multiply by a dense matrix (aka multi-vector). Either of $C \leftarrow \alpha AB+C,$ $C \leftarrow \alpha A^T B+C,$ $C \leftarrow \alpha A^H B+C$, depending on the value of transA. More...
 
subroutine zusmm (order, transA, nrhs, alpha, A, b, ldb, c, ldc, istat)
 Multiply by a dense matrix (aka multi-vector). Either of $C \leftarrow \alpha AB+C,$ $C \leftarrow \alpha A^T B+C,$ $C \leftarrow \alpha A^H B+C$, depending on the value of transA. More...
 

Detailed Description

multiplication : c <- beta c + alpha A b

Parameters
istatThe return code will be written to istat (this is a Fortran routine): either 0 (success) or -1 (failure).

Member Function/Subroutine Documentation

◆ cusmm()

subroutine blas_sparse::usmm::cusmm ( integer  order,
integer  transA,
integer  nrhs,
complex(kind(1.e0))  alpha,
integer  A,
complex(kind(1.e0)), dimension (:,:)  b,
integer  ldb,
complex(kind(1.e0)), dimension (:,:)  c,
integer  ldc,
integer, intent(out)  istat 
)

Multiply by a dense matrix (aka multi-vector). Either of $C \leftarrow \alpha AB+C,$ $C \leftarrow \alpha A^T B+C,$ $C \leftarrow \alpha A^H B+C$, depending on the value of transA.

Parameters
orderlayour of the dense array.
transATransposition operator for matrix A.
nrhsNumber of right hand side columns.
AA valid matrix handle.
alphaValue for $ \alpha $.
bDense vector b.
ldbLeading dimension of b.
cDense vector c.
ldcLeading dimension of c.
Note
By setting the blas_rsb_autotune_next_operation property via BLAS_ussp (at any time) the next multiplication routine call (either of BLAS_dusmv, BLAS_susmv, BLAS_zusmv, BLAS_cusmv, BLAS_dusmm, BLAS_susmm, BLAS_zusmm, BLAS_cusmm) will invoke autotuning before carrying out the effective operation. The tuning will take in account parameters like transposition, number of right hand sides, and scaling constants. By setting the blas_rsb_spmv_autotuning_on property via BLAS_ussp, the default number of executing threads for this matrix will be determined once, at matrix assembly time, and employed irrespective of the default threads count (different values for transposed and untransposed multiply). This can be overridden only by setting the RSB_NUM_THREADS environment variable.
See also
On the topic of autotuning, see also rsb_tune_spmm. If –enable-rsb-num-threads has been specified at configure time, the RSB_NUM_THREADS environment variable will override the number of executing threads specified by OMP_NUM_THREADS. (See also RSB_IO_WANT_EXECUTING_THREADS).
Returns
On success, 0 is returned; on error, -1.
Parameters
istatThe return code will be written to istat (this is a Fortran routine): either 0 (success) or -1 (failure).

◆ dusmm()

subroutine blas_sparse::usmm::dusmm ( integer  order,
integer  transA,
integer  nrhs,
real(kind(1.d0))  alpha,
integer  A,
real(kind(1.d0)), dimension (:,:)  b,
integer  ldb,
real(kind(1.d0)), dimension (:,:)  c,
integer  ldc,
integer, intent(out)  istat 
)

Multiply by a dense matrix (aka multi-vector). Either of $C \leftarrow \alpha AB+C,$ $C \leftarrow \alpha A^T B+C,$ $C \leftarrow \alpha A^H B+C$, depending on the value of transA.

Parameters
orderlayour of the dense array.
transATransposition operator for matrix A.
nrhsNumber of right hand side columns.
AA valid matrix handle.
alphaValue for $ \alpha $.
bDense vector b.
ldbLeading dimension of b.
cDense vector c.
ldcLeading dimension of c.
Note
By setting the blas_rsb_autotune_next_operation property via BLAS_ussp (at any time) the next multiplication routine call (either of BLAS_dusmv, BLAS_susmv, BLAS_zusmv, BLAS_cusmv, BLAS_dusmm, BLAS_susmm, BLAS_zusmm, BLAS_cusmm) will invoke autotuning before carrying out the effective operation. The tuning will take in account parameters like transposition, number of right hand sides, and scaling constants. By setting the blas_rsb_spmv_autotuning_on property via BLAS_ussp, the default number of executing threads for this matrix will be determined once, at matrix assembly time, and employed irrespective of the default threads count (different values for transposed and untransposed multiply). This can be overridden only by setting the RSB_NUM_THREADS environment variable.
See also
On the topic of autotuning, see also rsb_tune_spmm. If –enable-rsb-num-threads has been specified at configure time, the RSB_NUM_THREADS environment variable will override the number of executing threads specified by OMP_NUM_THREADS. (See also RSB_IO_WANT_EXECUTING_THREADS).
Returns
On success, 0 is returned; on error, -1.
Parameters
istatThe return code will be written to istat (this is a Fortran routine): either 0 (success) or -1 (failure).

◆ susmm()

subroutine blas_sparse::usmm::susmm ( integer  order,
integer  transA,
integer  nrhs,
real(kind(1.e0))  alpha,
integer  A,
real(kind(1.e0)), dimension (:,:)  b,
integer  ldb,
real(kind(1.e0)), dimension (:,:)  c,
integer  ldc,
integer, intent(out)  istat 
)

Multiply by a dense matrix (aka multi-vector). Either of $C \leftarrow \alpha AB+C,$ $C \leftarrow \alpha A^T B+C,$ $C \leftarrow \alpha A^H B+C$, depending on the value of transA.

Parameters
orderlayour of the dense array.
transATransposition operator for matrix A.
nrhsNumber of right hand side columns.
AA valid matrix handle.
alphaValue for $ \alpha $.
bDense vector b.
ldbLeading dimension of b.
cDense vector c.
ldcLeading dimension of c.
Note
By setting the blas_rsb_autotune_next_operation property via BLAS_ussp (at any time) the next multiplication routine call (either of BLAS_dusmv, BLAS_susmv, BLAS_zusmv, BLAS_cusmv, BLAS_dusmm, BLAS_susmm, BLAS_zusmm, BLAS_cusmm) will invoke autotuning before carrying out the effective operation. The tuning will take in account parameters like transposition, number of right hand sides, and scaling constants. By setting the blas_rsb_spmv_autotuning_on property via BLAS_ussp, the default number of executing threads for this matrix will be determined once, at matrix assembly time, and employed irrespective of the default threads count (different values for transposed and untransposed multiply). This can be overridden only by setting the RSB_NUM_THREADS environment variable.
See also
On the topic of autotuning, see also rsb_tune_spmm. If –enable-rsb-num-threads has been specified at configure time, the RSB_NUM_THREADS environment variable will override the number of executing threads specified by OMP_NUM_THREADS. (See also RSB_IO_WANT_EXECUTING_THREADS).
Returns
On success, 0 is returned; on error, -1.
Parameters
istatThe return code will be written to istat (this is a Fortran routine): either 0 (success) or -1 (failure).

◆ zusmm()

subroutine blas_sparse::usmm::zusmm ( integer  order,
integer  transA,
integer  nrhs,
complex(kind(1.d0))  alpha,
integer  A,
complex(kind(1.d0)), dimension (:,:)  b,
integer  ldb,
complex(kind(1.d0)), dimension (:,:)  c,
integer  ldc,
integer, intent(out)  istat 
)

Multiply by a dense matrix (aka multi-vector). Either of $C \leftarrow \alpha AB+C,$ $C \leftarrow \alpha A^T B+C,$ $C \leftarrow \alpha A^H B+C$, depending on the value of transA.

Parameters
orderlayour of the dense array.
transATransposition operator for matrix A.
nrhsNumber of right hand side columns.
AA valid matrix handle.
alphaValue for $ \alpha $.
bDense vector b.
ldbLeading dimension of b.
cDense vector c.
ldcLeading dimension of c.
Note
By setting the blas_rsb_autotune_next_operation property via BLAS_ussp (at any time) the next multiplication routine call (either of BLAS_dusmv, BLAS_susmv, BLAS_zusmv, BLAS_cusmv, BLAS_dusmm, BLAS_susmm, BLAS_zusmm, BLAS_cusmm) will invoke autotuning before carrying out the effective operation. The tuning will take in account parameters like transposition, number of right hand sides, and scaling constants. By setting the blas_rsb_spmv_autotuning_on property via BLAS_ussp, the default number of executing threads for this matrix will be determined once, at matrix assembly time, and employed irrespective of the default threads count (different values for transposed and untransposed multiply). This can be overridden only by setting the RSB_NUM_THREADS environment variable.
See also
On the topic of autotuning, see also rsb_tune_spmm. If –enable-rsb-num-threads has been specified at configure time, the RSB_NUM_THREADS environment variable will override the number of executing threads specified by OMP_NUM_THREADS. (See also RSB_IO_WANT_EXECUTING_THREADS).
Returns
On success, 0 is returned; on error, -1.
Parameters
istatThe return code will be written to istat (this is a Fortran routine): either 0 (success) or -1 (failure).

The documentation for this interface was generated from the following file: