Author: Carl Friedrich Bolz <[email protected]>
Branch: extradoc
Changeset: r3802:8d50395f7e75
Date: 2011-06-27 16:48 +0200
http://bitbucket.org/pypy/extradoc/changeset/8d50395f7e75/

Log:    new abstract

diff --git a/talk/iwtc11/paper.tex b/talk/iwtc11/paper.tex
--- a/talk/iwtc11/paper.tex
+++ b/talk/iwtc11/paper.tex
@@ -121,19 +121,14 @@
 \maketitle
 
 \begin{abstract}
-By introducing loop peeling into the optimization step of a tracing
-jit the effect of optimizations already in place will be increased
-greatly. Not only will they become able to move loop invariant code
-out of loop. They will also become able to reuse results from the
-previous iteration. Also, the implementation of excising optimizations
-can be left almost intact as they will not have to interact much with
-the loop peeling.
-
-Several benchmarks, with few guard failures, executed on the
-PyPy Python JIT show over 2
-times increase in speed when loop peeling was introduced. This makes
-some of them almost match optimized C performance and become over 900
-times faster than CPython.
+One of the nice properties of a tracing JIT is that many of its optimization
+are simple requiring one forward pass. This is not true for loop-invariant code
+motion which is a very important optimization for code with tight kernels.
+In this paper we present a scheme for making simple optimizations loop-aware by
+using a simple pre-processing step on the trace and not changing the
+optimizations themselves. The scheme can give performance improvements of a
+factor over two for PyPy's Python JIT executing simple numerical kernels
+bringing the performance close to that of compiled C code.
 \end{abstract}
 
 \category{D.3.4}{Programming Languages}{Processors}[code generation,
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to