Hi everybody,

it's the last day of Sage Days 32 and I push Burcin's and Clément's patch far 
enough to have all doctests pass on sage.math, cf.

    http://trac.sagemath.org/sage_trac/ticket/4260

With respect to performance the difference is like night and day:

== Night (without #4260)==

sage: A = random_matrix(GF(previous_prime(2^23)),1000,1000)
sage: B = random_matrix(GF(previous_prime(2^23)),1000,1000)
sage: %time A*B
CPU times: user 326.12 s, sys: 1.27 s, total: 327.39 s
Wall time: 328.79 s
1000 x 1000 dense matrix over Finite Field of size 8388593

sage: %time A.echelonize()
CPU times: user 92.59 s, sys: 0.64 s, total: 93.23 s
Wall time: 93.67 s

== Day (with #4260) ==

sage: A = random_matrix(GF(previous_prime(2^23)),1000,1000)
sage: B = random_matrix(GF(previous_prime(2^23)),1000,1000)
sage: %time A*B
CPU times: user 0.26 s, sys: 0.02 s, total: 0.28 s
Wall time: 0.28 s
1000 x 1000 dense matrix over Finite Field of size 8388593

sage: %time A.echelonize()
CPU times: user 0.41 s, sys: 0.00 s, total: 0.41 s
Wall time: 0.42 s

Rob Beezer (sitting next to me :)) is currently looking at the patch, adding 
more doctests/documentation and stress testing the whole thing. It would be 
great if people could give #4260 a spin on different platforms to check 
whether it works for them. Especially 

- big endian machines to test whether pickling works 
- 32-bit machines and
- non-Linux machines

would be greatly appreciated. Also, people who care deeply about matrices over 
ZZ and QQ should give it a spin and check for performance regressions or 
improvements (because of multi-modular stuff) There shouldn't be any, but who 
knows.

Cheers,
Martin

PS: After SD32 I probably wont' have time to push this patch much further so 
if you care about switching from very slow to very very fast for operations 
with dense matrices mod n (n < 2^23) then feel free to take charge.

--
name: Martin Albrecht
_pgp: http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x8EF0DC99
_otr: 47F43D1A 5D68C36F 468BAEBA 640E8856 D7951CCF
_www: http://martinralbrecht.wordpress.com/
_jab: martinralbre...@jabber.ccc.de

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to