#5510: [with patch, needs work] update M4RI interface
----------------------------+-----------------------------------------------
Reporter: malb | Owner: malb
Type: enhancement | Status: new
Priority: major | Milestone: sage-4.0.1
Component: linear algebra | Keywords: m4ri, linear algebra
----------------------------+-----------------------------------------------
Comment(by jason):
The spkg looks great. Positive review for that.
The patch looks good to me as well. Here are some timings:
BEFORE:
{{{
sage: A = random_matrix(GF(2), 1000, 1000)
sage: timeit('B=A.copy(); B.rank()')
25 loops, best of 3: 8.42 ms per loop
sage: timeit('B=A.copy(); B.rank()')
25 loops, best of 3: 8.39 ms per loop
sage: A = matrix(GF(2),10, 0)
sage: timeit('B=A.copy(); B.rank()')
625 loops, best of 3: 24.5 µs per loop
sage: timeit('B=A.copy(); B.rank()')
625 loops, best of 3: 24.3 µs per loop
}}}
AFTER
{{{
sage: A = random_matrix(GF(2), 1000, 1000)
sage: timeit('B=A.copy(); B.rank()')
125 loops, best of 3: 6.05 ms per loop
sage: timeit('B=A.copy(); B.rank()')
125 loops, best of 3: 6.09 ms per loop
sage: A = matrix(GF(2),10, 0)
sage: timeit('B=A.copy(); B.rank()')
625 loops, best of 3: 38.7 µs per loop
sage: timeit('B=A.copy(); B.rank()')
625 loops, best of 3: 40.1 µs per loop
}}}
Note that the rank of a zero matrix is significantly longer (i.e., twice
as long). Malb, can you comment?
If malb addresses this performance regression sufficiently, then this is a
positive review as far as I'm concerned for both the spkg and the patch.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/5510#comment:2>
Sage <http://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
-~----------~----~----~----~------~----~------~--~---