Software Transactional Memory: The Current State of the Art
- Posted: Dec 29, 2008 at 12:19 PM
- 77,895 Views
- 9 Comments
Download
How do I download the videos?
- To download, right click the file type you would like and pick “Save target as…” or “Save link as…”
Why should I download videos from Channel9?
- It's an easy way to save the videos you like locally.
- You can save the videos in order to watch them offline.
- If all you want is to hear the audio, you can download the MP3!
Which version should I choose?
- If you want to view the video on your PC, Xbox or Media Center, download the High Quality WMV file (this is the highest quality version we have available).
- If you'd like a lower bitrate version, to reduce the download time or cost, then choose the Medium Quality WMV file.
- If you have a Zune, WP7, iPhone, iPad, or iPod device, choose the low or medium MP4 file.
- If you just want to hear the audio of the video, choose the MP3 file.
Right click “Save as…”
- High Quality WMV (PC, Xbox, MCE)
- MP3 (Audio only)
- MP4 (iPod, Zune HD)
- Mid Quality WMV (Lo-band, Mobile)
- WMV (WMV Video)
A few years ago I got the chance to learn about Software Transactional Memory for the first time while visiting MSR Cambridge.
The great Simon Peyton-Jones and Tim Harris explained to me the thinking behind STM and how it might evolve. It was a tremendously interesting conversation. If you haven't watched that
interview, I highly recommend it as a precursor to this one. Today, STM is no longer only a research project. The
Parallel Computing Platform team is incubating and extending the technology, finding that it may in fact work in the real world...
Of course, there is no silver bullet to solving the Concurrency Problem, but STM may be an important part of a larger solution (you've leraned a great deal about what Microsoft is up to in the concurrency and parallelism space here on Channel 9 and it should be somewhat clear by now that many of the technologies we've presented to you may end up as pieces of a broader solution...)
Here, STM Program Manager Dana Groff and STM Principal Developer Lead Yossi Levanoni discuss the current state of STM and outline the work their team is doing to craft this incubation/research technology into a practical real-world solution (STM is not available yet for experimentation. It's in incubation. It's not known if or when STM will become a viable product.). So, how has STM evolved over the past two years, anyway? Tune in.
Enjoy.
Of course, there is no silver bullet to solving the Concurrency Problem, but STM may be an important part of a larger solution (you've leraned a great deal about what Microsoft is up to in the concurrency and parallelism space here on Channel 9 and it should be somewhat clear by now that many of the technologies we've presented to you may end up as pieces of a broader solution...)
Here, STM Program Manager Dana Groff and STM Principal Developer Lead Yossi Levanoni discuss the current state of STM and outline the work their team is doing to craft this incubation/research technology into a practical real-world solution (STM is not available yet for experimentation. It's in incubation. It's not known if or when STM will become a viable product.). So, how has STM evolved over the past two years, anyway? Tune in.
Enjoy.
Comments Closed
Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation,
please create a new thread in our Forums,
or
Contact Us and let us know.
Follow the Discussion
Finally we hear a more pragmatic story on STM. No more Holy Grail! Thanks Dana and Yossi.
Too bad we did not hear much about the “The Current State of the Art” on Hardware TM. Maybe we could have heard how CISC architecture is saving our (like in “we, the software guys”) pride (read “behinds”) once again.
Taking a step back for a moment.
As Microsoft encourages us to elevate our thinking about concurrency and parallelism out of the quagmire of explicit threads and locks, and as more and more managed technologies enter this spaces (Tasks, PLINQ, STM etc) I wonder if it isn’t time to revisit the root namespace. Krzysztof Cwalina and Brad Abrams have long championed the notion of putting ones lower level types for ‘advanced’ or seldom encountered scenarios in a sub-namespace. Today with .NET 4 we have:
System.Threading
System.Threading.Tasks
System.Threading.Collections
And who knows, if it isn’t baked into some language maybe the future will see:
System.Threading.TransactionalMemory
However if we want to encourage folks not routinely stumble upon Thread and Mutex etc types then perhaps a better organisation would be:
System.Concurrency
System.Concurrency.Tasks
System.Concurrency.Collections
System.Concurrency.Threading
System.Concurrency.TransactionalMemory
In fact one might go so far as to effectively promote the Tasks sub-namespace types to be prime candidates for the root System.Concurrency. At least then as we move forward we can remove the bug-factory-esc lower level primitives from being the first thing developer’s encounter. It strikes me that it should be possible to enhance the Fusion binding system to allow code to safely migrate towards a reorganised namespace schema. There are echoes here of Rico Mariani’s Pit Of Success, i.e. ensuring the developers encounter best practice (types) first.
C
See you in the middle,
C
Charles, thanks a lot for taking the time to talk with us!
To the folks interested in this technology, you are welcome to contact us through our team blog: http://blogs.msdn.com/stmteam
We're trying to get feedback on how Java developers will want to see and use STM.
For that we established the Deuce project, providing a noninvasive Java STM.
See: http://www.deucestm.org for more details.
When I tried to click on "WMV (High)", I got sent to http://mschnlnine.vo.llnwd.net/d1/ch9/1/0/1/7/4/4/InsideSTM_2MB_ch9.wmv, which gave me a 404.
Works for me. Where are you located geographically?
C
thanks for the video!
Remove this comment
Remove this thread
close