[prev in list] [next in list] [prev in thread] [next in thread] 

List:       pypy-dev
Subject:    Re: [pypy-dev] Saving and reloading JIT optimizations
From:       Armin Rigo <arigo () tunes ! org>
Date:       2011-08-19 13:32:07
Message-ID: CAMSv6X0Z25DwHssQOxRZUQMk5yAb815rrA5ujOfP+Wi2c_cgpA () mail ! gmail ! com
[Download RAW message or body]

Hi David,

On Fri, Aug 19, 2011 at 1:56 PM, David Fraser <davidf@sjsoft.com> wrote:
> The pypy JIT takes a while to work out which parts of python code need optimization \
> etc, and only after that phase do the speedups become relevant. Have there been any \
> efforts (indeed, is it a feasible idea at all) that look at saving these \
> optimizations for future runs of the same codebase?

No, this is not really doable.  The JIT writes explicitly in the
assembler the address of a ton of constants.  We have no clue what
these constants become when we are in a different process.  Think even
just about Python classes: there is no way at all to know that a class
at address 0x1234567 is "the same" as a previous class in a previous
process at address 0x7654321, let alone defining what exactly "the
same" means.

Instead, we can work on lowering the warm-up time of the JIT, notably
by lowering the (so far very large) overhead it takes for the JIT to
trace a loop.


A bientôt,

Armin.
_______________________________________________
pypy-dev mailing list
pypy-dev@python.org
http://mail.python.org/mailman/listinfo/pypy-dev


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic