From 5cec86cb1e6ae190b3093049ebe4f5bc330c2f23 Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Thu, 7 Jun 2012 18:35:38 +0200 Subject: BTL: add missing TRMM plots, update Eigen's interface --- bench/btl/data/action_settings.txt | 1 + bench/btl/data/go_mean | 1 + bench/btl/libs/eigen3/eigen3_interface.hh | 6 +++--- 3 files changed, 5 insertions(+), 3 deletions(-) (limited to 'bench/btl') diff --git a/bench/btl/data/action_settings.txt b/bench/btl/data/action_settings.txt index da80f56a0..e32213e22 100644 --- a/bench/btl/data/action_settings.txt +++ b/bench/btl/data/action_settings.txt @@ -5,6 +5,7 @@ axpby ; "{/*1.5 Y = alpha X + beta Y}" ; "vector size" ; 5:1000000 axpy ; "{/*1.5 Y += alpha X}" ; "vector size" ; 5:1000000 matrix_matrix ; "{/*1.5 matrix matrix product}" ; "matrix size" ; 4:3000 matrix_vector ; "{/*1.5 matrix vector product}" ; "matrix size" ; 4:3000 +trmm ; "{/*1.5 triangular matrix matrix product}" ; "matrix size" ; 4:3000 trisolve_vector ; "{/*1.5 triangular solver - vector (X = inv(L) X)}" ; "size" ; 4:3000 trisolve_matrix ; "{/*1.5 triangular solver - matrix (M = inv(L) M)}" ; "size" ; 4:3000 cholesky ; "{/*1.5 Cholesky decomposition}" ; "matrix size" ; 4:3000 diff --git a/bench/btl/data/go_mean b/bench/btl/data/go_mean index 176c3c994..42338ca27 100755 --- a/bench/btl/data/go_mean +++ b/bench/btl/data/go_mean @@ -38,6 +38,7 @@ source mk_mean_script.sh atv $1 11 50 300 1000 $mode $prefix source mk_mean_script.sh matrix_matrix $1 11 100 300 1000 $mode $prefix source mk_mean_script.sh aat $1 11 100 300 1000 $mode $prefix # source mk_mean_script.sh ata $1 11 100 300 1000 $mode $prefix +source mk_mean_script.sh trmm $1 11 100 300 1000 $mode $prefix source mk_mean_script.sh trisolve_vector $1 11 100 300 1000 $mode $prefix source mk_mean_script.sh trisolve_matrix $1 11 100 300 1000 $mode $prefix source mk_mean_script.sh cholesky $1 11 100 300 1000 $mode $prefix diff --git a/bench/btl/libs/eigen3/eigen3_interface.hh b/bench/btl/libs/eigen3/eigen3_interface.hh index 2fca393e9..31bcc1f93 100644 --- a/bench/btl/libs/eigen3/eigen3_interface.hh +++ b/bench/btl/libs/eigen3/eigen3_interface.hh @@ -195,16 +195,16 @@ public : } static inline void trisolve_lower_matrix(const gene_matrix & L, const gene_matrix& B, gene_matrix& X, int N){ - X = L.template triangularView().solve(B); + X = L.template triangularView().solve(B); } static inline void trmm(const gene_matrix & L, const gene_matrix& B, gene_matrix& X, int N){ - X = L.template triangularView() * B; + X.noalias() = L.template triangularView() * B; } static inline void cholesky(const gene_matrix & X, gene_matrix & C, int N){ C = X; - internal::llt_inplace::blocked(C); + internal::llt_inplace::blocked(C); //C = X.llt().matrixL(); // C = X; // Cholesky::computeInPlace(C); -- cgit v1.2.3