[pypy-svn] r55533 - pypy/extradoc/talk/ep2008

cfbolz at codespeak.net cfbolz at codespeak.net
Tue Jun 3 22:29:40 CEST 2008


Author: cfbolz
Date: Tue Jun  3 22:29:37 2008
New Revision: 55533

Modified:
   pypy/extradoc/talk/ep2008/abstract_obscure.txt
Log:
(fijal, cfbolz, pedronis watching): re-work the GC talk proposal


Modified: pypy/extradoc/talk/ep2008/abstract_obscure.txt
==============================================================================
--- pypy/extradoc/talk/ep2008/abstract_obscure.txt	(original)
+++ pypy/extradoc/talk/ep2008/abstract_obscure.txt	Tue Jun  3 22:29:37 2008
@@ -1,25 +1,33 @@
 Title
 =====
 
-PyPy - garbage collection details.
+Writing Python code for different GCs
+
+(was: PyPy - garbage collection details.)
 
 Summary
 =======
 
-Obscure, naked, details of garbage collection strategies available in pypy.
-Will contain performance difference of various operations depending on
-chosen GC.
+This talk will pick PyPy's GC as an example and discuss
+how to write Python code that does not rely on the underlying GC
+implementation.
 
 Abstract
 ========
 
-In this talk, we'll cover garbage collection strategies present in PyPy.
-We'll not go into implementation details of those, but instead we'll
-try to explain how certain operations behave and especially how they
-present different performance characteristics than cpython's reference
-counting strategy. We'll also explain why certain programming patterns
-work well on some garbage collectors and doesn't work too well on others
-and how to avoid such obstacles.
+Almost all of the newer Python implementation depart from CPython's reference
+counting as a memory management strategy and use more recent garbage
+collection strategies. IronPython and Jython use the GCs of the .NET platform
+and of the JVM respectively, PyPy contains several GCs, among them a moving
+generational garbage collector. All these GCs have in common that they behave
+slightly differently than reference counting in some places. Existing Python
+code often uses patterns that only works well with reference counting.
+
+In this talk we will explain one of the PyPy GCs in detail as an example of
+the sort of GC techniques that are used. Then we will describe common mistakes
+that are made and explain ways how to work around them. Specifically we will
+talk about the different semantics of finalizers and the varying cost of some
+operations on a moving GC (like id).
 
 Proposed Length of talk required
 ================================
@@ -29,8 +37,11 @@
 Brief Biography
 ===============
 
-Maciej Fijalkowski is a core pypy developer, particularly interested
-in obscure details of various parts.
-
-Armin Rigo is the author of psyco JIT, as well as key person behind
-most pypy's obscure advanced details.
+Maciej Fijalkowski is a core PyPy developer, particularly interested
+in the obscure details of various parts. He is always annoyed with existing code
+relying on reference counting, as well as lack of knowledge about how
+things like finalizers work.
+
+Armin Rigo is the author of the Psyco JIT, as well as the key person behind 
+many of PyPy's advanced details. He is one of the main implementors of PyPy's
+GCs.



More information about the Pypy-commit mailing list