SLATE 2024.05.31
Software for Linear Algebra Targeting Exascale
|
Functions | |
template<Target target = Target::HostTask, typename scalar_t > | |
void | slate::internal::herk (blas::real_type< scalar_t > alpha, Matrix< scalar_t > &&A, blas::real_type< scalar_t > beta, HermitianMatrix< scalar_t > &&C, int priority, int queue_index, Layout layout) |
Hermitian rank-k update of single block column (i.e., k = nb). | |
template<typename scalar_t > | |
void | slate::internal::herk (internal::TargetType< Target::HostTask >, blas::real_type< scalar_t > alpha, Matrix< scalar_t > &A, blas::real_type< scalar_t > beta, HermitianMatrix< scalar_t > &C, int priority, int queue_index, Layout layout) |
Hermitian rank-k update of single block column (i.e., k = nb). | |
template<typename scalar_t > | |
void | slate::internal::herk (internal::TargetType< Target::HostNest >, blas::real_type< scalar_t > alpha, Matrix< scalar_t > &A, blas::real_type< scalar_t > beta, HermitianMatrix< scalar_t > &C, int priority, int queue_index, Layout layout) |
Hermitian rank-k update of single block column (i.e., k = nb). | |
template<typename scalar_t > | |
void | slate::internal::herk (internal::TargetType< Target::HostBatch >, blas::real_type< scalar_t > alpha, Matrix< scalar_t > &A, blas::real_type< scalar_t > beta, HermitianMatrix< scalar_t > &C, int priority, int queue_index, Layout layout) |
Hermitian rank-k update of single block column (i.e., k = nb). | |
template<typename scalar_t > | |
void | slate::internal::herk (internal::TargetType< Target::Devices >, blas::real_type< scalar_t > alpha, Matrix< scalar_t > &A, blas::real_type< scalar_t > beta, HermitianMatrix< scalar_t > &C, int priority, int queue_index, Layout layout) |
Hermitian rank-k update of single block column (i.e., k = nb). | |
void slate::internal::herk | ( | blas::real_type< scalar_t > | alpha, |
Matrix< scalar_t > && | A, | ||
blas::real_type< scalar_t > | beta, | ||
HermitianMatrix< scalar_t > && | C, | ||
int | priority, | ||
int | queue_index, | ||
Layout | layout | ||
) |
Hermitian rank-k update of single block column (i.e., k = nb).
Dispatches to target implementations. C is Lower, NoTrans or Upper, Trans/ConjTrans. In complex case, A and C cannot be Trans.
void slate::internal::herk | ( | internal::TargetType< Target::Devices > | , |
blas::real_type< scalar_t > | alpha, | ||
Matrix< scalar_t > & | A, | ||
blas::real_type< scalar_t > | beta, | ||
HermitianMatrix< scalar_t > & | C, | ||
int | priority, | ||
int | queue_index, | ||
Layout | layout | ||
) |
Hermitian rank-k update of single block column (i.e., k = nb).
GPU device batched cuBLAS implementation. Assumes A is NoTrans or ConjTrans; C is Lower, NoTrans or Upper, ConjTrans.
void slate::internal::herk | ( | internal::TargetType< Target::HostBatch > | , |
blas::real_type< scalar_t > | alpha, | ||
Matrix< scalar_t > & | A, | ||
blas::real_type< scalar_t > | beta, | ||
HermitianMatrix< scalar_t > & | C, | ||
int | priority, | ||
int | queue_index, | ||
Layout | layout | ||
) |
Hermitian rank-k update of single block column (i.e., k = nb).
Host batched implementation. Assumes A is NoTrans or ConjTrans; C is Lower, NoTrans or Upper, ConjTrans.
void slate::internal::herk | ( | internal::TargetType< Target::HostNest > | , |
blas::real_type< scalar_t > | alpha, | ||
Matrix< scalar_t > & | A, | ||
blas::real_type< scalar_t > | beta, | ||
HermitianMatrix< scalar_t > & | C, | ||
int | priority, | ||
int | queue_index, | ||
Layout | layout | ||
) |
Hermitian rank-k update of single block column (i.e., k = nb).
Host nested OpenMP implementation. Assumes A is NoTrans or ConjTrans; C is Lower, NoTrans or Upper, ConjTrans.
void slate::internal::herk | ( | internal::TargetType< Target::HostTask > | , |
blas::real_type< scalar_t > | alpha, | ||
Matrix< scalar_t > & | A, | ||
blas::real_type< scalar_t > | beta, | ||
HermitianMatrix< scalar_t > & | C, | ||
int | priority, | ||
int | queue_index, | ||
Layout | layout | ||
) |
Hermitian rank-k update of single block column (i.e., k = nb).
Host OpenMP task implementation. Assumes A is NoTrans or ConjTrans; C is Lower, NoTrans or Upper, ConjTrans.