.NET Parallel Programming

All about Async/Await, System.Threading.Tasks, System.Collections.Concurrent, System.Linq, and more…

Asynchronous programming in .NET survey

Update:  The survey is now closed.  Thanks to all that participated! We’ve heard our customers’ frustrations with asynchronous programming and their call for improved support.  We are hoping to better understand why and how you and your customers use asynchronous programming in .NET and how the support we ...

Parallel Computing at Imagine Cup 2009

On Wednesday, Microsoft announced the Imagine Cup 2009 worldwide winners: https://www.microsoft.com/presspass/press/2009/jul09/07-07ImagineCup2009WinnersPR.mspxCongratulations to Team Biollel that took first place in the Parallel Computing Award for their “Parallel implementation of maximum likelihood method of phylogenetic tree ...

Interested in parallel computing? We’re hiring!

If you're reading this post, you most likely have an interest in parallel or distributed computing, writing concurrent software, and the like.  Take that interest a step further, and help us make the manycore era a successful reality by coming to work on the Parallel Computing Platform team at Microsoft.We currently have several positions...

Parallel.Invoke() vs. Explicit Task Management

  Parallel Extensions offers a large variety of APIs supporting parallelism. During this blog the discussion will be focused on the methodology for making a choice between two of the new Parallel Extensions concepts: parallelism achieved by using Parallel.Invoke() and parallelism achieved through the use of Tasks. Suppose that ...

Processing Streams with PLINQ

In many data-parallel scenarios, all of the data to be processed is available immediately. This blog post addresses the opposite scenario: the inputs arrive gradually (as if in a stream), and we want to start producing results even before reading the last element of the input sequence. There is a variety of scenarios in which inputs ...