[pypy-svn] r66609 - pypy/extradoc/talk/euroscipy2009

fijal at codespeak.net fijal at codespeak.net
Fri Jul 24 19:35:18 CEST 2009


Author: fijal
Date: Fri Jul 24 19:35:17 2009
New Revision: 66609

Added:
   pypy/extradoc/talk/euroscipy2009/author.latex
   pypy/extradoc/talk/euroscipy2009/beamerdefs.txt   (contents, props changed)
   pypy/extradoc/talk/euroscipy2009/clouds.png   (contents, props changed)
   pypy/extradoc/talk/euroscipy2009/dump.png   (contents, props changed)
   pypy/extradoc/talk/euroscipy2009/earth.png   (contents, props changed)
   pypy/extradoc/talk/euroscipy2009/flow.png   (contents, props changed)
   pypy/extradoc/talk/euroscipy2009/makepdf   (contents, props changed)
   pypy/extradoc/talk/euroscipy2009/output.png   (contents, props changed)
   pypy/extradoc/talk/euroscipy2009/pypy-logo.png   (contents, props changed)
   pypy/extradoc/talk/euroscipy2009/stylesheet.latex
   pypy/extradoc/talk/euroscipy2009/world.png   (contents, props changed)
Modified:
   pypy/extradoc/talk/euroscipy2009/talk.txt
Log:
Update on talk


Added: pypy/extradoc/talk/euroscipy2009/author.latex
==============================================================================
--- (empty file)
+++ pypy/extradoc/talk/euroscipy2009/author.latex	Fri Jul 24 19:35:17 2009
@@ -0,0 +1,7 @@
+\definecolor{rrblitbackground}{rgb}{0.0, 0.0, 0.0}
+
+\title[PyPy status talk]{PyPy status talk}
+\author[Maciej Fijalkowski, Dorota Jarecka]{Maciej Fijalkowski \and
+Dorota Jarecka}
+\institute[EuroSciPy 2009]{EuroSciPy 2009}
+\date{July 25, 2009}

