[pypy-svn] r33456 - pypy/extradoc/talk/dls2006
arigo at codespeak.net
arigo at codespeak.net
Thu Oct 19 16:05:32 CEST 2006
Author: arigo
Date: Thu Oct 19 16:05:30 2006
New Revision: 33456
Modified:
pypy/extradoc/talk/dls2006/talk.txt
Log:
(arigo, pedronis)
Finished the slides, roughly.
Modified: pypy/extradoc/talk/dls2006/talk.txt
==============================================================================
--- pypy/extradoc/talk/dls2006/talk.txt (original)
+++ pypy/extradoc/talk/dls2006/talk.txt Thu Oct 19 16:05:30 2006
@@ -210,7 +210,26 @@
and partial evaluation, extended to use the techniques of
Psyco)
+Translation Summary
+===========================
+
+The translation tool-chain
+has proved effective:
+- low-level details and
+ pervasive decision can be
+ left out of the interpreter
+
+- it can targets at the same time:
+ C, LLVM, the CLR
+ and is open for further backends (JVM in progress)
+
+- it can and has been used
+ in the context of other research
+ projects and spin-off ideas
+ (e.g. a JavaScript backend,
+ compilation of other RPython programs...)
+
Website etc.
=============
@@ -219,10 +238,39 @@
(7 partners)
* Thanks
-Run-time Specialisation
+Run-time Specialization
========================
-...
+Previous experience: Psyco
+
+- a "just-in-time specializer" which can transparently
+ accelerate user code
+
+- a C hand-written "generating extension", in the terminology
+ of partial evaluation
+
+- similar to conventional JITs with the additional ability
+ to suspend compilation at any point, and wait for actual
+ run-time information (e.g. type of an object):
+ **promotion**.
+
+A Specializer as an Aspect
+==========================================
+
+General idea (the devil is in the details):
+
+- Transform the flowgraphs of the interpreter
+ into a compiler, using the type inference
+ framework to do binding-time analysis (runtime/
+ compile-time) based on a few hints.
+
+- Special hints to insert and control promotion.
+
+- We think that promotion is the key to making
+ it practical for large interpreters and complex
+ semantics.
+
+This is what we are working on right now.
JIT Generation Diagram
========================
More information about the Pypy-commit
mailing list