various BTL updates (disable Cholesky for MTL, add new plot settings,

etc)
This commit is contained in:
Gael Guennebaud 2009-03-09 23:28:46 +00:00
parent 8aa5aa269a
commit caa1ef7515
6 changed files with 26 additions and 21 deletions

View File

@ -101,7 +101,7 @@ public :
static inline std::string name( void )
{
return "trisolve_matrix_"+Interface::name();
return "matrix_trisolve_"+Interface::name();
}
double nb_op_base( void ){

View File

@ -6,9 +6,10 @@ axpy ; "{/*1.5 Y += alpha X}" ; "vector size" ; 5:1000000
matrix_matrix ; "{/*1.5 matrix matrix product}" ; "matrix size" ; 4:2048
matrix_vector ; "{/*1.5 matrix vector product}" ; "matrix size" ; 4:2048
trisolve ; "{/*1.5 triangular solver (X = inv(L) X)}" ; "size" ; 4:2048
matrix_trisolve ; "{/*1.5 matrix triangular solver (M = inv(L) M)}" ; "size" ; 4:2048
cholesky ; "{/*1.5 Cholesky decomposition}" ; "matrix size" ; 4:2048
lu_decomp ; "{/*1.5 LU decomposition}" ; "matrix size" ; 4:2048
tridiagonalization ; "{/*1.5 Tridiagonalization}" ; "matrix size" ; 4:2048
hessenberg ; "{/*1.5 Hessenberg decomposition}" ; "matrix size" ; 4:2048
symv ; "{/*1.5 symmetric matrix vector product}" ; "matrix size" ; 4:2048
syr2 ; "{/*1.5 symmetric rank-2 update (A += u^T v + u v^T)}" ; "matrix size" ; 4:2048
hessenberg ; "{/*1.5 Hessenberg decomposition}" ; "matrix size" ; 4:2048
symv ; "{/*1.5 symmetric matrix vector product}" ; "matrix size" ; 4:2048
syr2 ; "{/*1.5 symmetric rank-2 update (A += u^T v + u v^T)}" ; "matrix size" ; 4:2048

View File

@ -39,6 +39,7 @@ 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 trisolve $1 11 100 300 1000 $mode $prefix
source mk_mean_script.sh matrix_trisolve $1 11 100 300 1000 $mode $prefix
source mk_mean_script.sh cholesky $1 11 100 300 1000 $mode $prefix
source mk_mean_script.sh lu_decomp $1 11 100 300 1000 $mode $prefix
source mk_mean_script.sh tridiagonalization $1 11 100 300 1000 $mode $prefix

View File

@ -1,11 +1,13 @@
eigen2 ; with lines lw 4 lt 1 lc rgbcolor "black"
eigen2_novec ; with lines lw 3 lt 1 lc rgbcolor "#999999"
INTEL_MKL ; with lines lw 3 lt 2 lc rgbcolor "#00b7ff"
ATLAS ; with lines lw 3 lt 1 lc rgbcolor "#52e657"
gmm ; with lines lw 3 lt 1 lc rgbcolor "#0000ff"
ublas ; with lines lw 3 lt 1 lc rgbcolor "#ff0000"
mtl4 ; with lines lw 3 lt 1 lc rgbcolor "#d18847"
blitz ; with lines lw 3 lt 1 lc rgbcolor "#ff00ff"
F77 ; with lines lw 3 lt 3 lc rgbcolor "#e6e64c"
GOTO ; with lines lw 3 lt 3 lc rgbcolor "#e6bd96"
C ; with lines lw 3 lt 3 lc rgbcolor "#e6bd96"
eigen2 ; with lines lw 4 lt 1 lc rgbcolor "black"
eigen2_novec ; with lines lw 2 lt 1 lc rgbcolor "#999999"
eigen2_nogccvec ; with lines lw 2 lt 2 lc rgbcolor "#991010"
INTEL_MKL ; with lines lw 3 lt 2 lc rgbcolor "#00b7ff"
ATLAS ; with lines lw 3 lt 1 lc rgbcolor "#52e657"
gmm ; with lines lw 3 lt 1 lc rgbcolor "#0000ff"
ublas ; with lines lw 3 lt 1 lc rgbcolor "#ff0000"
mtl4 ; with lines lw 3 lt 1 lc rgbcolor "#d18847"
blitz ; with lines lw 3 lt 1 lc rgbcolor "#ff00ff"
F77 ; with lines lw 3 lt 3 lc rgbcolor "#e6e64c"
GOTO ; with lines lw 3 lt 3 lc rgbcolor "#e6bd96"
C ; with lines lw 3 lt 3 lc rgbcolor "#e6bd96"
ACML ; with lines lw 2 lt 3 lc rgbcolor "#e6e64c"

View File

@ -37,7 +37,7 @@ int main()
// bench<Action_aat_product<mtl4_interface<REAL_TYPE> > >(MIN_MM,MAX_MM,NB_POINT);
bench<Action_trisolve<mtl4_interface<REAL_TYPE> > >(MIN_MM,MAX_MM,NB_POINT);
bench<Action_cholesky<mtl4_interface<REAL_TYPE> > >(MIN_MM,MAX_MM,NB_POINT);
// bench<Action_cholesky<mtl4_interface<REAL_TYPE> > >(MIN_MM,MAX_MM,NB_POINT);
// bench<Action_lu_decomp<mtl4_interface<REAL_TYPE> > >(MIN_MM,MAX_MM,NB_POINT);
return 0;

View File

@ -19,7 +19,8 @@
#define MTL4_INTERFACE_HH
#include <boost/numeric/mtl/mtl.hpp>
#include <boost/numeric/mtl/operation/cholesky.hpp>
#include <boost/numeric/mtl/utility/range_generator.hpp>
// #include <boost/numeric/mtl/operation/cholesky.hpp>
#include <vector>
using namespace mtl;
@ -115,10 +116,10 @@ public :
Y = a*X + b*Y;
}
static inline void cholesky(const gene_matrix & X, gene_matrix & C, int N){
C = X;
recursive_cholesky(C);
}
// static inline void cholesky(const gene_matrix & X, gene_matrix & C, int N){
// C = X;
// recursive_cholesky(C);
// }
// static inline void lu_decomp(const gene_matrix & X, gene_matrix & R, int N){
// R = X;