#14159: Don't install callbacks on values of TripleDict, MonoDict
------------------------------+---------------------------------------------
       Reporter:  nbruin      |         Owner:  tbd         
           Type:  defect      |        Status:  needs_review
       Priority:  major       |     Milestone:  sage-5.8    
      Component:  memleak     |    Resolution:              
       Keywords:              |   Work issues:              
Report Upstream:  N/A         |     Reviewers:  Nils Bruin  
        Authors:  Simon King  |     Merged in:              
   Dependencies:  #13387      |      Stopgaps:              
------------------------------+---------------------------------------------

Comment (by SimonKing):

 Note that in the most recent run, the startup time plugin did actually
 ''not'' complain!

 Nevertheless, I think we should care about speed. I see two approaches to
 improve the startup time, the second of them would improve the general
 performance.

 1. I found that a dozen of homsets are created ''and'' deleted during
 startup. One should find where they are created, and see whether their
 creation is really needed or whether one can avoid that the get deleted.
 2. `MonoDict` and `TripleDict` have fast cdef set and get methods, but
 they are not always used. At least in Cython modules, we should try to
 find all locations which could benefit from replacing `T[a,b,c]` by
 `T.get(a,b,c)`. And even for Python modules, I think it would make sense
 to turn the cdef get and set methods into cpdef get and set methods: I
 guess it would still be faster then `T[a,b,c]`, because one avoids the
 test
    {{{
         try:
             k1, k2, k3 = k
         except (TypeError,ValueError):
             raise KeyError, k
    }}}

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/14159#comment:38>
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?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to