Parallel ComputingMicrosoft's Parallel Computing developer center is dedicated to providing information, ideas, community, and technology to developers to make it easier to write programs that perform and scale well on parallel hardware.
| Welcome to Parallel Computing
In an open letter to the community, Corporate Vice President S. Somasegar discusses Moore's law and the impetus behind Microsoft's Parallel Computing Initiative. | | The Manycore Shift: Microsoft Parallel Computing Initiative Ushers Computing into the Next Era
The computational power of manycore processors, new programming models and platform, and advanced research in usability promise to change the way people interact with computers. This paper describes how Microsoft and industry partners are working together to enable businesses, software and hardware vendors, and individuals to take advantage of the "manycore shift." | | Download Microsoft Parallel Extensions to the .NET Framework 3.5 December 2007 Community Technology Preview
Parallel Extensions to the .NET Framework is a managed programming model for data parallelism, task parallelism, and coordination on parallel hardware unified by a common work scheduler. Parallel Extensions makes it easier for developers to write programs that scale to take advantage of parallel hardware—providing improved performance as the numbers of cores and processors increase—without having to deal with many of the complexities of today’s concurrent programming models. Parallel Extensions provides library-based support for introducing concurrency into applications written with any .NET language, including but not limited to C# and Visual Basic. |
Concurrency Blog Posts
Q&As; from the 2008 Financial Services Developer ConferenceA few weeks ago, I presented on Parallel Extensions to the .NET Framework at the 6th annual Microsoft Financial Services Developer Conference (the decks from the conference are now available online). I had a great time and a great audience, and during the presentation... more
Parallel Developer ToolsHaving been on the job for a few months now, I feel like the team and I are finally beginning to settle in. It's been a period of significant flux for the Parallel Developer Tools team that included a new leader and (largely) new team trying to adjust to one another, b... more
New PLINQ video on Channel 9Igor and Joe from our Parallel Extensions team sat down with Charles from Channel 9 to discuss the inner workings of PLINQ. The video of the conversation is now available at http://channel9.msdn.com/showpost.aspx?postid=390736. "Continuing our exploration of... more
Wrapping an APM implementation with FutureIn a previous post, I talked about implementing the Asynchronous Programming Model pattern using Future<T> from Parallel Extensions to the .NET Framework. It's also possible to go in the opposite direction, to create a Future<T> from an existing APM impleme... more
Jobs on the Parallel Computing Platform teamAs mentioned in a previous post, we're actively hiring for the Parallel Computing Platform team at Microsoft. Whether you're interested in PM, dev, test, or product management, we have some awesome positions available! You can see a list of them and apply for those pos... more
Parallel loop performanceWe've received several questions on the MSDN Forums for Parallel Extensions about the performance of the Parallel class, and specifically of the loop constructs we provided in the CTP. We're very much aware that the performance of Parallel.For/ForEach in the CTP is not... more
Ordering the output of parallel computationsFrequently when attempting to do multiple operations in parallel, ordering becomes an issue. Consider an application where I'm rendering and writing out to a video file frames of a movie:
for (int i = 0; i < numberOfFrames; i++){ var frame = Gen... more
6th Annual Microsoft Financial Services Developer ConferenceWe'll be speaking this week in NYC about Parallel Extensions to the .NET Framework at the Microsoft Financial Services Developer Conference. "The 2008 Microsoft Financial Services Developer Conference will focus on providing developers and architects in Financial Services a... more
| VideosProgramming in the Age of Concurrency - Anders Hejlsberg and Joe Duffy: Concurrent Programming with PFX
Here, Joe Duffy, Senior Software Engineer, and Technical Fellow Anders Hejlsberg sit down with me to discuss the basics and some of the details of the Parallel Extensions to the .NET Framework’s architecture and implementation, whiteboard included. | Hanselminutes Podcast 84 - Concurency Programming with .NET Parallel Framework Extensions
Stephen Toub, a program manager on the Parallel Computing Platform team, talks with Scott Hanselman about how Parallel Extensions provides new ways to make concurrency programming easier with .NET. They get pretty deep and pretty philosophical about concurrency, threading, and parallelism. | Parallel Extensions Samples Tour
In this 20-minute tour of the Parallel Extensions sample code, you will learn where to focus your energy when you explore the samples. Watch this video in order to see how Parallel Extensions fit in the large picture and what goal it aims to solve. | Understanding the Parallel Class
The .NET incarnation of the solution to “imperative data parallelism” lives in the static Parallel class of the Parallel Extensions assembly. If that sentence confuses you a bit, watch the video for the full explanation. | Parallel LINQ
"Declarative Data Parallelism" with the Parallel Extensions is achieved through Parallel LINQ. This video explains how to parallelise your LINQ queries, how it works under the covers and how to configure it for advanced scenarios. |
Forums |
| |