From b466c266a0081685d27855684f22d7ccc5fb10ea Mon Sep 17 00:00:00 2001 From: Gael Guennebaud Date: Wed, 23 Jul 2008 17:30:00 +0000 Subject: * Fix some complex alignment issues in the cache friendly matrix-vector products. * Minor update of the cores of the Cholesky algorithms to make them more friendly wrt to matrix-vector products => speedup x5 ! --- bench/benchCholesky.cpp | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'bench/benchCholesky.cpp') diff --git a/bench/benchCholesky.cpp b/bench/benchCholesky.cpp index 88b52eb4e..dd0c7f83b 100644 --- a/bench/benchCholesky.cpp +++ b/bench/benchCholesky.cpp @@ -34,7 +34,7 @@ __attribute__ ((noinline)) void benchCholesky(const MatrixType& m) typedef typename MatrixType::Scalar Scalar; typedef Matrix SquareMatrixType; - MatrixType a = MatrixType::random(rows,cols); + MatrixType a = MatrixType::Random(rows,cols); SquareMatrixType covMat = a * a.adjoint(); BenchTimer timerNoSqrt, timerSqrt; @@ -108,7 +108,7 @@ __attribute__ ((noinline)) void benchCholesky(const MatrixType& m) int main(int argc, char* argv[]) { - const int dynsizes[] = {4,6,8,12,16,24,32,64,128,256,512,0}; + const int dynsizes[] = {/*4,6,8,12,16,24,32,49,64,67,128,129,130,131,132,*/256,257,258,259,260,512,0}; std::cout << "size no sqrt standard"; #ifdef BENCH_GSL std::cout << " GSL (standard + double + ATLAS) "; @@ -118,15 +118,15 @@ int main(int argc, char* argv[]) for (uint i=0; dynsizes[i]>0; ++i) benchCholesky(Matrix(dynsizes[i],dynsizes[i])); - benchCholesky(Matrix()); - benchCholesky(Matrix()); - benchCholesky(Matrix()); - benchCholesky(Matrix()); - benchCholesky(Matrix()); - benchCholesky(Matrix()); - benchCholesky(Matrix()); - benchCholesky(Matrix()); - benchCholesky(Matrix()); +// benchCholesky(Matrix()); +// benchCholesky(Matrix()); +// benchCholesky(Matrix()); +// benchCholesky(Matrix()); +// benchCholesky(Matrix()); +// benchCholesky(Matrix()); +// benchCholesky(Matrix()); +// benchCholesky(Matrix()); +// benchCholesky(Matrix()); return 0; } -- cgit v1.2.3