#15549: Streamline construction of PARI objects
-------------------------------------+-------------------------------------
       Reporter:  pbruin             |        Owner:
           Type:  enhancement        |       Status:  needs_review
       Priority:  minor              |    Milestone:  sage-6.1
      Component:  interfaces         |   Resolution:
       Keywords:  pari performance   |    Merged in:
        Authors:  Peter Bruin        |    Reviewers:
Report Upstream:  N/A                |  Work issues:
         Branch:                     |       Commit:
  u/pbruin/15549-pari_gen_construction|  
7a98efbcf2b16ae420cf5f7f05f9f39e0f3894ed
   Dependencies:  #15461             |     Stopgaps:
-------------------------------------+-------------------------------------
Changes (by pbruin):

 * status:  new => needs_review
 * commit:   => 7a98efbcf2b16ae420cf5f7f05f9f39e0f3894ed


Old description:

> Clean up the construction of PARI objects by inlining some functions and
> initialising the `_refers_to` dictionary only when necessary.
>
> Before:
> {{{
> sage: %timeit -r 1 pari(0)
> 1000000 loops, best of 1: 1.02 us per loop
> }}}
> After:
> {{{
> sage: %timeit -r 1 pari(0)
> 1000000 loops, best of 1: 875 us per loop
> }}}

New description:

 Clean up the construction of PARI objects by inlining some functions and
 initialising the `_refers_to` dictionary only when necessary.

 Before:
 {{{
 sage: %timeit -r 1 pari(0)
 1000000 loops, best of 1: 1.02 us per loop
 }}}
 After:
 {{{
 sage: %timeit -r 1 pari(0)
 1000000 loops, best of 1: 875 ns per loop
 }}}

--

Comment:

 Replying to [comment:2 jdemeyer]:
 > Are you sure the ticket description is right? If so, you '''slowed this
 down''' by a factor of 858.
 That was a typo; I don't know why I didn't simply copy-paste this...
 ----
 Last 10 new commits:
 ||[[http://git.sagemath.org/sage.git/commit/?id=7a98efb|7a98efb]]||streamline
 construction of PARI gen||
 ||[[http://git.sagemath.org/sage.git/commit/?id=5bb8f8d|5bb8f8d]]||remove
 commented-out method gen.python()||
 ||[[http://git.sagemath.org/sage.git/commit/?id=3fa4f1d|3fa4f1d]]||remove
 redundant methods from sage.libs.pari.gen||
 ||[[http://git.sagemath.org/sage.git/commit/?id=511f05b|511f05b]]||remove
 global variable mytop||
 ||[[http://git.sagemath.org/sage.git/commit/?id=866f7fd|866f7fd]]||remove
 methods sage.libs.pari.gen.*_unsafe||
 ||[[http://git.sagemath.org/sage.git/commit/?id=05b93b7|05b93b7]]||remove
 "pbw" as an abbreviation for "prec_bits_to_words"||
 ||[[http://git.sagemath.org/sage.git/commit/?id=95a622a|95a622a]]||better
 fix for real_double.pyx||
 ||[[http://git.sagemath.org/sage.git/commit/?id=11a3bfb|11a3bfb]]||more
 fixes related to relocation of PariInstance||
 ||[[http://git.sagemath.org/sage.git/commit/?id=34013cc|34013cc]]||fixes
 in sage.libs.pari||
 ||[[http://git.sagemath.org/sage.git/commit/?id=db8cd7e|db8cd7e]]||top-
 level changes related to PariInstance||

--
Ticket URL: <http://trac.sagemath.org/ticket/15549#comment:4>
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/groups/opt_out.

Reply via email to