#4753: [with patch, needs review] make sparse * sparse = dense mod p like 50
frickin' times faster.
----------------------------+-----------------------------------------------
Reporter: was | Owner: was
Type: defect | Status: new
Priority: major | Milestone: sage-3.2.2
Component: linear algebra | Resolution:
Keywords: |
----------------------------+-----------------------------------------------
Comment (by mhansen):
One issue is that in the patch, it should actually be
{{{
sage: type(c)
<type 'sage.matrix.matrix_modn_dense.Matrix_modn_dense'>
}}}
Also, I'm curious as to where the big speedup comes from? For example,
{{{
sage: %time a*a
CPU times: user 3.13 s, sys: 0.00 s, total: 3.13 s
Wall time: 3.25 s
100 x 100 sparse matrix over Finite Field of size 10007
sage: %time a._matrix_times_matrix_dense(a)
CPU times: user 0.16 s, sys: 0.00 s, total: 0.16 s
Wall time: 0.17 s
100 x 100 dense matrix over Finite Field of size 10007
}}}
Is it because you have a faster, more specialized underlying data
structure? Wouldn't it make more sense to add an optimized _mul_ method
to matrix_modn_sparse and then have it do a normal (naive) conversion?
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/4753#comment:3>
Sage <http://sagemath.org/>
Sage - Open Source Mathematical Software: Building the Car Instead of
Reinventing the Wheel
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---