MAGMA  2.0.0
Matrix Algebra for GPU and Multicore Architectures

Functions

magma_int_t magma_snan_inf (magma_uplo_t uplo, magma_int_t m, magma_int_t n, const float *A, magma_int_t lda, magma_int_t *cnt_nan, magma_int_t *cnt_inf)
 magma_snan_inf checks a matrix that is located on the CPU host for NAN (not-a-number) and INF (infinity) values. More...
 
magma_int_t magma_snan_inf_gpu (magma_uplo_t uplo, magma_int_t m, magma_int_t n, magmaFloat_const_ptr dA, magma_int_t ldda, magma_int_t *cnt_nan, magma_int_t *cnt_inf)
 magma_snan_inf checks a matrix that is located on the CPU host for NAN (not-a-number) and INF (infinity) values. More...
 
void magma_sprint (magma_int_t m, magma_int_t n, const float *A, magma_int_t lda)
 magma_sprint prints a matrix that is located on the CPU host. More...
 
void magma_sprint_gpu (magma_int_t m, magma_int_t n, const float *dA, magma_int_t ldda)
 magma_sprint_gpu prints a matrix that is located on the GPU device. More...
 
void magmablas_slag2d (magma_int_t m, magma_int_t n, magmaFloat_const_ptr SA, magma_int_t ldsa, magmaDouble_ptr A, magma_int_t lda, magma_int_t *info)
 
void magmablas_sgeadd (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)
 
void magmablas_sgeadd2 (magma_int_t m, magma_int_t n, float alpha, magmaFloat_const_ptr dA, magma_int_t ldda, float beta, magmaFloat_ptr dB, magma_int_t lddb)
 
void magmablas_sprbt (magma_int_t n, float *dA, magma_int_t ldda, float *du, float *dv)
 
void magmablas_sprbt_mv (magma_int_t n, float *dv, float *db)
 
void magmablas_sprbt_mtv (magma_int_t n, float *du, float *db)
 
void magmablas_slacpy (magma_uplo_t uplo, magma_int_t m, magma_int_t n, magmaFloat_const_ptr dA, magma_int_t ldda, magmaFloat_ptr dB, magma_int_t lddb)
 
void magmablas_slacpy_conj (magma_int_t n, magmaFloat_ptr dA1, magma_int_t lda1, magmaFloat_ptr dA2, magma_int_t lda2)
 
void magmablas_slacpy_sym_in (magma_uplo_t uplo, magma_int_t m, magma_int_t n, magma_int_t *rows, magma_int_t *perm, magmaFloat_const_ptr dA, magma_int_t ldda, magmaFloat_ptr dB, magma_int_t lddb)
 
void magmablas_slacpy_sym_out (magma_uplo_t uplo, magma_int_t m, magma_int_t n, magma_int_t *rows, magma_int_t *perm, magmaFloat_const_ptr dA, magma_int_t ldda, magmaFloat_ptr dB, magma_int_t lddb)
 
float magmablas_slange (magma_norm_t norm, magma_int_t m, magma_int_t n, magmaFloat_const_ptr dA, magma_int_t ldda, magmaFloat_ptr dwork, magma_int_t lwork)
 
float magmablas_slansy (magma_norm_t norm, magma_uplo_t uplo, magma_int_t n, magmaFloat_const_ptr dA, magma_int_t ldda, magmaFloat_ptr dwork, magma_int_t lwork)
 
void magmablas_slascl (magma_type_t type, magma_int_t kl, magma_int_t ku, float cfrom, float cto, magma_int_t m, magma_int_t n, magmaFloat_ptr dA, magma_int_t ldda, magma_int_t *info)
 
void magmablas_slascl2 (magma_type_t type, magma_int_t m, magma_int_t n, magmaFloat_const_ptr dD, magmaFloat_ptr dA, magma_int_t ldda, magma_int_t *info)
 
void magmablas_slascl_2x2 (magma_type_t type, magma_int_t m, magmaFloat_const_ptr dW, magma_int_t lddw, magmaFloat_ptr dA, magma_int_t ldda, magma_int_t *info)
 
