Syrk¶
Symmetric rank-K update: updates
\(C := \alpha A A^T + \beta C\), or
\(C := \alpha A^T A + \beta C\), depending upon whether orientation is
set to NORMAL
or TRANSPOSE
, respectively. Only the triangle of \(C\)
specified by the uplo parameter is modified.
Please see SetLocalTrrkBlocksize<T>()
and LocalTrrkBlocksize<T>()
in the Tuning parameters
section for information on tuning the distributed Syrk()
.
Note
For the best performance, A and C should both be in [MC,MR] distributions.
C++ API¶
-
void
Syrk
(UpperOrLower uplo, Orientation orientation, T alpha, const Matrix<T> &A, T beta, Matrix<T> &C, bool conjugate = false)¶
-
void
Syrk
(UpperOrLower uplo, Orientation orientation, T alpha, const AbstractDistMatrix<T> &A, T beta, AbstractDistMatrix<T> &C, bool conjugate = false)¶
C API¶
-
ElError
ElSyrk_s
(ElUpperOrLower uplo, ElOrientation orientation, float alpha, ElConstMatrix_s A, float beta, ElMatrix_s C)¶
-
ElError
ElSyrk_d
(ElUpperOrLower uplo, ElOrientation orientation, double alpha, ElConstMatrix_d A, double beta, ElMatrix_d C)¶
-
ElError
ElSyrk_c
(ElUpperOrLower uplo, ElOrientation orientation, complex_float alpha, ElConstMatrix_c A, complex_float beta, ElMatrix_c C)¶
-
ElError
ElSyrk_z
(ElUpperOrLower uplo, ElOrientation orientation, complex_double alpha, ElConstMatrix_z A, complex_double beta, ElMatrix_z C)¶
-
ElError
ElSyrkDist_s
(ElUpperOrLower uplo, ElOrientation orientation, float alpha, ElConstDistMatrix_s A, float beta, ElDistMatrix_s C)¶
-
ElError
ElSyrkDist_d
(ElUpperOrLower uplo, ElOrientation orientation, double alpha, ElConstDistMatrix_d A, double beta, ElDistMatrix_d C)¶
-
ElError
ElSyrkDist_c
(ElUpperOrLower uplo, ElOrientation orientation, complex_float alpha, ElConstDistMatrix_c A, complex_float beta, ElDistMatrix_c C)¶
-
ElError
ElSyrkDist_z
(ElUpperOrLower uplo, ElOrientation orientation, complex_double alpha, ElConstDistMatrix_z A, complex_double beta, ElDistMatrix_z C)¶