On Sat, Jun 11, 2005 at 02:23:10PM -0700, Chip Salzenberg wrote:
: STM is Software Transactional Memory.  It's wicked cool.  Really.
: Google it.  You'll be glad you did.

I'm particularly interested by the scalability of

    http://www.cambridge.intel-research.net/~rennals/faststm.html

(There's an implementation on Source Forge as well.)

: BTW, if you're wondering how this can work efficiently in Parrot:
: Remember that threading contention only applies to those variables
: which are marked 'shared'.  So the STM system need only look at their
: accesses transactioned.

On the other hand, some of the parallelizable primitives we're
building into Perl 6 (junctions, hyperops, and especially pipes) may
well induce more accidental "sharing" than appears on the surface
(think of a lexical that is visible to both ends of a pipeline).
So STM is probably a good direction to be moving in any case.

And if we need special syntax to keep such accidental sharing under
control, now would be a good time to discover that rather than later.

[Note: followups directed to p6l by default.]

Larry

Reply via email to