#9562: Add M4RIE to Sage
-------------------------------------------------------------------------+--
   Reporter:  malb                                                       |      
    Owner:                 
       Type:  enhancement                                                |      
   Status:  needs_work     
   Priority:  major                                                      |      
Milestone:  sage-5.0       
  Component:  packages                                                   |      
 Keywords:  m4ri           
Work_issues:  Improve scalar multiplication; add docs to the references  |      
 Upstream:  N/A            
   Reviewer:  Paul Zimmermann, Simon King                                |      
   Author:  Martin Albrecht
     Merged:                                                             |   
Dependencies:  #11574         
-------------------------------------------------------------------------+--
Changes (by SimonKing):

  * work_issues:  => Improve scalar multiplication; add docs to the
                  references


Comment:

 I found one benchmark that you should improve:

 {{{
 sage: MS = MatrixSpace(GF(64,'a'),5000,5000)
 sage: K = MS.base_ring()
 sage: c = K.random_element()
 sage: %time A*c
 CPU times: user 1.33 s, sys: 0.02 s, total: 1.35 s
 Wall time: 1.35 s
 5000 x 5000 dense matrix over Finite Field in a of size 2^6
 sage: MS1 = MatrixSpace(GF(64,'a'),1,5000)
 sage: B = MS1.random_element()
 sage: %timeit B*c
 625 loops, best of 3: 291 µs per loop
 }}}

 The reason is that "A*c" relies on a slow generic implementation.

 I am sure that your library has a fast way to multiply a row respectively
 a matrix with a scalar. But you should overload `_lmul_` (please not
 `_rmul_`, according to the documentation), so that the user can benefit
 from it.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/9562#comment:71>
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.

Reply via email to