[pypy-svn] r77937 - pypy/extradoc/talk/pepm2011

cfbolz at codespeak.net cfbolz at codespeak.net
Thu Oct 14 16:06:18 CEST 2010


Author: cfbolz
Date: Thu Oct 14 16:06:14 2010
New Revision: 77937

Modified:
   pypy/extradoc/talk/pepm2011/escape-tracing.pdf
   pypy/extradoc/talk/pepm2011/paper.tex
Log:
fix XXX, rename section


Modified: pypy/extradoc/talk/pepm2011/escape-tracing.pdf
==============================================================================
Binary files. No diff available.

Modified: pypy/extradoc/talk/pepm2011/paper.tex
==============================================================================
--- pypy/extradoc/talk/pepm2011/paper.tex	(original)
+++ pypy/extradoc/talk/pepm2011/paper.tex	Thu Oct 14 16:06:14 2010
@@ -86,7 +86,7 @@
 
             $^c$Open End, Göteborg, Sweden
            }
-           {cfbolz at gmx.de \and anto.cuni at gmail.com \and fijal at merlinux.eu,
+           {cfbolz at gmx.de \and anto.cuni at gmail.com \and fijal at merlinux.eu \and
            leuschel at cs.uni-duesseldorf.de \and samuele.pedroni at gmail.com \and arigo at tunes.org}
 
 %\numberofauthors{3}
@@ -191,8 +191,8 @@
 informally described in Section~\ref{sec:statics}; a more formal description is
 given in Section~\ref{sec:formal}.
 
-In Section~\ref{sec:support} we describe some supporting techniques that are not
-central to the approach, but are needed to improve the results. The introduced
+In Section~\ref{sec:frames} we describe some supporting techniques that are not
+central to the approach, but are essential to improve the results. The introduced
 techniques are evaluated in Section~\ref{sec:Evaluation} using PyPy's Python
 interpreter as a case study.
 
@@ -920,11 +920,8 @@
 
 % section Escape Analysis in a Tracing JIT (end)
 
-\section{Supporting Techniques}
-\label{sec:support}
-
-\subsection{Virtualizables}
-\label{sub:Virtualizables}
+\section{Taming Frame Objects}
+\label{sec:frames}
 
 \cfbolz{probably can be cut in case of space problems}
 
@@ -955,9 +952,7 @@
 
 XXX one of the JS tracing JITs does this as well
 
-% subsection Virtualizables (end)
-
-% section Supporting Techniques (end)
+% section Taming Frame Objects (end)
 
 \section{Evaluation}
 \label{sec:Evaluation}
@@ -1060,12 +1055,18 @@
 All benchmarks were run 50 times in the same process, to give the JIT time to produce machine
 code. The arithmetic mean of the times of the last 30 runs were used as the
 result. The errors were computed using a confidence interval with a 95\%
-confidence level \cite{georges_statistically_2007}. The results are reported in Figure~\ref{fig:times}.
+confidence level \cite{georges_statistically_2007}. The results are reported in
+Figure~\ref{fig:times}. In addition to the run times the table also reports the
+speedup that PyPy with optimization turned on achieves.
 With the optimization turned on, PyPy's Python interpreter outperforms CPython
 in all benchmarks except spambayes (which heavily relies on regular expression
 performance and thus is not helped much by our Python JIT) and meteor-contest.
-All benchmarks are improved by the allocation removal optimization, some as much
-as XXX. XXX Psyco
+All benchmarks are improved by the allocation removal optimization, by at least
+20\% and by as much as a factor of 6.95.
+
+Psyco is able to outperform PyPy's JIT in five out of 14 benchmarks. We hope to
+overtake Psyco (which is no longer being actively developped) by adding some
+further optimizations.
 
 \begin{figure*}
 \begin{center}



More information about the Pypy-commit mailing list