[pypy-commit] extradoc extradoc: more slides
antocuni
noreply at buildbot.pypy.org
Sun Jun 19 18:54:38 CEST 2011
Author: Antonio Cuni <anto.cuni at gmail.com>
Branch: extradoc
Changeset: r3741:61764a7842bd
Date: 2011-06-19 18:42 +0200
http://bitbucket.org/pypy/extradoc/changeset/61764a7842bd/
Log: more slides
diff --git a/talk/ep2011/training/src/count.py b/talk/ep2011/training/src/count.py
new file mode 100644
--- /dev/null
+++ b/talk/ep2011/training/src/count.py
@@ -0,0 +1,23 @@
+import sys
+import time
+
+def count_mult_of_5(N):
+ mult = 0
+ not_mult = 0
+ for i in range(N):
+ if i % 5 == 0:
+ mult += 1
+ else:
+ not_mult += 1
+ return mult, not_mult
+
+def main():
+ N = int(sys.argv[1])
+ start = time.clock()
+ count = count_mult_of_5(N)
+ end = time.clock()
+ print 'count: ', count
+ print 'time:', end-start, 'secs'
+
+if __name__ == '__main__':
+ main()
diff --git a/talk/ep2011/training/talk.rst b/talk/ep2011/training/talk.rst
--- a/talk/ep2011/training/talk.rst
+++ b/talk/ep2011/training/talk.rst
@@ -25,6 +25,23 @@
* That's it!
+ - (modulo details)
+
+Challenge
+---------
+
+* ``html_fibo.py``
+
+* HTML list of fibonacci numbers
+
+* (the most complicate ever)
+
+* run it on CPython
+
+* run it on PyPy
+
+* fix it!
+
Refcounting vs generational GC (1)
----------------------------------
@@ -81,12 +98,6 @@
* ``finally`` inside generators
-Challenge
----------
-
-- Find the bug!
-
-XXX write me :-(
How the JIT works
@@ -98,11 +109,15 @@
PYPYLOG
--------
+|small|
+
* ``PYPYLOG=categories:logfile pypy program.py``
+|end_small|
+
* categories:
- - gc
+ - gc-minor, gc-major
- jit-log-noopt, jit-log-opt
@@ -110,12 +125,48 @@
- jit-backend-counts
-* ``PYPYLOG=jit-log-opt:log.pypylog pypy foo.py``
-XXX: write foo.py
+Inspecting the JIT log
+-----------------------
+
+|scriptsize|
+|example<| |scriptsize| ``count.py`` |end_scriptsize| |>|
+
+.. sourcecode:: python
+
+ def count_mult_of_5(N):
+ mult = 0
+ not_mult = 0
+ for i in range(N):
+ if i % 5 == 0:
+ mult += 1
+ else:
+ not_mult += 1
+ return mult, not_mult
+
+|end_example|
+|end_scriptsize|
+
+|small|
+
+* ``PYPYLOG=jit-log-opt:mylog pypy count.py 2000``
+
+* ``PYPYLOG=jit-log-opt:mylog pypy count.py 10000``
+
+|end_small|
The jitviewer
-------------
-- ``jitviewer.py log.pypylog``
+|scriptsize|
+
+* ``PYPYLOG=jit-log-opt,jit-backend-counts:mylog pypy count.py 2000``
+
+* ``PYPYLOG=jit-log-opt,jit-backend-counts:mylog pypy count.py 10000``
+
+* ``jitviewer.py log.pypylog``
+
+* Look at the (missing) bridge!
+
+|end_scriptsize|
More information about the pypy-commit
mailing list