C++ Agents

At PDC 2008, we talked a lot about agents-based programming, in particular during the native C++ talks on parallel programming. We showed how the agents library that we plan to ship in VS 2010 can be used to overlap I/O with computationally intensive processing to raise the throughput of a program. I thought I should…


My Wednesday PDC talk on Channel 9

If anyone is interested, I just found the Channel 9 link to my Wednesday talk on the Concurrency Runtime. As I said earlier, the topic is a deep dive, so it’s rather dry… https://channel9.msdn.com/pdc2008/TL22/  


Last Day at PDC

The symposium panel Thursday went off pretty well. A much smaller crowd than at the other talks, but it was late in the program and people were starting heading home. It’s not easy to compete with lunch, either. Not a lot of controversy on the panel, we were mostly talking about futures in our different…


PDC Day 3

I did my first talk Wednesday, “A Deep Dive Into the Concurrency Runtime,” where I talked about how to extend the PPL and Agents native libraries and how to build your own scheduler with our runtime. A rather dry topic, I almost managed to bore myself. However, the room was filled to capacity and more,…


PDC 2008 Day 1

It’s been a long time since I last attended PDC, but now it’s in full swing. Last night, I met with a group of customers and partners from Sweden and gave an impromptu presentation about manycore futures. Sweden is not a big country, but it seems the groups is the third largest at PDC, after…


PDC 2008

Next week is PDC 2008. Presentations are done, demos are being rehearsed, and I’m excited to go to my first PDC in 15 years. Last time, I worked for a partner, not for Microsoft. Anyway, my presentation “Deep Dive into the Concurrency Runtime’ is Wednesday, and I’m talking about how to add functionality to our concurrency…


CCR and DevDiv’s Concurrency Runtime

With the news about Intel’s support for our concurrency runtime and my post about it yesterday, some may wonder how it relates to the Concurrency and Coordination Runtime (CCR), published as part of the MS Robotics’ development kit. The CCR, which I have blogged about before in my rather sparse column, currently offers both a specific…


Intel supporting Concurrency Runtime

Intel just disclosed that they intend to support the runtime that our team is working on here at Microsoft, the Concurrency Runtime.Now that the news is out, it seems useful to provide at least two cents’ worth of our perspective on what the runtime is and what it’s for. Here’s a link to an interview…


Separating concerns

Last night, I realized that in my last post on messages, I skipped over one of the essential characters of message-passing APIs: that they separate the code that produces data from the code that acts on its availability with some level(s) of indirection. Consider the use of ‘Future<T>’ to produce values that are acted on…



If you haven’t taken a serious look at F# yet, you should. This OCaml-inspired language is a great combination of OO and functional programming concepts and will challenge your thinking about how software could (and should) be built. Functional programming is very conducive to parallelization and this language is very much worth looking at. It’s now…