David Bateman wrote:
The gcd stuff might just be a timing error. The code used for the timing
in the sciview tests is pretty rough, using tic/toc. I've replaced this
in my version using cputime instead. and get the follow
cputime does not work with pthreads, so I have to use tic/toc.
Here is another example of recursion slowdown:
2.1.53:
tic; for n=1:1000; bm_x=sylvester_matrix(7) ; endfor ; toc
ans = 4.2025
2.1.54:
tic; for n=1:1000; bm_x=sylvester_matrix(7) ; endfor ; toc
ans = 11.574
(those are both stock releases no patches for SMP/pthreads etc...;
--enable-shared --disable-static ; -O3 -march=athlon-mp; AthlonMP x2)
So the only significant slow up I see is in the last test. Here is
another
interting set of tests
2.1.50
tic; x = []; for i=1:1e3; x = [x, i]; endfor; toc ans = 0.079843
tic; x=0; for i=1:1e3; x++; endfor; toc ans = 0.018920
I do not trust tic/toc numbers less then 0.1 sec. So I increased the
index:
2.1.53:
tic; x = []; for i=1:1e4; x = [x, i]; endfor; toc
ans = 3.2951
2.1.54:
tic; x = []; for i=1:1e4; x = [x, i]; endfor; toc
ans = 20.234
2.1.53:
tic; x=0; for i=1:1e4; x++; endfor; toc
ans = 0.024073
tic; x=0; for i=1:1e5; x++; endfor; toc
ans = 0.24130
tic; x=0; for i=1:1e6; x++; endfor; toc
ans = 2.3381
2.1.54:
tic; x=0; for i=1:1e4; x++; endfor; toc
ans = 0.028044
tic; x=0; for i=1:1e5; x++; endfor; toc
ans = 0.26263
tic; x=0; for i=1:1e6; x++; endfor; toc
ans = 2.6506
(I do not understand it, but my old records show that loops
were slower, it seems that something else in my system changed that
speeded it up.)
Regards
David
Sincerely,
Dmitri.