#8096: Speed up parent creation for multiplication of square matrices
---------------------------------------+------------------------------------
Reporter: boothby | Owner: boothby
Type: enhancement | Status: needs_work
Priority: minor | Milestone:
Component: linear algebra | Keywords:
Work_issues: various doc test errors | Upstream: N/A
Reviewer: | Author: boothby, robertwb
Merged: | Dependencies:
---------------------------------------+------------------------------------
Comment(by SimonKing):
I think it is worth while to revive that ticket!
There has been some work done in the past, e.g., on #10763 (already
merged) and #11589. I therefore suggest to start with determining the
status quo (performance wise).
The following is with sage-4.7.rc2 (which contains #10763) and #11589. I
provide the timings with sage-4.6.2 in square brackets:
{{{
sage: F = GF(3)
sage: A = random_matrix(F,3)
sage: B = random_matrix(F,3)
sage: %timeit C = A*B
625 loops, best of 3: 36.6 µs per loop
[625 loops, best of 3: 54.6 µs per loop]
sage: A = random_matrix(F,2000)
sage: B = random_matrix(F,2000)
sage: %timeit C = A*B
5 loops, best of 3: 8.36 s per loop
[5 loops, best of 3: 8.27 s per loop]
}}}
So, part of the issue with small matrices is resolved. The second patch
[attachment:8096-new_matrix.patch] is actually obsoleted by #10763 and
#11589, and the first patch needs to be rebased.
However, large matrices are still not nice. We have seen that linbox
provides a much faster multiplication. Wouldn't it be a valid approach to
use linbox more often? Perhaps make it the default over finite fields?
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/8096#comment:15>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.