Author: Carl Friedrich Bolz <[email protected]>
Branch: extradoc
Changeset: r3714:e03abd8dc15b
Date: 2011-06-16 18:48 +0200
http://bitbucket.org/pypy/extradoc/changeset/e03abd8dc15b/
Log: a minimal introduction section on PyPy
diff --git a/talk/iwtc11/paper.tex b/talk/iwtc11/paper.tex
--- a/talk/iwtc11/paper.tex
+++ b/talk/iwtc11/paper.tex
@@ -105,7 +105,7 @@
\titlebanner{draft} % These are ignored unless
%\preprintfooter{short description of paper} % 'preprint' option specified.
-\title{Loop Invariant Code Motion in PyPy's Tracing JIT}
+\title{Loop-Aware Optimizations in PyPy's Tracing JIT}
%\subtitle{Subtitle Text, if any}
\authorinfo{H\aa kan Ardö}
@@ -175,6 +175,31 @@
% jump(i2, i3)
% none of the operations is loop-invariant, but loop peeling will still remove
the second addition
+\section{Background: PyPy}
+\label{sec:PyPy}
+
+The work described in this paper was done in the context of the PyPy
+project\footnote{\url{http://pypy.org}}. PyPy is a framework for implementing
+dynamic languages efficiently \cite{armin_rigo_pypys_2006}. When implementing a
+language with PyPy, one writes an interpreter for the language in RPython
+\cite{davide_ancona_rpython:_2007}. RPython (``Restricted Python``) is a subset
+of Python chosen in such a way that it can be efficiently translated to a
+C-based VM by performing type inference.
+
+Many low-level aspects of the final VM are not contained within the interpreter
+implementation but are inserted during translation to C. Examples for this are
a
+garbage collector and also a tracing JIT compiler \cite{bolz_tracing_2009}.
+
+PyPy's tracing JIT compiler traces on the level of RPython programs. Thus it
+actually traces the execution of an interpreter written in RPython, not of the
+program itself. This makes the details of the object model of the implemented
+language transparent and optimizable by the tracing JIT. In the context of this
+paper, this aspect of PyPy's tracing JIT can be ignored. Instead, it is
+sufficient to view PyPy's tracing JIT as a JIT for RPython.
+
+
+% section PyPy (end)
+
\section{Motivation}
\label{sec:Motivation}
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit