MAGMA  2.3.0 Matrix Algebra for GPU and Multicore Architectures
trmm: Triangular matrix multiply

$$B = \alpha \;op(A)\; B$$ or $$B = \alpha B \;op(A)$$ where $$A$$ is triangular More...

## Functions

void magma_ctrmm (magma_side_t side, magma_uplo_t uplo, magma_trans_t trans, magma_diag_t diag, magma_int_t m, magma_int_t n, magmaFloatComplex alpha, magmaFloatComplex_const_ptr dA, magma_int_t ldda, magmaFloatComplex_ptr dB, magma_int_t lddb, magma_queue_t queue)
Perform triangular matrix-matrix product. More...

void magma_dtrmm (magma_side_t side, magma_uplo_t uplo, magma_trans_t trans, magma_diag_t diag, magma_int_t m, magma_int_t n, double alpha, magmaDouble_const_ptr dA, magma_int_t ldda, magmaDouble_ptr dB, magma_int_t lddb, magma_queue_t queue)
Perform triangular matrix-matrix product. More...

void magma_strmm (magma_side_t side, magma_uplo_t uplo, magma_trans_t trans, magma_diag_t diag, magma_int_t m, magma_int_t n, float alpha, magmaFloat_const_ptr dA, magma_int_t ldda, magmaFloat_ptr dB, magma_int_t lddb, magma_queue_t queue)
Perform triangular matrix-matrix product. More...

void magma_ztrmm (magma_side_t side, magma_uplo_t uplo, magma_trans_t trans, magma_diag_t diag, magma_int_t m, magma_int_t n, magmaDoubleComplex alpha, magmaDoubleComplex_const_ptr dA, magma_int_t ldda, magmaDoubleComplex_ptr dB, magma_int_t lddb, magma_queue_t queue)
Perform triangular matrix-matrix product. More...

## Detailed Description

$$B = \alpha \;op(A)\; B$$ or $$B = \alpha B \;op(A)$$ where $$A$$ is triangular

## Function Documentation

 void magma_ctrmm ( magma_side_t side, magma_uplo_t uplo, magma_trans_t trans, magma_diag_t diag, magma_int_t m, magma_int_t n, magmaFloatComplex alpha, magmaFloatComplex_const_ptr dA, magma_int_t ldda, magmaFloatComplex_ptr dB, magma_int_t lddb, magma_queue_t queue )

Perform triangular matrix-matrix product.

$$B = \alpha op(A) B$$ (side == MagmaLeft), or
$$B = \alpha B op(A)$$ (side == MagmaRight),
where $$A$$ is triangular.

Parameters
 [in] side Whether A is on the left or right. [in] uplo Whether A is upper or lower triangular. [in] trans Operation to perform on A. [in] diag Whether the diagonal of A is assumed to be unit or non-unit. [in] m Number of rows of B. m >= 0. [in] n Number of columns of B. n >= 0. [in] alpha Scalar $$\alpha$$ [in] dA COMPLEX array on GPU device. If side == MagmaLeft, the n-by-n triangular matrix A of dimension (ldda,n), ldda >= max(1,n); otherwise, the m-by-m triangular matrix A of dimension (ldda,m), ldda >= max(1,m). [in] ldda Leading dimension of dA. [in] dB COMPLEX array on GPU device. The m-by-n matrix B of dimension (lddb,n), lddb >= max(1,m). [in] lddb Leading dimension of dB. [in] queue magma_queue_t Queue to execute in.
 void magma_dtrmm ( magma_side_t side, magma_uplo_t uplo, magma_trans_t trans, magma_diag_t diag, magma_int_t m, magma_int_t n, double alpha, magmaDouble_const_ptr dA, magma_int_t ldda, magmaDouble_ptr dB, magma_int_t lddb, magma_queue_t queue )

Perform triangular matrix-matrix product.

