mul_syrk.hpp (armadillo-10.8.2.tar.xz) | : | mul_syrk.hpp (armadillo-11.0.0.tar.xz) | ||
---|---|---|---|---|
skipping to change at line 280 | skipping to change at line 280 | |||
template<typename eT, typename TA> | template<typename eT, typename TA> | |||
inline | inline | |||
static | static | |||
void | void | |||
apply_blas_type( Mat<eT>& C, const TA& A, const eT alpha = eT(1), const eT bet a = eT(0) ) | apply_blas_type( Mat<eT>& C, const TA& A, const eT alpha = eT(1), const eT bet a = eT(0) ) | |||
{ | { | |||
arma_extra_debug_sigprint(); | arma_extra_debug_sigprint(); | |||
if(A.is_vec()) | if(A.is_vec()) | |||
{ | { | |||
// work around poor handling of vectors by syrk() in ATLAS 3.8.4 and stand ard BLAS | // work around poor handling of vectors by syrk() in standard BLAS | |||
syrk_vec<do_trans_A, use_alpha, use_beta>::apply(C,A,alpha,beta); | syrk_vec<do_trans_A, use_alpha, use_beta>::apply(C,A,alpha,beta); | |||
return; | return; | |||
} | } | |||
const uword threshold = (is_cx<eT>::yes ? 16u : 48u); | const uword threshold = (is_cx<eT>::yes ? 16u : 48u); | |||
if( A.n_elem <= threshold ) | if( A.n_elem <= threshold ) | |||
{ | { | |||
skipping to change at line 312 | skipping to change at line 312 | |||
syrk<do_trans_A, use_alpha, false>::apply_blas_type(D,A,alpha); | syrk<do_trans_A, use_alpha, false>::apply_blas_type(D,A,alpha); | |||
// NOTE: assuming beta=1; this is okay for now, as currently glue_time s only uses beta=1 | // NOTE: assuming beta=1; this is okay for now, as currently glue_time s only uses beta=1 | |||
arrayops::inplace_plus(C.memptr(), D.memptr(), C.n_elem); | arrayops::inplace_plus(C.memptr(), D.memptr(), C.n_elem); | |||
return; | return; | |||
} | } | |||
atlas::cblas_syrk<eT> | atlas::cblas_syrk<eT> | |||
( | ( | |||
atlas::CblasColMajor, | atlas_CblasColMajor, | |||
atlas::CblasUpper, | atlas_CblasUpper, | |||
(do_trans_A) ? atlas::CblasTrans : atlas::CblasNoTrans, | (do_trans_A) ? atlas_CblasTrans : atlas_CblasNoTrans, | |||
C.n_cols, | C.n_cols, | |||
(do_trans_A) ? A.n_rows : A.n_cols, | (do_trans_A) ? A.n_rows : A.n_cols, | |||
(use_alpha) ? alpha : eT(1), | (use_alpha) ? alpha : eT(1), | |||
A.mem, | A.mem, | |||
(do_trans_A) ? A.n_rows : C.n_cols, | (do_trans_A) ? A.n_rows : C.n_cols, | |||
(use_beta) ? beta : eT(0), | (use_beta) ? beta : eT(0), | |||
C.memptr(), | C.memptr(), | |||
C.n_cols | C.n_cols | |||
); | ); | |||
End of changes. 2 change blocks. | ||||
4 lines changed or deleted | 4 lines changed or added |