[pypy-commit] extradoc extradoc: A draft.

arigo noreply at buildbot.pypy.org
Thu Apr 26 18:39:22 CEST 2012


Author: Armin Rigo <arigo at tunes.org>
Branch: extradoc
Changeset: r4196:6bba6778891a
Date: 2012-04-26 18:39 +0200
http://bitbucket.org/pypy/extradoc/changeset/6bba6778891a/

Log:	A draft.

diff --git a/blog/draft/stm-apr2012.rst b/blog/draft/stm-apr2012.rst
new file mode 100644
--- /dev/null
+++ b/blog/draft/stm-apr2012.rst
@@ -0,0 +1,48 @@
+STM update (and thanks everybody)
+=================================
+
+A short update on the Software Transactional Memory (STM) side.  I have
+now reached the point where the basics seem to work, and the integration
+with the Garbage Collection subsystem is --- not done by far, but at
+least "not crashing in my simple tests and not leaking memory too
+quickly".  (It is leaking a bit of memory though, and it is never
+calling ``__del__`` so far.)
+
+If you want to play with it, you can download `this binary`_ (you need to
+put it in a place with the paths ``lib-python`` and ``lib_pypy``, for
+example from a regular `nightly tarball`_ or from a full checkout).  It
+is for Linux 32-bit; I didn't do fixes for other platforms for now.
+It was compiled from the `stm-gc`_ branch on the 25th of April.
+It runs e.g. the `modified version of richards`_.
+
+.. _`this binary`: http://wyvern.cs.uni-duesseldorf.de/~arigo/pypy-stm-22fccf3c9b5e.tar.bz2
+.. _`nightly tarball`: http://buildbot.pypy.org/nightly/trunk/
+.. _`stm-gc`: https://bitbucket.org/pypy/pypy/src/stm-gc
+.. _`modified version of richards`: https://bitbucket.org/pypy/pypy/raw/stm-gc/pypy/translator/stm/test/richards.py
+
+It exposes the same interface as the transaction_ module, except it
+doesn't support epoll right now, so it cannot be used to play with `a
+branch of Twisted`_; but that's coming soon.  For now you can use it to
+get multi-core usage on purely computational programs, like PyPy's own
+``translate.py``, for which I did a tweak `in rpython/rtyper.py`_ (lines
+273-281 are all that I needed to add).
+
+.. _transaction: https://bitbucket.org/pypy/pypy/raw/stm-gc/lib_pypy/transaction.py
+.. _`a branch of Twisted`: svn://svn.twistedmatrix.com/svn/Twisted/branches/stm-5526
+.. _`in rpython/rtyper.py`: https://bitbucket.org/pypy/pypy/src/stm-gc/pypy/rpython/rtyper.py#cl-249
+
+The performance is not great, even taking into account that it has no
+JIT so far, but it seems to scale; at least, it does scale on my
+2-real-cores, 4-hyperthreaded-cores laptop, roughly as expected.
+
+And...
+
+...a bit thank you to everyone who contributed some money to support
+this!  As you see on the PyPy_ site, we got more than 6700$ so far in
+only 5 or 6 weeks.  Thanks to that, my contract started last Monday, and
+I am now paid a small salary via the `Software Freedom Conservancy`_
+(thanks Bradley M. Kuhn for organizational support from the SFC).
+Again, thank you everybody!
+
+.. _PyPy: http://pypy.org/
+.. _`Software Freedom Conservancy`: http://sfconservancy.org/


More information about the pypy-commit mailing list