Added: pypy/extradoc/talk/euroscipy2009/beamerdefs.txt
==============================================================================
--- (empty file)
+++ pypy/extradoc/talk/euroscipy2009/beamerdefs.txt	Fri Jul 24 19:35:17 2009
@@ -0,0 +1,77 @@
+.. colors
+.. ===========================
+
+.. role:: green
+.. role:: red
+
+
+.. general useful commands
+.. ===========================
+
+.. |pause| raw:: latex
+
+   \pause
+
+.. |small| raw:: latex
+
+   {\small
+
+.. |end_small| raw:: latex
+
+   }
+
+
+.. closed bracket
+.. ===========================
+
+.. |>| raw:: latex
+
+   }
+
+
+.. example block
+.. ===========================
+
+.. |example<| raw:: latex
+
+   \begin{exampleblock}{
+
+
+.. |end_example| raw:: latex
+
+   \end{exampleblock}
+
+
+
+.. alert block
+.. ===========================
+
+.. |alert<| raw:: latex
+
+   \begin{alertblock}{
+
+
+.. |end_alert| raw:: latex
+
+   \end{alertblock}
+
+
+
+.. columns
+.. ===========================
+
+.. |column1| raw:: latex
+
+   \begin{columns}
+      \begin{column}{0\textwidth}
+
+.. |column2| raw:: latex
+
+      \end{column}
+      \begin{column}{0\textwidth}
+
+
+.. |end_columns| raw:: latex
+
+      \end{column}
+   \end{columns}

Added: pypy/extradoc/talk/euroscipy2009/clouds.png
==============================================================================
Binary file. No diff available.

Added: pypy/extradoc/talk/euroscipy2009/dump.png
==============================================================================
Binary file. No diff available.

Added: pypy/extradoc/talk/euroscipy2009/earth.png
==============================================================================
Binary file. No diff available.

Added: pypy/extradoc/talk/euroscipy2009/flow.png
==============================================================================
Binary file. No diff available.

Added: pypy/extradoc/talk/euroscipy2009/makepdf
==============================================================================
--- (empty file)
+++ pypy/extradoc/talk/euroscipy2009/makepdf	Fri Jul 24 19:35:17 2009
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+# WARNING: to work, it needs this patch for docutils
+# https://sourceforge.net/tracker/?func=detail&atid=422032&aid=1459707&group_id=38414
+
+rst2beamer.py --stylesheet=stylesheet.latex --documentoptions=14pt talk.txt talk.latex || exit
+sed 's/\\date{}/\\input{author.latex}/' -i talk.latex || exit
+pdflatex talk.latex || exit
+

Added: pypy/extradoc/talk/euroscipy2009/output.png
==============================================================================
Binary file. No diff available.

Added: pypy/extradoc/talk/euroscipy2009/pypy-logo.png
==============================================================================
Binary file. No diff available.

Added: pypy/extradoc/talk/euroscipy2009/stylesheet.latex
==============================================================================
--- (empty file)
+++ pypy/extradoc/talk/euroscipy2009/stylesheet.latex	Fri Jul 24 19:35:17 2009
@@ -0,0 +1,10 @@
+\usetheme{Boadilla}
+\setbeamercovered{transparent}
+\setbeamertemplate{navigation symbols}{}
+
+\definecolor{darkgreen}{rgb}{0, 0.5, 0.0}
+\newcommand{\docutilsrolegreen}[1]{\color{darkgreen}#1\normalcolor}
+\newcommand{\docutilsrolered}[1]{\color{red}#1\normalcolor}
+
+\newcommand{\green}[1]{\color{darkgreen}#1\normalcolor}
+\newcommand{\red}[1]{\color{red}#1\normalcolor}

Modified: pypy/extradoc/talk/euroscipy2009/talk.txt
==============================================================================
--- pypy/extradoc/talk/euroscipy2009/talk.txt	(original)
+++ pypy/extradoc/talk/euroscipy2009/talk.txt	Fri Jul 24 19:35:17 2009
@@ -1,3 +1,4 @@
+.. include:: beamerdefs.txt
 
 =============================================
 PyPy's JIT for scientific python computations
@@ -10,7 +11,7 @@
 
 * Introduction to JIT
 
-* A bit about EULAG model
+* A bit about cloud modelling & EULAG
 
 * JIT & numpy integration
 
@@ -19,6 +20,10 @@
 PyPy - what's that?
 ===================
 
+.. image:: pypy-logo.png
+    :width: 50px
+    :align: right
+
 * A Python interpreter written in Python
 
 * A flexible compiler compiling restricted version
@@ -37,6 +42,8 @@
 
 * Psyco/stackless hard to maintain/extend
 
+|pause|
+
 * "Psyco consumes one brain per inch of progress"
 
 Motivation - user perspective
@@ -44,6 +51,10 @@
 
 * Noone should be ever forced to write in C for performance
 
+|pause|
+
+* ... with maybe some exceptions
+
 Status of PyPy today
 ====================
 
@@ -75,6 +86,8 @@
 
 * We want to generate JIT out of interpreter's description
 
+|pause|
+
 * ... instead of writing it by hand
 
 JIT details
@@ -84,25 +97,27 @@
 
 * Tracing JIT (a-la tracemonkey)
 
-* XXX
+* Written in a high-level language
 
 JIT - status
 ============
 
 * Simple numeric stuff - 20-30x performance boost
 
-* C-like speed for simple stuff
+|pause|
 
-* only x86 backend so far
+* ... which is similar to unoptimized C (gcc -O0)
 
-* More work needed
+|pause|
 
-xxx
+* only x86 backend so far (ie no x87)
 
-xxx
+* More work needed
 
-EULAG
-=====
+* Only about 2 man-year put so far
+
+Cloud modelling
+===============
 
 Cloud processes cover tremendous range of scales, from thousands of
 kilometers to a fraction of a cm...
@@ -112,10 +127,74 @@
 |     :width: 90px     |      :width: 100px     |      :width: 100px  |
 +----------------------+------------------------+---------------------+
 
+Global climate model
+====================
+
+Horizontal grid size of Global Climate Models is ~ 100km 
+
+.. image:: world.png
+     :width: 300px
+     :align: center
+
+Clouds have to be parametrized
+
+XXX
+===
+
+Large Eddy Simulation (LES) Models
+==================================
+
+* processes, which scales are range of 100m could be calculated explicitly
+
+* processes of smaller spatial scale, (e.g. turbulent mixing)
+  have to be still parametrized
+
+.. image:: dump.png
+    :width: 300px
+    :align: center
+
 EULAG
 =====
 
-XXX
+* developed in National Center for Atmospheric Science (NCAR),
+  Boulder, Colorado, since '80
+
+* written in Fortran 77
+
+* many different developers and users
+
+* lack of version control, good documentation and bug tracking system
+
+EULAG - data size
+=================
+
+* model time step - 3s, total time of simulations - 6h
+
+* horizontal/vertical grid size 25m/25m
+  number of horizontal/vertical points - 128/121
+
+Analyzing model data
+====================
+
+.. image:: output.png
+    :width: 200px
+
+* checkin amount of liquid water in each box
+
+* checkin for each "dry" box, distance to the cloud edge
+
+* calculating relative humidity in each "dry"
+
+Data used for analyzis
+======================
+
+* written every 4 minutes
+
+* last 4 hours of the simulation
+
+* around 8 basic variables, e.g. velocities, temperature 
+
+* For each variable: 60*121*128*128 values
 
 Data postprocessing
 ===================
@@ -137,28 +216,88 @@
 
 * Implement minimal version of numeric for PyPy
 
-* Reuse the JIT for speedups
+* Use the JIT for speedups
 
-* ~10x speedups over CPython version
+Results
+=======
+
+* ~10x speedups over pure-python version on top of CPython
 
 * Still about 4x slower than C or matrix operations
 
+|pause|
+
+* ... but not everything can be expressed using matrix operations
+
+* Due to limitations, programs needs to be carefully crafted
+
 JIT & Numpy
 ===========
 
 * Just started really
 
-* Specifically tailored programs see good speedups
+* 138 LOC
+
+* only ints and simple operations
+
+JIT & Numpy status
+==================
+
+* No support from JIT **at all**
+
+* General JIT progress gives speedups with numpy
+
+* More work on numpy needed, but it's all very simple
+
+JIT & Numpy - future
+====================
+
+* Possible to optimize beyond C implementation
+
+* Matrix operations like: a + b + c should not allocate immediate results
 
-* Ongoing jit refactoring XXX
+* Use of SSE operations can yield even bigger speedups
+  (or whatever architecture permits)
 
-* More work needed XXX
+* Make sure that unmodified programs run faster
+
+* Future looking pretty good
 
 Future directions
 =================
 
-xxx
+* Work more on JIT in general (inlining, x86_64 backend, etc.)
+
+* Produce a release by the end of the year
+
+* Release should speed up real-world program
+
+* Work on numpy as time permits
+
+* Seek more funding
+
+How you can help?
+=================
+
+* PyPy is open source after all
+
+* Very friendly to newcomers
+
+* A lot of promising fields to work on
+
+* We also seek funding or research grants
 
 Thank you! Questions?
 =====================
 
+* **PyPy**:
+
+http://codespeak.net/pypy
+
+http://morepypy.blogspot.com
+
+pypy-dev at codespeak.net
+
+* **Cloud modelling**:
+
+XXX

Added: pypy/extradoc/talk/euroscipy2009/world.png
==============================================================================
Binary file. No diff available.



More information about the Pypy-commit mailing list