.NET Parallel Programming
All about Async/Await, System.Threading.Tasks, System.Collections.Concurrent, System.Linq, and more…
Latest posts
More Channel 9 Parallel Extensions Goodness
Charles from Channel 9 came over to building 112 last week for an in-depth look at what's new in the June 2008 CTP of Parallel Extensions. We spoke on the subject for an hour and a half or so, which you can see in a two-part series that was posted to Channel 9 yesterday (by the way, Channel 9 team, the new site looks great!): What better way to spend some of this weekend than to enjoy discussions of Parallel Extensions. :) As always, we're very interested in your feedback, on the CTP itself but also on what we discussed in the videos and on what we should discuss in future videos.
Mandelbrot in Parallel with C++/CLI
Since the release of the December 2007 CTP of Parallel Extensions, we've received several questions about whether Parallel Extensions can be used from C++/CLI. In short, yes, it can! (It can be used with any .NET language, one of the beauties of this functionality being provided through a library.) To demonstrate, we included in the June 2008 CTP an example of doing just that, using Parallel Extensions to compute the Mandelbrot fractal. (To use Parallel Extensions in your own C++ project, you'll need to add a reference to both System.Threading.dll and System.Core.dll.) The sample application loads an...
More Powerful Aggregations in PLINQ
In the June 2008 CTP, PLINQ aggregations are more powerful than they were in the December 2007 CTP. The reason why they are more powerful is a bit subtle, but this new power enables many useful scenarios, so it is worth it to follow along with the explanation.To understand where the difference is coming from, let’s quickly review how aggregations work in LINQ to objects. As an example, consider a possible implementation of the Average operator, sans error handling: public static double Average(this IEnumerable<int> source) { ...
Ray Tracer samples in the June 2008 CTP
The June 2008 Community Technology Preview (CTP) of Parallel Extensions to the .NET Framework was released on Monday, and we’re really pleased at the level of excitement in the community that we’re seeing in response. As part of the CTP, we included a variety of demos and samples to help provide a tour of the functionality. If you haven't already, please read the blog entries: Released! Parallel Extensions to the .NET Framework June 2008 CTP, Known Issues in the June 2008 CTP of Parallel Extensions, and What's New in the June 2008 CTP of Parallel Extensions In this post, I’m going to explore the...
What’s New in the June 2008 CTP of Parallel Extensions
We've just released a new community technology preview (CTP) of Parallel Extensions to the .NET Framework! You can download it from https://www.microsoft.com/downloads/details.aspx?FamilyId=348F73FD-593D-4B3C-B055-694C50D2B0F3. This release contains a plethora of bug fixes as well as some design changes to address some great feedback from you (note that there are some other changes you've requested and that we're planning to make in future releases, so stay tuned). It also contains a wealth of new functionality, some under the covers, some exposed through new APIs. Task Parallel Library The Dece...
On Achieving Perfection –or– Why We Love Your Feedback (and Why You Can Love Giving It)
“Perfection is reached not when there’s nothing left to add, but when there’s nothing left to remove.” - Antoine de St. Exupery Your feedback on Community Technology Previews is invaluable to us in the pursuit this lean perfect solution. Working on a first version technology (a “v1”) is both a thrilling experience and an exercise in restraint. It is so easy for us to see opportunities – oh, if we added this property here, this method there, this special case in this function, we’d make things so much easier to achieve a few scenarios here and there ...
Released! Parallel Extensions to the .NET Framework June 2008 CTP
We’re very excited to announce our 2nd Community Technology Preview (CTP) for Parallel Extensions to the .NET Framework 3.5. We released the Dec07 CTP on 11/29/2007, and from that we have received a lot of feedback from the community and customers. While you have been using our bits, participating in our forums, sharing your insights and experiences, and following along on our blog, we have been hard at work preparing this CTP, incorporating your feedback into it. Download the Parallel Extensions June 08 CTP (UPDATE 11/30/09: The June 2008 CTP is no longer available. For an unsupporte...
Known Issues in the June 2008 CTP of Parallel Extensions
The Jun08 CTP is still an early pre-release version that is not ready for production usage. In addition to on-going feature additions and performance work, there are some known issues that we plan to address in future releases. Of course, there are always things that we missed and we would love your feedback on them either as comments to this post or in the forum. Task Parallel Library1. New scheduler threads are not injected if a task blocks, possibly leading to an inability to run additional tasks. When there are dependencies between running tasks...
Concurrency Pre-Conference Session at the PDC
Interested in parallel programming with .NET and on Windows? Thinking of attending the Microsoft PDC this year? Well, if you do, make sure to come a day early. The Parallel Computing Platform team will be presenting a day-long pre-conference session on October 26th from 10:00am-5:45pm: Concurrent, Multi-core Programming on Windows and .NET Presenter(s): David Callahan, Joe Duffy, Stephen Toub It should be an awesome time. Register now.