#16792: cached_function.clear_cache is inefficent
--------------------------+------------------------
       Reporter:  dkrenn  |        Owner:
           Type:  defect  |       Status:  new
       Priority:  major   |    Milestone:  sage-6.3
      Component:  misc    |   Resolution:
       Keywords:          |    Merged in:
        Authors:          |    Reviewers:
Report Upstream:  N/A     |  Work issues:
         Branch:          |       Commit:
   Dependencies:          |     Stopgaps:
--------------------------+------------------------

Comment (by nbruin):

 Your point is probably correct, but your code timing doesn't really
 corroborates it. Timeit, as used, it still repeating the command thrice.
 It's a mutating command, so the second time around, the original length of
 the dict doesn't come into play at all.
 {{{
 sage: %time E.clear()
 CPU times: user 11 ms, sys: 6 ms, total: 17 ms
 sage: %time noop.clear_cache()
 CPU times: user 59 ms, sys: 5 ms, total: 64 ms
 Wall time: 64 ms
 }}}
 probably gives a fairer picture. Your original numbers would have meant
 that `E.clear()` would have visited al 1000000 entries (they all have to
 be decreffed!) in less than 1 microsecond, meaning your computer would be
 performing more than 10^12^ operations per second. Terahertz performance
 is usually not so easily attained.

--
Ticket URL: <http://trac.sagemath.org/ticket/16792#comment:2>
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/d/optout.

Reply via email to