Показаны сообщения с ярлыком STM. Показать все сообщения
Показаны сообщения с ярлыком STM. Показать все сообщения

вторник, 6 декабря 2011 г.

State: You're Doing It Wrong - Alternative Concurrency Paradigms For The JVM

"State: You're Doing It Wrong - Alternative Concurrency Paradigms For The JVM"

"What is an Identity?
A stable logical Identity associated with a series of different Values over time."

"What is State?
The Value an entity with a specific Identity has at a particular point in time."

"Haw do we know if something has State?
If a function is invoked with the same arguments at two different points in time and returns different values ... than it has State."

P.S. More on State (Clojure)

понедельник, 5 декабря 2011 г.

Akka - an open source, event-driven middleware project

"Akka - an open source, event-driven middleware project"

"... It is designed to allow developers to write simpler, correct concurrent applications using Actors, STM (software transactional memory) and transactors."

пятница, 10 декабря 2010 г.

STM in Scala

Scala 2.9, возможно, будет включать STM.
Reference implementation основана на CCSTM.

P.S. CCSTM: A Library-Based STM for Scala

четверг, 9 сентября 2010 г.

Software Transactional Memory for Large Scale Clusters

Software Transactional Memory for Large Scale Clusters

Abstract
While there has been extensive work on the design of software transactional memory (STM) for cache coherent shared memory systems, there has been no work on the design of an STM system for very large scale platforms containing potentially thousands of nodes. In this work, we present Cluster-STM, an STM designed for high performance on large-scale commodity clusters. Our design addresses several novel issues posed by this domain, including aggregating communication, managing locality, and distributing transactional metadata onto the nodes. We also re-evaluate several STMdesign choices previously studied for cache-coherent machines and conclude that, in some cases, different choices are appropriate on clusters. Finally, we show that our design scales well up to 512 processors. This is because on a cluster, the main barrier to STMscalability is the remote communication overhead imposed by the STM operations, and our design aggregates most of that communication with the communication of the underlying data.

четверг, 17 декабря 2009 г.

Весенний семестр

Господа, предварительные планы на весенний семестр включают материалы по:
1) Transactional Memory (на примере dstm2);
2) Actor-based concurrency model (на примере Scala).
---
Для TM и Actor будем рассматривать те реализации, которые привязаны к Java/JVM. Что бы полученный опыт легко можно было использовать при разработке j2ee-приложений.

P.S. Это к тому, что сейчас этих материалов прибавится на блоге :)

четверг, 15 октября 2009 г.

Классическая статья по STM.

Language Support for Lightweight transactions - одна из самых цитируемых статей по STM(Software Transactional Memory).

Если кто заинтересуется, возможно, есть смысл посмотреть и другие статьи от Tim Harris (я их не смотрел):
"Selected work:

* Tim Harris. Language constructs for transactional memory (or: transactional memory and atomic blocks are not the same thing) Invited talk, POPL, January 2009

* Martín Abadi, Tim Harris, Mojtaba Mehrara. Transactional memory with strong atomicity using off-the-shelf memory protection hardware PPoPP, February 2009

* Martín Abadi, Andrew Birrell, Tim Harris, Michael Isard. Semantics of Transactional Memory and Automatic Mutual Exclusion POPL 2008

* Tim Harris, Satnam Singh. Feedback directed implicit parallelism ICFP 2007

* Keir Fraser, Tim Harris. Concurrent programming without locks ACM TOCS, May 2007

* Miguel Castro, Manuel Costa, Tim Harris. Securing software by enforcing data-flow integrity OSDI 2006

* Tim Harris, Mark Plesko, Avraham Shinnar, David Tarditi. Optimizing Memory Transactions PLDI 2006

* Tim Harris, Simon Marlow, Simon Peyton-Jones, Maurice Herlihy. Composable memory transactions PPoPP 2005"