void magmablas_slascl_diag (magma_type_t type, magma_int_t m, magma_int_t n, magmaFloat_const_ptr dD, magma_int_t lddd, magmaFloat_ptr dA, magma_int_t ldda, magma_int_t *info)
 
void magmablas_slaset (magma_uplo_t uplo, magma_int_t m, magma_int_t n, float offdiag, float diag, magmaFloat_ptr dA, magma_int_t ldda)
 
void magmablas_slaset_band (magma_uplo_t uplo, magma_int_t m, magma_int_t n, magma_int_t k, float offdiag, float diag, magmaFloat_ptr dA, magma_int_t ldda)
 
void magmablas_slaswp (magma_int_t n, magmaFloat_ptr dAT, magma_int_t ldda, magma_int_t k1, magma_int_t k2, const magma_int_t *ipiv, magma_int_t inci)
 
void magmablas_slaswpx (magma_int_t n, magmaFloat_ptr dA, magma_int_t ldx, magma_int_t ldy, magma_int_t k1, magma_int_t k2, const magma_int_t *ipiv, magma_int_t inci)
 
void magmablas_slaswp2 (magma_int_t n, magmaFloat_ptr dAT, magma_int_t ldda, magma_int_t k1, magma_int_t k2, magmaInt_const_ptr d_ipiv, magma_int_t inci)
 
void magmablas_slaswp_sym (magma_int_t n, float *dA, magma_int_t lda, magma_int_t k1, magma_int_t k2, const magma_int_t *ipiv, magma_int_t inci)
 
void magmablas_snrm2_check (magma_int_t m, magma_int_t n, magmaFloat_ptr dA, magma_int_t ldda, magmaFloat_ptr dxnorm, magmaFloat_ptr dlsticc)
 
void magmablas_snrm2_adjust (magma_int_t k, magmaFloat_ptr dxnorm, magmaFloat_ptr dc)
 
void magmablas_snrm2_row_check_adjust (magma_int_t k, float tol, magmaFloat_ptr dxnorm, magmaFloat_ptr dxnorm2, magmaFloat_ptr dC, magma_int_t lddc, magmaFloat_ptr dlsticc)
 
void magmablas_snrm2_cols (magma_int_t m, magma_int_t n, magmaFloat_ptr dA, magma_int_t ldda, magmaFloat_ptr dxnorm)
 
void magmablas_sswapdblk (magma_int_t n, magma_int_t nb, magmaFloat_ptr dA, magma_int_t ldda, magma_int_t inca, magmaFloat_ptr dB, magma_int_t lddb, magma_int_t incb)
 
void magmablas_ssymmetrize (magma_uplo_t uplo, magma_int_t m, magmaFloat_ptr dA, magma_int_t ldda)
 
void magmablas_ssymmetrize_tiles (magma_uplo_t uplo, magma_int_t m, magmaFloat_ptr dA, magma_int_t ldda, magma_int_t ntile, magma_int_t mstride, magma_int_t nstride)
 
void magmablas_stranspose (magma_int_t m, magma_int_t n, magmaFloat_const_ptr dA, magma_int_t ldda, magmaFloat_ptr dAT, magma_int_t lddat)
 
void magmablas_stranspose_inplace (magma_int_t n, magmaFloat_ptr dA, magma_int_t ldda)
 

Detailed Description

Function Documentation

magma_int_t magma_snan_inf ( magma_uplo_t  uplo,
magma_int_t  m,
magma_int_t  n,
const float *  A,
magma_int_t  lda,
magma_int_t *  cnt_nan,
magma_int_t *  cnt_inf 
)

magma_snan_inf checks a matrix that is located on the CPU host for NAN (not-a-number) and INF (infinity) values.

NAN is created by 0/0 and similar. INF is created by x/0 and similar, where x != 0.

