#19178: Make Coxeter3 a new-style spkg
-------------------------------------+-------------------------------------
       Reporter:  tscrim             |        Owner:  tscrim
           Type:  enhancement        |       Status:  needs_review
       Priority:  major              |    Milestone:  sage-6.9
      Component:  packages:          |   Resolution:
  optional                           |    Merged in:
       Keywords:                     |    Reviewers:
        Authors:  Travis Scrimshaw   |  Work issues:
Report Upstream:  N/A                |       Commit:
         Branch:                     |  5bdccbfb4a9ad50de7e467a9f3b5c7eb2a4f3532
  u/tscrim/coxeter3_new_style_spkg-19178|     Stopgaps:
   Dependencies:                     |
-------------------------------------+-------------------------------------

Comment (by tscrim):

 I couldn't resist going in and making some other improvements to the code:
 {{{
 sage: C = CoxeterGroup(['B', 5], implementation='coxeter3')
 sage: %timeit L = [C.kazhdan_lusztig_polynomial(C.one(),w) for w in C]
 1 loops, best of 3: 387 ms per loop
 sage: %timeit L = [C.kazhdan_lusztig_polynomial(C.one(),w,False) for w in
 C]
 1 loops, best of 3: 467 ms per loop
 }}}
 versus previously
 {{{
 sage: %timeit L = [C.kazhdan_lusztig_polynomial(C.one(),w) for w in C]
 1 loops, best of 3: 772 ms per loop
 sage: %timeit L = [C.kazhdan_lusztig_polynomial(C.one(),w,False) for w in
 C]
 1 loops, best of 3: 857 ms per loop
 }}}
 In summary, I got a ~2x speedup from not converting to a string as an
 intermediate object (but I'm probably taking advantage of recent upgrades
 in cython to do so). I also avoiding creating things in the fraction field
 for the non-constant coefficient KL polynomials. There were some other
 micro-optimizations and things I changed for better practices.

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