On Wed, Sep 19, 2012 at 11:38 AM, Armin Rigo <ar...@tunes.org> wrote: > Hi Carl Friedrich, > > On Tue, Sep 18, 2012 at 10:00 PM, Carl Friedrich Bolz <cfb...@gmx.de> wrote: >> 2. More fundamentally (and this is where I think you have missed a detail >> about the JIT so far) the JIT ist trace-based. The JIT backends cannot deal >> with arbitrary control flow, only with linear traces. > > You missed an intermediate solution: have the JIT's blackhole > interpreter run the jitcodes before warm-up. We don't have to > actually JIT-compile everything before being able to run it, which > would indeed completely kill warm-up times. This would give a (slow > but not unreasonably slow) solution: a very general "RPython > interpreter and JIT-compiler" that would input and run some set of > serialized jitcodes --- similar to a Java VM, actually. (There are > tons of minor issues ahead, like all the stranger operations that > don't have a jitcode equivalent so far, e.g. working on "long double" > or "long long long" or weakrefs...) > > Note that in order to make the "RPython interpreter and JIT-compiler" > itself, we would need to translate regular RPython code --- which > means it doesn't help at all if the goal is to port RPython to non-C > translation targets. It's merely a cool hack, and maybe a debugging > help to trade fast translation time for a slower result. > > > A bientôt, > > Armin. > _______________________________________________ > pypy-dev mailing list > pypy-dev@python.org > http://mail.python.org/mailman/listinfo/pypy-dev
I guess this is what pypyjit.py does, more or less. You still need the blackhole interpreter to run in something _______________________________________________ pypy-dev mailing list pypy-dev@python.org http://mail.python.org/mailman/listinfo/pypy-dev