$$B = \alpha op(A) B$$ (side == MagmaLeft), or
$$B = \alpha B op(A)$$ (side == MagmaRight),
where $$A$$ is triangular.

Parameters
 [in] side Whether A is on the left or right. [in] uplo Whether A is upper or lower triangular. [in] trans Operation to perform on A. [in] diag Whether the diagonal of A is assumed to be unit or non-unit. [in] m Number of rows of B. m >= 0. [in] n Number of columns of B. n >= 0. [in] alpha Scalar $$\alpha$$ [in] dA DOUBLE PRECISION array on GPU device. If side == MagmaLeft, the n-by-n triangular matrix A of dimension (ldda,n), ldda >= max(1,n); otherwise, the m-by-m triangular matrix A of dimension (ldda,m), ldda >= max(1,m). [in] ldda Leading dimension of dA. [in] dB DOUBLE PRECISION array on GPU device. The m-by-n matrix B of dimension (lddb,n), lddb >= max(1,m). [in] lddb Leading dimension of dB. [in] queue magma_queue_t Queue to execute in.
 void magma_strmm ( magma_side_t side, magma_uplo_t uplo, magma_trans_t trans, magma_diag_t diag, magma_int_t m, magma_int_t n, float alpha, magmaFloat_const_ptr dA, magma_int_t ldda, magmaFloat_ptr dB, magma_int_t lddb, magma_queue_t queue )

Perform triangular matrix-matrix product.

$$B = \alpha op(A) B$$ (side == MagmaLeft), or
$$B = \alpha B op(A)$$ (side == MagmaRight),
where $$A$$ is triangular.

Parameters
 [in] side Whether A is on the left or right. [in] uplo Whether A is upper or lower triangular. [in] trans Operation to perform on A. [in] diag Whether the diagonal of A is assumed to be unit or non-unit. [in] m Number of rows of B. m >= 0. [in] n Number of columns of B. n >= 0. [in] alpha Scalar $$\alpha$$ [in] dA REAL array on GPU device. If side == MagmaLeft, the n-by-n triangular matrix A of dimension (ldda,n), ldda >= max(1,n); otherwise, the m-by-m triangular matrix A of dimension (ldda,m), ldda >= max(1,m). [in] ldda Leading dimension of dA. [in] dB REAL array on GPU device. The m-by-n matrix B of dimension (lddb,n), lddb >= max(1,m). [in] lddb Leading dimension of dB. [in] queue magma_queue_t Queue to execute in.
 void magma_ztrmm ( magma_side_t side, magma_uplo_t uplo, magma_trans_t trans, magma_diag_t diag, magma_int_t m, magma_int_t n, magmaDoubleComplex alpha, magmaDoubleComplex_const_ptr dA, magma_int_t ldda, magmaDoubleComplex_ptr dB, magma_int_t lddb, magma_queue_t queue )

Perform triangular matrix-matrix product.

$$B = \alpha op(A) B$$ (side == MagmaLeft), or
$$B = \alpha B op(A)$$ (side == MagmaRight),
where $$A$$ is triangular.

Parameters
 [in] side Whether A is on the left or right. [in] uplo Whether A is upper or lower triangular. [in] trans Operation to perform on A. [in] diag Whether the diagonal of A is assumed to be unit or non-unit. [in] m Number of rows of B. m >= 0. [in] n Number of columns of B. n >= 0. [in] alpha Scalar $$\alpha$$ [in] dA COMPLEX_16 array on GPU device. If side == MagmaLeft, the n-by-n triangular matrix A of dimension (ldda,n), ldda >= max(1,n); otherwise, the m-by-m triangular matrix A of dimension (ldda,m), ldda >= max(1,m). [in] ldda Leading dimension of dA. [in] dB COMPLEX_16 array on GPU device. The m-by-n matrix B of dimension (lddb,n), lddb >= max(1,m). [in] lddb Leading dimension of dB. [in] queue magma_queue_t Queue to execute in.