HACKER Q&A
📣 mettamage

What Happened to Transactional Memory?


I'm getting into concurrency again, rereading the book written by Herlihy and Shavit. Transactional memory seemed to be quite the thing back then.

But when I'm doing a search on HN, I do not see any relatively new submissions [1]. So what happened to transactional memory?

[1] https://hn.algolia.com/?q=transactional+memory


  👤 ayende Accepted Answer ✓
No good support from the underlying processors, which meant that no one really used this, because even if you had support for this, you had a high performance cost.

That led to users wanting to find other methods to make this work.

And in general, the path has been either to avoid shared memory entirely (negating the need for tx memory) or using lock free algorithms (which won't worked with tx memory).

It is a great idea, in theory, but it proved impractical in practice.


👤 Turing_Machine
The Clojure language makes use of software transactional memory.

https://clojure.org/reference/refs