#15104: Special case modn_dense matrix operations to improve performance
-------------------------------------+-------------------------------------
Reporter: nbruin | Owner:
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-6.2
Component: linear algebra | Resolution:
Keywords: | Merged in:
Authors: Nils Bruin | Reviewers:
Report Upstream: N/A | Work issues:
Branch: | Commit:
u/tscrim/ticket/15104 | b2d2f1baecf561520bbb4458d4856609546dbfe1
Dependencies: | Stopgaps:
-------------------------------------+-------------------------------------
Changes (by tscrim):
* status: needs_review => needs_work
* commit: => b2d2f1baecf561520bbb4458d4856609546dbfe1
* branch: => u/tscrim/ticket/15104
Comment:
Here's the git version based on 6.1, and I've made a few docstring
touchups. However this currently leads to a regression. Here are my
timings:
{{{
sage: M=matrix(GF(5),6,6,range(36))
sage: %timeit M.right_kernel_matrix(basis='computed')
1000 loops, best of 3: 536 us per loop
sage: %timeit M.right_kernel_matrix(basis='pivot')
1000 loops, best of 3: 556 us per loop
sage: %timeit M.transpose()
10000 loops, best of 3: 19.8 us per loop
sage: %timeit M.stack(M)
10000 loops, best of 3: 165 us per loop
sage: %timeit M.submatrix(1,1)
10000 loops, best of 3: 38.3 us per loop
}}}
Before:
{{{
sage: M=matrix(GF(5),6,6,range(36))
sage: %timeit M.right_kernel_matrix(basis='computed')
1000 loops, best of 3: 250 us per loop
sage: %timeit M.right_kernel_matrix(basis='pivot')
10000 loops, best of 3: 114 us per loop
sage: %timeit M.transpose()
100000 loops, best of 3: 14 us per loop
sage: %timeit M.stack(M)
10000 loops, best of 3: 51.2 us per loop
sage: %timeit M.submatrix(1,1)
10000 loops, best of 3: 37.5 us per loop
}}}
----
New commits:
||[http://git.sagemath.org/sage.git/commit/?id=a84c80262dbca2256fe452fc7f8c8f9bbae87768
a84c802]||{{{Various optimizations for modn_dense matrices (faster
transpose etc.)}}}||
||[http://git.sagemath.org/sage.git/commit/?id=b2d2f1baecf561520bbb4458d4856609546dbfe1
b2d2f1b]||{{{Some reviewer docstring tweaks.}}}||
--
Ticket URL: <http://trac.sagemath.org/ticket/15104#comment:5>
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 unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/groups/opt_out.