[pypy-commit] extradoc extradoc: work on slides

fijal noreply at buildbot.pypy.org
Mon Feb 20 23:29:35 CET 2012


Author: Maciej Fijalkowski <fijall at gmail.com>
Branch: extradoc
Changeset: r4092:dc5e0b3c78dc
Date: 2012-02-20 23:28 +0100
http://bitbucket.org/pypy/extradoc/changeset/dc5e0b3c78dc/

Log:	work on slides

diff --git a/talk/sea2012/talk.rst b/talk/sea2012/talk.rst
--- a/talk/sea2012/talk.rst
+++ b/talk/sea2012/talk.rst
@@ -1,3 +1,5 @@
+.. include:: beamerdefs.txt
+
 Fast numeric in Python - NumPy and PyPy
 =======================================
 
@@ -19,7 +21,7 @@
 
 * A framework for writing efficient dynamic language implementations
 
-* An open source project with a lot of volunteer effort
+* An open source project with a lot of volunteer effort, released under the BSD license
 
 * I'll talk today about the first part (mostly)
 
@@ -28,16 +30,16 @@
 
 * An **efficient just in time compiler** for the Python language
 
-* Relatively "good" on numerics (compared to other dynamic languages)
+* Relatively "good' on numerics (compared to other dynamic languages)
 
 * Example - real time video processing
 
-* Some comparisons
+* XXX some benchmarks
 
 Why would you care?
 -------------------
 
-* "If I write this stuff in C/fortran/assembler it'll be faster anyway"
+* *If I write this stuff in C/fortran/assembler it'll be faster anyway*
 
 * maybe, but ...
 
@@ -46,10 +48,14 @@
 
 * Experimentation is important
 
-* Implementing something faster, in human time, leaves more time for optimizations and improvements
+* Implementing something faster, in **human time**, leaves more time for optimizations and improvements
 
 * For novel algorithms, being clearly expressed in code makes them easier to evaluate (Python is cleaner than C often)
 
+|pause|
+
+* Sometimes makes it **possible** in the first place
+
 Why would you care even more
 ----------------------------
 
@@ -66,17 +72,17 @@
 
 * Next year a new generation of GPUs come along
 
-* Your algorithms are no longer optimize
+* Your algorithms are no longer optimized
 
 |pause|
 
-* Alternative - express your algorithms
+* Alternative - **express** your algorithms
 
 * Leave low-level details for people who have nothing better to do
 
 |pause|
 
-* Like me (I don't know enough physics to do the other part)
+* .. like me (I don't know enough physics to do the other part)
 
 Numerics in Python
 ------------------
@@ -119,19 +125,23 @@
 
 * Stuff is reasonably fast, but...
 
-* Only if you don't actually write much Python
+|pause|
+
+* Only if you don't actually write much **Python**
 
 * Array operations are fine as long as they're vectorized
 
 * Not everything is expressable that way
 
-* Numpy allocates intermediates for each operation, trashing caches
+* Numpy allocates intermediates for each operation, suboptimal
 
 Our approach
 ------------
 
 * Build a tree of operations
 
+XXX a tree picture
+
 * Compile assembler specialized for aliasing and operations
 
 * Execute the specialized assembler
@@ -141,9 +151,14 @@
 
 * ``a``, ``b``, ``c`` are single dimensional arrays
 
-* ``a + a`` would generate different code than ``a + b``
+* ``a+a`` would generate different code than ``a+b``
 
-* ``a + b * c`` is as fast as a loop
+* ``a+b*c`` is as fast as a loop
+
+Performance comparison
+----------------------
+
+XXX
 
 Status
 ------
@@ -204,7 +219,26 @@
 
 * We did not spend a whole lot of time dealing with the low-level optimizations
 
+* Automatic vectorization over multiple threads
+
+* SSE, GPU, dynamic offloading
+
+* Optimizations based on machine cache size
+
+* We're running a fundraiser, make your employer donate money 
+
 Extra - SSE preliminary results
 -------------------------------
 
 XXX
+
+Q&A
+---
+
+* http://pypy.org/
+
+* http://buildbot.pypy.org/numpy-status/latest.html
+
+* http://morepypy.blogspot.com/
+
+* Any questions?


More information about the pypy-commit mailing list