[pypy-commit] extradoc extradoc: add jython to the mix

Raemi noreply at buildbot.pypy.org
Wed May 28 17:00:43 CEST 2014


Author: Remi Meier <remi.meier at inf.ethz.ch>
Branch: extradoc
Changeset: r5279:d928148e310e
Date: 2014-05-28 17:01 +0200
http://bitbucket.org/pypy/extradoc/changeset/d928148e310e/

Log:	add jython to the mix

diff --git a/talk/dls2014/paper/paper.tex b/talk/dls2014/paper/paper.tex
--- a/talk/dls2014/paper/paper.tex
+++ b/talk/dls2014/paper/paper.tex
@@ -1091,6 +1091,16 @@
 
 \subsection{Performance Benchmarks\label{sec:performance-bench}}
 
+% To isolate factors we look at performance w/o JIT and perf w JIT.
+% w/o JIT:
+%  - it scales
+%  - slower than reference CPython
+%  - gil scales negatively
+% w JIT:
+%  - it sometimes still scales (more work needed)
+%  - changed working set size because generally ~50x faster
+%  - competing w our own JIT on non-stm a challenge
+%  - gil scales negatively
 \remi{For performance we first look at no-JIT behaviour of STM. Since
 we cannot compete well even with CPython, we later show JIT benchmarks
 where we see the unstable performance but also that we can still scale.
diff --git a/talk/dls2014/paper/plots/performance.pdf b/talk/dls2014/paper/plots/performance.pdf
index 5c6937be3742a98c828e64732cc1629cea90bbae..77bf2dcfa24532e9526c848ceba949109221dd2a
GIT binary patch

[cut]

diff --git a/talk/dls2014/paper/plots/performance_nojit.pdf b/talk/dls2014/paper/plots/performance_nojit.pdf
index 6e5adc65ab8b4cdd8fa8f4e3cbd18757980afb93..3f0d4de4954fcf4899ec81cc72cfac591c344941
GIT binary patch

[cut]

diff --git a/talk/dls2014/paper/plots/plot_performance.py b/talk/dls2014/paper/plots/plot_performance.py
--- a/talk/dls2014/paper/plots/plot_performance.py
+++ b/talk/dls2014/paper/plots/plot_performance.py
@@ -32,9 +32,10 @@
 
 
 interps_styles = {
-    "pypy-stm-jit": 'r-',
-    "pypy-jit": 'b--',
-    "best": "k:"
+    "pypy-stm-jit": {'fmt':'r-'},
+    "pypy-jit": {'fmt':'b', 'dashes':(1,1)},
+    "jython": {'fmt':'m', 'dashes':(2, 5)},
+    "best": {'fmt':"k:"}        # only fmt allowed
 }
 
 benchs = {
@@ -156,12 +157,12 @@
                     best_y = new_y
 
             artist = ax.errorbar(ts, y, yerr=yerr,
-                                 fmt=interps_styles[interp])
+                                 **interps_styles[interp])
             if interp not in legend:
                 legend[interp] = artist
 
         legend["best"], = ax.plot(ts, [best_y] * len(ts),
-                                  interps_styles["best"])
+                                  interps_styles["best"]['fmt'])
 
         if i // w == h-1:
             ax.set_xlim(0, 5)
@@ -172,7 +173,7 @@
         ax.set_title(name)
 
     return axs[w*(h-1)].legend(tuple(legend.values()), tuple(legend.keys()),
-                               ncol=3,
+                               ncol=4,
                                loc=(0,-0.4))
 
 
diff --git a/talk/dls2014/paper/plots/plot_performance_nojit.py b/talk/dls2014/paper/plots/plot_performance_nojit.py
--- a/talk/dls2014/paper/plots/plot_performance_nojit.py
+++ b/talk/dls2014/paper/plots/plot_performance_nojit.py
@@ -28,15 +28,16 @@
 import matplotlib.pyplot as plt
 # import pprint - slow as hell
 
-# threads
-
 
 interps_styles = {
-    "pypy-stm-nojit": 'r-',
-    "cpython": 'b--',
-    "best": "k:"
+    "pypy-stm-nojit": {'fmt':'r-'},
+    "cpython": {'fmt':'b', 'dashes':(1,1)},
+    "jython": {'fmt':'m', 'dashes':(2, 5)},
+    "best": {'fmt':"k:"}        # only fmt allowed
 }
 
+
+
 benchs = {
     "raytrace":{
         "pypy-stm-nojit":[
@@ -50,6 +51,12 @@
             [2.7],
             [2.75],
             [2.84]
+        ],
+        "jython":[
+            [2.74,2.75],
+            [2.9,3.1,3.0],
+            [2.89,3.01,2.95],
+            [3.0,2.99,2.97]
         ]},
 
     "btree":{
@@ -64,6 +71,12 @@
             [5.76],
             [5.91],
             [6.03]
+        ],
+        "jython":[
+            [1.76,1.84],
+            [2.60,2.46,2.6],
+            [2.56,2.6,2.51],
+            [2.57,2.52,2.48]
         ]},
 
     "skiplist":{
@@ -78,6 +91,12 @@
             [4.9],
             [5.0],
             [5.1]
+        ],
+        "jython":[
+            [1.38,1.33,1.47,1.40],
+            [1.8,1.77,1.81],
+            [1.81,1.79,1.88],
+            [1.99,1.92,1.74,1.84]
         ]},
 
     "threadworms":{
@@ -92,6 +111,12 @@
             [5],
             [5.2],
             [5.37]
+        ],
+        "jython":[
+            [2.73,2.38,2.63,2.4],
+            [3.0,2.87,3.3,3.1],
+            [3.35,3.22,3.19],
+            [3.19,3.37,3.26,3.36]
         ]},
 
     "mandelbrot":{
@@ -106,6 +131,12 @@
             [2.4],
             [2.4],
             [2.5]
+        ],
+        "jython":[
+            [5.56,5.61,5.59,5.55],
+            [2.84,3,2.8,2.96],
+            [2.13,2.03,2.04,2.11],
+            [1.8,1.74,1.8,1.88]
         ]},
 
     "richards":{
@@ -120,6 +151,12 @@
             [3.87],
             [4.02],
             [4.13]
+        ],
+        "jython":[
+            [3.39,3.31,3.7],
+            [2.32,1.95,2.18],
+            [1.86,1.66],
+            [1.49,1.63,1.59]
         ]}
 }
 


More information about the pypy-commit mailing list