Using the holidays for a 2-week coding session. Writing a new transactional memory manager that’s O(1) for all operations, completely non-blocking and progress-guaranteeing, and uses atomics only for writes.
-
Show this thread
-
Replying to @TimSweeneyEpic
This sounds a lot like STM (software transactional memory) from Haskell.https://www.microsoft.com/en-us/research/publication/composable-memory-transactions/ …
1 reply 0 retweets 13 likes -
Replying to @batomaru
That is the idea exactly, minus manual retry features, plus plumbing for exceptions and asynchronous features. I’m just trying to make STM fast enough to be practical, in a C++ library.
2 replies 3 retweets 27 likes
Replying to @TimSweeneyEpic @batomaru
Where practical means that: for a reasonable transaction workload and some number of threads on an existing CPU, the workload runs faster with software transactions than it runs single-threaded without all the transaction plumbing overhead.
5:55 PM - 26 Dec 2019
0 replies
0 retweets
10 likes
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.