#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.

Reply via email to