Parameters
[in]uplomagma_uplo_t Specifies what part of the matrix A to check.
  • = MagmaUpper: Upper triangular part of A
  • = MagmaLower: Lower triangular part of A
  • = MagmaFull: All of A
[in]mINTEGER The number of rows of the matrix A. M >= 0.
[in]nINTEGER The number of columns of the matrix A. N >= 0.
[in]AREAL array, dimension (LDA,N), on the CPU host. The M-by-N matrix to be printed.
[in]ldaINTEGER The leading dimension of the array A. LDA >= max(1,M).
[out]cnt_nanINTEGER* If non-NULL, on exit contains the number of NAN values in A.
[out]cnt_infINTEGER* If non-NULL, on exit contains the number of INF values in A.
Returns
  • >= 0: Returns number of NAN + number of INF values.
  • < 0: If it returns -i, the i-th argument had an illegal value, or another error occured, such as memory allocation failed.
magma_int_t magma_snan_inf_gpu ( magma_uplo_t  uplo,
magma_int_t  m,
magma_int_t  n,
magmaFloat_const_ptr  dA,
magma_int_t  ldda,
magma_int_t *  cnt_nan,
magma_int_t *  cnt_inf 
)

magma_snan_inf checks a matrix that is located on the CPU host for NAN (not-a-number) and INF (infinity) values.

NAN is created by 0/0 and similar. INF is created by x/0 and similar, where x != 0.

Parameters
[in]uplomagma_uplo_t Specifies what part of the matrix A to check.
  • = MagmaUpper: Upper triangular part of A
  • = MagmaLower: Lower triangular part of A
  • = MagmaFull: All of A
[in]mINTEGER The number of rows of the matrix A. M >= 0.
[in]nINTEGER The number of columns of the matrix A. N >= 0.
[in]dAREAL array, dimension (LDDA,N), on the GPU device. The M-by-N matrix to be printed.
[in]lddaINTEGER The leading dimension of the array A. LDDA >= max(1,M).
[out]cnt_nanINTEGER* If non-NULL, on exit contains the number of NAN values in A.
[out]cnt_infINTEGER* If non-NULL, on exit contains the number of INF values in A.
Returns
  • >= 0: Returns number of NAN + number of INF values.
  • < 0: If it returns -i, the i-th argument had an illegal value, or another error occured, such as memory allocation failed.
void magma_sprint ( magma_int_t  m,
magma_int_t  n,
const float *  A,
magma_int_t  lda 
)

magma_sprint prints a matrix that is located on the CPU host.

The output is intended to be Matlab compatible, to be useful in debugging.

Parameters
[in]mINTEGER The number of rows of the matrix A. M >= 0.
[in]nINTEGER The number of columns of the matrix A. N >= 0.
[in]AREAL array, dimension (LDA,N), on the CPU host. The M-by-N matrix to be printed.
[in]ldaINTEGER The leading dimension of the array A. LDA >= max(1,M).
void magma_sprint_gpu ( magma_int_t  m,
magma_int_t  n,
const float *  dA,
magma_int_t  ldda 
)

magma_sprint_gpu prints a matrix that is located on the GPU device.

Internally, it allocates CPU memory and copies the matrix to the CPU. The output is intended to be Matlab compatible, to be useful in debugging.

