[pypy-svn] r77978 - pypy/extradoc/talk/pepm2011
cfbolz at codespeak.net
cfbolz at codespeak.net
Fri Oct 15 14:28:37 CEST 2010
Author: cfbolz
Date: Fri Oct 15 14:28:35 2010
New Revision: 77978
Modified:
pypy/extradoc/talk/pepm2011/paper.tex
Log:
- shorten a bit
- mention size of python interpreter
Modified: pypy/extradoc/talk/pepm2011/paper.tex
==============================================================================
--- pypy/extradoc/talk/pepm2011/paper.tex (original)
+++ pypy/extradoc/talk/pepm2011/paper.tex Fri Oct 15 14:28:35 2010
@@ -923,18 +923,21 @@
this optimization is about 400 lines of RPython code.
A further complication is that most interpreters written with PyPy use
-heap-allocated frame objects to store local variables. Those severely hinders
+heap-allocated frame objects to store local variables. Those severely hinder
the effectiveness of allocation removal, because every time an object is stored
into a local variable, it is stored into the frame-object, which makes it
-escape. We implemented a general technique to treat such frames objects in a
+escape. We implemented a technique to treat such frames objects in a
special way to solve this problem. This is a common approach in VM
-implementations \cite{miranda_context_1999,andreas_gal_trace-based_2009}. The
-only novelty in our approach lays in its generality: most other JITs, are just
-specifically written for one particular language instead of being generated from
-an interpreter.
+implementations \cite{miranda_context_1999,andreas_gal_trace-based_2009}, the
+novelty of our approach is that we generalized it enough to be usable for
+different interpreter.
+
+To evaluate our allocation removal algorithm, we look at the effectiveness when
+used in the generated tracing JIT of PyPy's Python interpreter. This interpreter
+is a full implementation of Python 2.5 language semantics and is about 30'000
+lines of code.
-To evaluate the effectiveness of our allocation removal algorithm, we look at
-the effectiveness when used in the tracing JIT of PyPy's Python interpreter. The
+The
benchmarks we used are small-to-medium Python programs, some synthetic
benchmarks, some real applications.\footnote{All the source code of the
benchmarks can be found at \texttt{http://codespeak.net/svn/pypy/benchmarks/}.
@@ -947,7 +950,7 @@
Furthermore there are the following benchmarks:
\begin{itemize}
- \item \textbf{crypto\_pyaes}: AES implementation.
+ \item \textbf{crypto\_pyaes}: An AES implementation.
\item \textbf{django}: The templating engine of the Django web
framework\footnote{\texttt{http://www.djangoproject.com/}}.
\item \textbf{go}: A Monte-Carlo Go
More information about the Pypy-commit
mailing list