[pypy-commit] extradoc extradoc: Updates

arigo pypy.commits at gmail.com
Fri Jul 14 04:50:37 EDT 2017


Author: Armin Rigo <arigo at tunes.org>
Branch: extradoc
Changeset: r5818:ec3ca5da8208
Date: 2017-07-14 10:50 +0200
http://bitbucket.org/pypy/extradoc/changeset/ec3ca5da8208/

Log:	Updates

diff --git a/talk/ep2017/pypy-whats-new/Makefile b/talk/ep2017/pypy-whats-new/Makefile
--- a/talk/ep2017/pypy-whats-new/Makefile
+++ b/talk/ep2017/pypy-whats-new/Makefile
@@ -4,3 +4,4 @@
 slides.tex: slides.rst
 	rst2beamer.py slides.rst > slides.tex
 	sed 's/\\date{}/\\input{author.latex}/' -i slides.tex || exit
+	sed 's/\\documentclass\[\]{beamer}/\\documentclass\[aspectratio=169\]{beamer}/' -i slides.tex || exit
diff --git a/talk/ep2017/pypy-whats-new/slides.rst b/talk/ep2017/pypy-whats-new/slides.rst
--- a/talk/ep2017/pypy-whats-new/slides.rst
+++ b/talk/ep2017/pypy-whats-new/slides.rst
@@ -22,13 +22,12 @@
 
 * PyPy is another implementation of Python
 
-* Supports only Python 2.7... up to this year
+* Mostly, drop-in replacement
+
+* Supports Python 2.7, and almost Python 3.5
 
 * Comes with a JIT, good performance
 
-* Mostly, drop-in replacement
-
-
 
 PyPy 3.5
 ============================================================
@@ -36,9 +35,13 @@
 PyPy 3.5
 ==========
 
-* Python 3.5 support released in **beta**
+* Python 3.5 support released in *gamma*
 
-* Drop-in replacement for ``python3.5``
+  - as stable (and mostly as fast) as PyPy 2.7, same JIT/GC/etc.
+
+  - what could be wrong is a few details everywhere
+
+  - please try it and *report issues!*
 
 * Thanks to Mozilla for funding this work!
 
@@ -49,7 +52,7 @@
 * Async HTTP benchmarks:
 
 .. image:: graphs.png
-   :scale: 21%
+   :scale: 26%
 
 
 PyPy 3.5 status
@@ -61,7 +64,7 @@
 
 * Tested mostly on Linux so far
 
-* Non-beta to be released "soon" (i.e. some time in 2017 I guess)
+* First "final" to be released soon (i.e. some time in 2017 I guess)
 
 * Python 3.6 to follow
 
@@ -96,7 +99,8 @@
 
 * On both PyPy 2.7 and PyPy 3.5
 
-* The rest of the scientific stack mostly works too (Pandas etc.)
+* The rest of the scientific stack mostly works too (Jupyter,
+  Matplotlib, Pandas, etc.)
 
 
 Cython, cpyext
@@ -104,9 +108,9 @@
 
 * Cython mostly works
 
-* Any CPython C extension module mostly works
+* Actually, any CPython C extension module mostly works
 
-* This is all thanks to ``cpyext``, our CPython C API emulation layer
+* Thanks to ``cpyext``, our CPython C API emulation layer
 
 
 Performance?
@@ -114,16 +118,25 @@
 
 * Numpy/Pandas/etc. are all slow-ish at the Python-C boundary
 
-* Less so than last year
+* Less so than last year but still
 
 * Complex algorithms written inside Numpy in C or Fortran have the same
   speed, of course
 
+  - lots of ``ndarray[index]``: slow
+
+  - one call to ``numpy.linalg.eig()``: fast
+
+  - speed hack: ``p = ffi.cast("double *", ffi.from_buffer(ndarray))``
+
 
 Performance?
 ==============
 
-* Basically: try it out on your own code
+* We have plans to improve
+
+* For now: try it out on your own code and see
+
 
 
 
@@ -135,6 +148,10 @@
 
 * ``pypy-stm``: getting rid of the Global Interpreter Lock
 
+
+Software Transactional Memory
+=============================
+
 * ...unfortunately, this approach does not seem to work :-(
 
 
@@ -149,8 +166,12 @@
 
 * As long as there is one, performance is bad
 
+* You may fix enough to get good performance... but:
+
 * Continue developing the program, and you'll often reintroduce conflicts
 
+* (Also, hard to test for, reliably)
+
 
 PyPy-nogil?
 ===========
@@ -165,7 +186,7 @@
 Reverse Debugger
 ================
 
-* The essential tool you need once a year
+* RevDB: The essential tool you need once a year
 
 
 Reverse Debugger
@@ -173,7 +194,7 @@
 
 * Debugger with the ability to go forward *and backward in time*
 
-* Watchpoints to know when a value changes when going in either
+* Watchpoints to know when a value changes, while going in either
   direction
 
 * http://bitbucket.org/pypy/revdb
@@ -194,19 +215,21 @@
 VMProf
 =====================
 
+* A good high-performance profiler for Python code
+
 * ``pip install vmprof``
 
 * Works on CPython and on PyPy
 
-* A "good" high-performance profiler for Python code
-
 * The PyPy version shows the machine code generated by the JIT
 
 
 CFFI improvements
 =======================
 
-* CFFI: calling C from Python (from CPython or PyPy)
+* CFFI: calling C from Python or the other way around
+
+* Works identically on CPython and on PyPy
 
 * Biggest improvement of last year is *embedding*
 


More information about the pypy-commit mailing list