Parameters
[in]mINTEGER The number of rows of the matrix A. M >= 0.
[in]nINTEGER The number of columns of the matrix A. N >= 0.
[in]dAREAL array, dimension (LDDA,N), on the GPU device. The M-by-N matrix to be printed.
[in]lddaINTEGER The leading dimension of the array A. LDDA >= max(1,M).
void magmablas_sgeadd ( 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 
)
See also
magmablas_sgeadd_q
void magmablas_sgeadd2 ( magma_int_t  m,
magma_int_t  n,
float  alpha,
magmaFloat_const_ptr  dA,
magma_int_t  ldda,
float  beta,
magmaFloat_ptr  dB,
magma_int_t  lddb 
)
See also
magmablas_sgeadd2_q
void magmablas_slacpy ( magma_uplo_t  uplo,
magma_int_t  m,
magma_int_t  n,
magmaFloat_const_ptr  dA,
magma_int_t  ldda,
magmaFloat_ptr  dB,
magma_int_t  lddb 
)
See also
magmablas_slacpy_q
void magmablas_slacpy_conj ( magma_int_t  n,
magmaFloat_ptr  dA1,
magma_int_t  lda1,
magmaFloat_ptr  dA2,
magma_int_t  lda2 
)
See also
magmablas_slacpy_conj_q
void magmablas_slacpy_sym_in ( magma_uplo_t  uplo,
magma_int_t  m,
magma_int_t  n,
magma_int_t *  rows,
magma_int_t *  perm,
magmaFloat_const_ptr  dA,
magma_int_t  ldda,
magmaFloat_ptr  dB,
magma_int_t  lddb 
)
See also
magmablas_slacpy_q
void magmablas_slacpy_sym_out ( magma_uplo_t  uplo,
magma_int_t  m,
magma_int_t  n,
magma_int_t *  rows,
magma_int_t *  perm,
magmaFloat_const_ptr  dA,
magma_int_t  ldda,
magmaFloat_ptr  dB,
magma_int_t  lddb 
)
See also
magmablas_slacpy_q
void magmablas_slag2d ( magma_int_t  m,
magma_int_t  n,
magmaFloat_const_ptr  SA,
magma_int_t  ldsa,
magmaDouble_ptr  A,
magma_int_t  lda,
magma_int_t *  info 
)
See also
magmablas_slag2d_q
float magmablas_slange ( magma_norm_t  norm,
magma_int_t  m,
magma_int_t  n,
magmaFloat_const_ptr  dA,
magma_int_t  ldda,
magmaFloat_ptr  dwork,
magma_int_t  lwork 
)
See also
magmablas_slange_q
float magmablas_slansy ( magma_norm_t  norm,
magma_uplo_t  uplo,
magma_int_t  n,
magmaFloat_const_ptr  dA,
magma_int_t  ldda,
magmaFloat_ptr  dwork,
magma_int_t  lwork 
)
See also
magmablas_slansy_q
void magmablas_slascl ( magma_type_t  type,
magma_int_t  kl,
magma_int_t  ku,
float  cfrom,
float  cto,
magma_int_t  m,
magma_int_t  n,
magmaFloat_ptr  dA,
magma_int_t  ldda,
magma_int_t *  info 
)
See also
magmablas_slascl_q
void magmablas_slascl2 ( magma_type_t  type,
magma_int_t  m,
magma_int_t  n,
magmaFloat_const_ptr  dD,
magmaFloat_ptr  dA,
magma_int_t  ldda,
magma_int_t *  info 
)
See also
magmablas_slascl2_q
void magmablas_slascl_2x2 ( magma_type_t  type,
magma_int_t  m,
magmaFloat_const_ptr  dW,
magma_int_t  lddw,
magmaFloat_ptr  dA,
magma_int_t  ldda,
magma_int_t *  info 
)
See also
magmablas_slascl2_q
void magmablas_slascl_diag ( magma_type_t  type,
magma_int_t  m,
magma_int_t  n,
magmaFloat_const_ptr  dD,
magma_int_t  lddd,
magmaFloat_ptr  dA,
magma_int_t  ldda,
magma_int_t *  info 
)
See also
magmablas_slascl_diag_q
void magmablas_slaset ( magma_uplo_t  uplo,
magma_int_t  m,
magma_int_t  n,
float  offdiag,
float  diag,
magmaFloat_ptr  dA,
magma_int_t  ldda 
)
See also
magmablas_slaset_q
void magmablas_slaset_band ( magma_uplo_t  uplo,
magma_int_t  m,
magma_int_t  n,
magma_int_t  k,
float  offdiag,
float  diag,
magmaFloat_ptr  dA,
magma_int_t  ldda 
)
See also
magmablas_slaset_band_q
void magmablas_slaswp ( magma_int_t  n,
magmaFloat_ptr  dAT,
magma_int_t  ldda,
magma_int_t  k1,
magma_int_t  k2,
const magma_int_t *  ipiv,
magma_int_t  inci 
)
See also
magmablas_slaswp_q
void magmablas_slaswp2 ( magma_int_t  n,
magmaFloat_ptr  dAT,
magma_int_t  ldda,
magma_int_t  k1,
magma_int_t  k2,
magmaInt_const_ptr  d_ipiv,
magma_int_t  inci 
)
See also
magmablas_slaswp2_q
void magmablas_slaswp_sym ( magma_int_t  n,
float *  dA,
magma_int_t  lda,
magma_int_t  k1,
magma_int_t  k2,
const magma_int_t *  ipiv,
magma_int_t  inci 
)
See also
magmablas_slaswpx_q
void magmablas_slaswpx ( magma_int_t  n,
magmaFloat_ptr  dA,
magma_int_t  ldx,
magma_int_t  ldy,
magma_int_t  k1,
magma_int_t  k2,
const magma_int_t *  ipiv,
magma_int_t  inci 
)
See also
magmablas_slaswpx_q
void magmablas_snrm2_adjust ( magma_int_t  k,
magmaFloat_ptr  dxnorm,
magmaFloat_ptr  dc 
)
See also
magmablas_snrm2_adjust_q
void magmablas_snrm2_check ( magma_int_t  m,
magma_int_t  n,
magmaFloat_ptr  dA,
magma_int_t  ldda,
magmaFloat_ptr  dxnorm,
magmaFloat_ptr  dlsticc 
)
See also
magmablas_snrm2_check_q
void magmablas_snrm2_cols ( magma_int_t  m,
magma_int_t  n,
magmaFloat_ptr  dA,
magma_int_t  ldda,
magmaFloat_ptr  dxnorm 
)
See also
magmablas_snrm2_cols_q
void magmablas_snrm2_row_check_adjust ( magma_int_t  k,
float  tol,
magmaFloat_ptr  dxnorm,
magmaFloat_ptr  dxnorm2,
magmaFloat_ptr  dC,
magma_int_t  lddc,
magmaFloat_ptr  dlsticc 
)
See also
magmablas_snrm2_row_check_adjust_q
void magmablas_sprbt ( magma_int_t  n,
float *  dA,
magma_int_t  ldda,
float *  du,
float *  dv 
)
See also
magmablas_sprbt_q
void magmablas_sprbt_mtv ( magma_int_t  n,
float *  du,
float *  db 
)
See also
magmablas_sprbt_mtv_q
void magmablas_sprbt_mv ( magma_int_t  n,
float *  dv,
float *  db 
)
See also
magmablas_sprbt_mtv_q
void magmablas_sswapdblk ( magma_int_t  n,
magma_int_t  nb,
magmaFloat_ptr  dA,
magma_int_t  ldda,
magma_int_t  inca,
magmaFloat_ptr  dB,
magma_int_t  lddb,
magma_int_t  incb 
)
See also
magmablas_sswapdblk_q
void magmablas_ssymmetrize ( magma_uplo_t  uplo,
magma_int_t  m,
magmaFloat_ptr  dA,
magma_int_t  ldda 
)
See also
magmablas_ssymmetrize_q
void magmablas_ssymmetrize_tiles ( magma_uplo_t  uplo,
magma_int_t  m,
magmaFloat_ptr  dA,
magma_int_t  ldda,
magma_int_t  ntile,
magma_int_t  mstride,
magma_int_t  nstride 
)
See also
magmablas_ssymmetrize_tiles_q
void magmablas_stranspose ( magma_int_t  m,
magma_int_t  n,
magmaFloat_const_ptr  dA,
magma_int_t  ldda,
magmaFloat_ptr  dAT,
magma_int_t  lddat 
)
See also
magmablas_stranspose_q
void magmablas_stranspose_inplace ( magma_int_t  n,
magmaFloat_ptr  dA,
magma_int_t  ldda 
)
See also
magmablas_stranspose_inplace_q