#20174: Avoid recomputing vacancy numbers for rigged configurations
-------------------------------------+-------------------------------------
       Reporter:  tscrim             |        Owner:  sage-combinat
           Type:  enhancement        |       Status:  needs_review
       Priority:  major              |    Milestone:  sage-7.1
      Component:  combinatorics      |   Resolution:
       Keywords:  rigged             |    Merged in:
  configurations                     |    Reviewers:
        Authors:  Travis Scrimshaw   |  Work issues:
Report Upstream:  N/A                |       Commit:
         Branch:                     |  8d2decd5b0d1bfb2be47af7da2d27e789842dfbc
  public/rigged_configurations/speedup_crystal_ops-20174|     Stopgaps:
   Dependencies:                     |
-------------------------------------+-------------------------------------
Changes (by tscrim):

 * status:  new => needs_review
 * commit:   => 8d2decd5b0d1bfb2be47af7da2d27e789842dfbc
 * branch:   => public/rigged_configurations/speedup_crystal_ops-20174


Comment:

 With branch:
 {{{
 sage: RC = RiggedConfigurations(['B',4,1], [[2,1],[3,1]])
 sage: %time len(list(RC))
 CPU times: user 3.33 s, sys: 19.6 ms, total: 3.35 s
 Wall time: 3.33 s
 3441
 sage: RC = RiggedConfigurations(['A',4,1], [[2,1],[3,1]])
 sage: %time len(list(RC))
 CPU times: user 41.9 ms, sys: 4.27 ms, total: 46.1 ms
 Wall time: 38.8 ms
 100
 sage: RC = RiggedConfigurations(['D',6,1], [[2,1],[3,1]])
 sage: %time len(list(RC))
 CPU times: user 7.17 s, sys: 36 ms, total: 7.21 s
 Wall time: 7.19 s
 15544
 }}}
 vs old version
 {{{
 sage: RC = RiggedConfigurations(['B',4,1], [[2,1],[3,1]])
 sage: %time len(list(RC))
 CPU times: user 12.5 s, sys: 45 ms, total: 12.5 s
 Wall time: 12.5 s
 3441
 sage: RC = RiggedConfigurations(['A',4,1], [[2,1],[3,1]])
 sage: %time len(list(RC))
 CPU times: user 97.5 ms, sys: 4.16 ms, total: 102 ms
 Wall time: 88.4 ms
 100
 sage: RC = RiggedConfigurations(['D',6,1], [[2,1],[3,1]])
 sage: %time len(list(RC))
 CPU times: user 26.5 s, sys: 52.1 ms, total: 26.6 s
 Wall time: 26.5 s
 15544
 }}}

 Slightly annoying how simple changes these were and resulting in such a
 large speed gain...
 ----
 New commits:
 
||[http://git.sagemath.org/sage.git/commit/?id=8d2decd5b0d1bfb2be47af7da2d27e789842dfbc
 8d2decd]||{{{Avoid needlessly recomputing the vacancy numbers.}}}||

--
Ticket URL: <http://trac.sagemath.org/ticket/20174#comment:1>
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 https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to