[pypy-dev] The Work Plan Re: STM proposal funding

Andrew Francis andrewfr_ice at yahoo.com
Wed Mar 28 18:23:21 CEST 2012


Hi Armin:


________________________________
 From: Armin Rigo <arigo at tunes.org>
To: Andrew Francis <andrewfr_ice at yahoo.com> 
Cc: PyPy Developer Mailing List <pypy-dev at python.org> 
Sent: Wednesday, March 28, 2012 5:08 AM
Subject: Re: The Work Plan Re: [pypy-dev] STM proposal funding
 
Hi Andrew,

On Mon, Mar 26, 2012 at 17:28, Andrew Francis <andrewfr_ice at yahoo.com> wrote:


AF> I am familar with the AME papers. AME literature seems to taper
AF> off. Have you tried talking to the various authors? Or get your
AF> hands on an implementation.

>Indeed, and it was around 2007, so I expect the authors to have been
>involved in completely different things for quite some time now...
>But I could try to contact them anyway.


Communications is good :-) 

AF> STM is used under the hood to implement the channels and other
AF> associated constructs. Hopefully this would 1) lead to a smaller
AF> transactional footprint. 2) Totally hide STM from the programmer. 3)
AF> Use an already existing API.

>Yes for 2) and 3): that's precisely where I'm going.  Right now I'm
>focusing on Twisted instead of Stackless (with help from J.P.
>Calderone), 

Cool. I use Twisted!

>but the idea is the same: hide it totally from the
>end programmer by using the existing API.  Only the one tweaking the
>Twisted internals needs to know about it.  The same would apply to
>Stackless.


I don't know if Christian is following this conversation....

My PyPy knowledge is still sketchy but I am changing that.  I do understand the Twisted reactor model
 (thanks to my 2008 Pycon Talk) so I could follow discussions in that area. Is this discussed on IRC?

I would *love* to engage in a similar effort on the Stackless side. At first things would be slow on my
side. One of the tasks I would need to do is better examine how threads interact with the Stackless 
scheduler (an area I seldom look at but follow the discussions in the Stackless Mailing List. I may have
misconceptions that could readily be cleared up).

The low hanging fruit would be 1) rewriting some of the STAMP applications to use Stackless. 
2) exposing some of the lock-free mechanisms - this would get me deeper in the FFI. 

On the wild idea front, a while back, I took a graduate research course in Distributed Algorithms. There
I learnt about  Nancy Lynch's I/O Automaton model and encountered synchronisers (not that I am an expert).
A modified version of the I/O automaton model is used to develop proofs for transactional algorithms. 
For this discussion, ascheduler and a transaction manager can be thought of as a synchroniser. I have a gut 
feeling that somehow the scheduler and a transaction manager can be unified.  I need to revisit the literature.

Cheers,
Andrew
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/pypy-dev/attachments/20120328/e506189f/attachment.html>


More information about the pypy-dev mailing list