[pypy-commit] extradoc extradoc: slides

fijal noreply at buildbot.pypy.org
Sun Feb 5 11:16:37 CET 2012


Author: Maciej Fijalkowski <fijall at gmail.com>
Branch: extradoc
Changeset: r4082:9812358309f2
Date: 2012-02-05 12:16 +0200
http://bitbucket.org/pypy/extradoc/changeset/9812358309f2/

Log:	slides

diff --git a/talk/pycon2012/tutorial/examples.rst b/talk/pycon2012/tutorial/examples.rst
--- a/talk/pycon2012/tutorial/examples.rst
+++ b/talk/pycon2012/tutorial/examples.rst
@@ -4,3 +4,12 @@
 * A simple speedup example and show performance
 
 * Show memory consumption how it grows for tight instances
+
+* Some numpy example (?)
+
+* An example how to use execnet
+
+* An example how to use matplotlib
+
+* Large object performance problem (that might go away some time?)
+
diff --git a/talk/pycon2012/tutorial/examples/03_memory.py b/talk/pycon2012/tutorial/examples/03_memory.py
--- a/talk/pycon2012/tutorial/examples/03_memory.py
+++ b/talk/pycon2012/tutorial/examples/03_memory.py
@@ -1,5 +1,5 @@
 
-import time, os, re, gc
+import time, os, re
 
 class A(object):
     def __init__(self, a, b, c):
diff --git a/talk/pycon2012/tutorial/slides.rst b/talk/pycon2012/tutorial/slides.rst
--- a/talk/pycon2012/tutorial/slides.rst
+++ b/talk/pycon2012/tutorial/slides.rst
@@ -1,18 +1,111 @@
 Why PyPy?
 =========
 
-* Performance
-* Memory
-* Sandbox
+* performance
+
+* memory
+
+* sandbox
+
+Why not PyPy (yet)?
+===================
+
+* embedded python interpreter
+
+* embedded systems
+
+* not x86-based systems
+
+* extensions, extensions, extensions
 
 Performance
 ===========
 
+* the main thing we'll concentrate on today
+
+* PyPy is an interpreter + a JIT
+
+* compiling Python to assembler via magic (we'll talk about it later)
+
+* very different performance characteristics from CPython
+
+Performance sweetspots
+======================
+
+* every VM has it's sweetspot
+
+* we try hard to make it wider and wider
+
+CPython's sweetspot
+===================
+
+* moving computations to C, example::
+
+   map(operator.... ) # XXX some obscure example
+
+PyPy's sweetpot
+===============
+
+* **simple** python
+
+* if you can't understand it, JIT won't either
+
+How PyPy runs your program, involved parts
+==========================================
+
+* a simple bytecode compiler (just like CPython)
+
+* an interpreter loop written in RPython
+
+* a JIT written in RPython
+
+* an assembler backend
+
+Bytecode interpreter
+====================
+
+* executing one bytecode at a time
+
+* add opcode for example
+
+* .... goes on and on
+
+* XXX example 1
+
+Tracing JIT
+===========
+
+* once the loop gets hot, it's starting tracing (1039 runs, or 1619 function
+  calls)
+
+* generating operations following how the interpreter would execute them
+
+* optimizing them
+
+* compiling to assembler (x86 only for now)
+
+PyPy's specific features
+========================
+
+* JIT complete by design, as long as the interpreter is correct
+
+* Only **one** language description, in a high level language
+
+* Decent tools for inspecting the generated code
+
+XXXXXXXXXXXXXXXXXXXXXXXXXXXX
+
+
 * Sweetspot?
+
   * CPython's sweetspot: stuff written in C
+
   * PyPy's sweetspot: lots of stuff written in Python
+
 * http://speed.pypy.org
+
 * How do you hit the sweetspot?
+
   * Be in this room for the next 3 hours.
 
 Memory


More information about the pypy-commit mailing list