[pypy-svn] r72266 - pypy/extradoc/talk/oopsla2010

fijal at codespeak.net fijal at codespeak.net
Tue Mar 16 05:18:52 CET 2010


Author: fijal
Date: Tue Mar 16 05:18:51 2010
New Revision: 72266

Modified:
   pypy/extradoc/talk/oopsla2010/paper.txt
Log:
Write something down today


Modified: pypy/extradoc/talk/oopsla2010/paper.txt
==============================================================================
--- pypy/extradoc/talk/oopsla2010/paper.txt	(original)
+++ pypy/extradoc/talk/oopsla2010/paper.txt	Tue Mar 16 05:18:51 2010
@@ -21,3 +21,17 @@
 to scale to python interpreter. In this paper we will discuss how do
 we deal with frame objects and how we chain frame objects in a way
 that removes most costs associated with them.
+
+We remove frame overhead in a two different ways, depending on the place
+in trace where function call happens:
+
+1. For the outermost function within the compiled loop (XXX trace, can be
+   something else as far as I remember), we use objects called *virtualizables*,
+   which are allocated, but who's fields are ... (XXX write down how they're
+   lazily accessed from the other places and not at all from the JIT)
+
+2. For inlined functions, the frames are known not to escape, which
+   means we don't need to allocate them at all, but ...
+
+3. We have to maintain a frame chain via special objects called virtualrefs
+   XXX explain



More information about the Pypy-commit mailing list