Videos
CLR 4 - Inside the Thread Pool
With CLR 4, the team that designs and implements the .NET thread pool have made some truly compelling changes.
Concurrency and Parallelism: Native and Managed Perspectives
Parallel Computing Platform team members Stephen Toub, Rick Molloy, Don McCrady and Dana Groff join Channel 9 for a chat about the differences and similarities in their conceptual approach to designing and building concurrent programming abstractions targeting .NET developers and native (C/C++) developers.
Axum Published! Tutorial: Building your first Axum application
Axum PM Josh Phillips walks you through building a simple Axum application in just over 5 minutes.
Parallel Computing in Native Code: New Trends and Old Friends
The next version of C++, C++0x, will undoubtedly contain new language constructs that will make it easier to program many-core algorithms. We dig into some of these here as well as reveal for the first time on C9 some new members of the C++ language that you may not have heard about yet.
Inside Windows 7 - User Mode Scheduler (UMS)
Channel 9 continues its exploration of the morphology of Windows 7 on Going Deep with windows kernel architect Dave Probert in a deep-dive discussion of UMS.
Axum: A Managed Domain Specific Language For Concurrent Programming
Josh Phillips, Niklas Gustafsson, and Artur Laksberg of the Parallel Computing Platform team spend some time with Channel 9 to discuss Axum, a managed incubation language for concurrent programming.
Software Transactional Memory: The Current State of the Art
Dana Groff and Yossi Levanoni from the Parallel Computing Platform team discuss the current state of software transactional memory and outline the work their team is doing to craft this incubation/research technology into a practical real-world solution.
10-4 Episode 6: Parallel Extensions
In this episode of 10-4, we start taking a look at Parallel Extensions to the .NET Framework. We'll look at some of the surface-area of the Parallel Extensions API and provide you with enough information to start working with it yourself in the Visual Studio 2010 CTP VPC.
CHESS: An Automated Concurrency Testing Tool
CHESS is an automated tool from Microsoft Research for finding errors in multithreaded software by systematic exploration of thread schedules. In this video, we meet some of the researchers behind CHESS, Madan Musuvathi and Shaz Qadeer.
Getting started with CHESS in Visual Studio 2008
This video is a quick tutorial on writing concurrency unit tests, powered by CHESS in Visual Studio 2008.
Parallel Programming for Managed developers with Visual Studio 2010 and .NET Framework 4.0
Come learn how Visual Studio 2010 and the .NET Framework 4.0 can help you write better performing and more scalable applications.
.NET Coffee Break on Parallel Computing
This video discusses Parallel Extensions to the .NET Framework.
What exactly is parallel computing and how do students get internships at Microsoft?
Steve Teixeira, Product Unit Manager, Parallel Computing Platform talks about Parallel Extensions to the .NET Framework.
Technical Summit 2008: Steve Teixeira on Parallel Computing
Get a sneak peak on what is coming in Visual Studio 2010 regarding the tools support for multithreaded applications.
Bringing Parallel Computing to the Masses
Steve Teixeira, Product Unit Manager, Microsoft Parallel Computing Platform talks about parallelism (15 min in
Jason Zander talks about the new features in Visual Studio 2010
In this video learn about the new features, including parallel computing features in Visual Studio 2010.
Lynne Hill: Parallel Computing Platform - The Vision and Future
In this video, Lynne Hill, General Manager of Microsoft's Parallel Computing Initiative, talks about the vision, the history of the problem and the future of parallelism. She makes it clear that with the advent of the performance power of manycore processors, the industry is poised to invent some incredibly interesting technologies that will enable new classes of computation experiences for computer users.
Parallel Computing Platform: Overview and Future Directions
Microsoft's David Callahan (Distinguished Engineer) and Keith Yedlin (Product Unit Manager) discuss Microsoft's vision for general purpose Parallel Computing. Keith demos the power of the Microsoft Parallel Computing Platform on a 26 processor machine.
Parallel Computing Platform: An Integrated Approach to Tooling
This video discusses Microsoft's overall approach to Parallel Computing inside Visual Studio (improved concurrency debugging and new runtime analysis tools).
Back To Basics - Race Conditions, Part 1
This screencast dives into race conditions, how they can show up in your code, and what you can do to fix them.
Technical Summit 2008: Steve Teixeira on Parallel Computing
Listen to Microsoft's Steve Teixeira's sneak peak on what is coming in Visual Studio 2010 regarding tools support for multithreaded applications.
The Zen of Stateless State - The State Monad - Part 1
Managing state is an important aspect of parallel programming. This is part 1 of 2 videos.
The Zen of Stateless State - The State Monad - Part 2
Managing state is an important aspect of parallel programming. This is part 2 of 2 videos.
Debugging Parallel Applications with Visual Studio 2010
In this video, learn what is being done in order to make debugging of parallel applications easier than it has been before. Covered are features like the new Parallel Tasks and Parallel Stacks windows, among others.
Microsoft's Parallel Computing Platform: Applied Research in a Product Setting
This talk at the University of Washington examines Microsoft’s Parallel Computing Initiative, explicitly relating it to specific research of the past and present, in addition to surveying future efforts and possible research opportunities.
Pat Helland on the Drive to Many-Core Processors
Patrick Weikle interviews Microsoft’s Pat Helland about the inevitability of manyCore and parallel applications.
Tech chat with Microsoft's parallel guru Steve Teixeira
Microsoft’s Steve Teixeira talks about the parallel technologies in VS2010.
Daniel Moth at TechEd EMEA
What is parallel computing? How is parallelism becoming easier for developers by utilizing Visual Studio and the .NET Framework? What programming model is being introduced for parallelism? Microsoft’s Daniel Moth answers these questions and more.
Microsoft's Daniel Moth discusses Parallel Extensions to the .NET Framework
Microsoft's Daniel Moth discusses Parallel Extensions which simplifies development by providing library-based support for introducing concurrency into applications written with any .NET language, including C# and Visual Basic.
“Microsoft Concurrency Runtime” with Microsoft Engineer Niklas Gustafsson
Intel announced their support for Microsoft’s Concurrency Runtime. In the future, Intel's software development products such as Intel® Threading Building Blocks, OpenMP and Intel Parallel Studio will use Microsoft’s Concurrency Runtime as a common resource management and scheduling infrastructure on the Windows platform.
The Concurrency Runtime: Fine Grained Parallelism for C++
Native developers (C++) will be given an equivalent level of concurrency abstraction (and in some cases more) via the native Concurrency Runtime and associated tools.
Inside Parallel Extensions for .NET 2008 CTP Part 1
In this first video, one of two videos, several Microsoft employees dig deeply into Parallel Extensions to the .NET Framework.
Inside Parallel Extensions for .NET 2008 CTP Part 2
In this second video, the second of two videos, several Microsoft employees continue to discuss Parallel Extensions to the .NET Framework.
Parallel Computing Platform: Asynchronous Agents for Native Code
This video covers native (C++) asynchronous agents (and agent programming, generally) and pipeline architectures for concurrency.
Anders Hejlsberg and Guy Steele: Concurrency and Language Design
In this conversation Microsoft Technical Fellow and Chief Architect of C# Anders Hejlsberg sits down with programming language design legend and computer scientist Guy Steele (creator of Scheme and expert in several languages ranging from LISP to Java).
Sean Shypula and Luis Villegas: Life on the Bungie Farm: Fun Things to do with 180 Servers
Sean Shypula and Luis Villegas are developers for Bungie (makers of Halo) that build the distributed asset processing system, a 180+ server farm that is used to take massive tasks, break them into pieces and process them in parallel.
Parallel Extensions using Ray Tracing with Stephen Toub
Stephen Toub, a Program Manager on the Parallel Fx team, demos how to get 400+% performance increase in a CPU intensive Ray Tracing program by switching one line of code from a regular for loop to using the Parallel.For command.
Parallel Extensions for the .NET Framework
Jeff Barnes presents an Architect Point of View presentation on Parallel extensions to the .NET framework currently in CTP. In this segment, Jeff provides a brief overview of this exciting new breakthrough in muti-core processing using the .NET framework and shares with you some of his findings for the potential performance gains that this framework extension provides on dual and quad-core machines.
Joe Duffy and Igor Ostrovsky: Parallel LINQ Under the Hood
This video digs into how Parallel LINQ (PLINQ) works and what makes it tick from a parallel processing point of view.
Joe Duffy, Huseyin Yildiz, Daan Leijen, Stephen Toub - Parallel Extensions: Inside the Task Parallel
This video digs into the Task Parallel Library infrastructure for parallel computing.
Burton Smith: On General Purpose Super Computing and the History and Future of Parallelism
This video is an introduction to parallelism and high performance computing. As always, we can't talk about super computing without addressing program language evolution in the context of manycore. A lot of ground is covered here including Burton's insights into functional programming, transactions, compatability, shared mutable state, operating systems, technical redundancy and the role of Microsoft Technical Fellows in the post-Bill era.
Dan Reed: On the ManyCore Future and Parallelism in the Sky
The angle of this video focuses attention primarily on the server-side parallelism problem which is distinct from the client problem but part of the same wide-angle general purpose solution to the complex (and arguably fractal) general problem that spans microblips in DRAM to massive data centers.
Expert to Expert: Erik Meijer and Bertrand Meyer - Objects, Contracts, Concurrency, Sleeping Barbers
With the arrival of multi-core and soon-to-arrive many-core chipsets concurrency and parallelism are top-of-mind for general purpose language designers these days. Bertrand has introduced the SCOOP model on top of Eiffel. SCOOP is a comprehensive effort to make concurrent and distributed programming simple and safe, taking advantages of Eiffel's object technology and Design by Contract.
Parallel Extensions: Task and Friends
In this 25' exploration of the heart of the Parallel Extensions to the .NET Framework , you will learn how to use Tasks and how they relate to TaskManagers (including creation options, cancellation and policies).
Programming 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.
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.
What's new in F# - Asynchronous Workflows
In this Channel 9 video, Charles and Don discuss what F# joining the .NET family means, what state the project is in, delve into concurrent programming and parallelism topics, and look into (and at) the latest F# features that make it easier to exploit multi-core hardware.
Don Syme and Joe Duffy on F# and Parallel FX
Don Syme and Joe Duffy discuss ideas behind F# and the Parallel Extensions to the .NET Framework.
Multi-threading Debugging Enhancements in Visual Studio 2008
They say debugging is a skill and that threading is hard so when you put the two together, you have a challenge. Visual Studio 2008 has added a handful of small new featurettes to help with that.
Programming in the Age of Concurrency: Software Transactional Memory
Simon Peyton-Jones and Tim Harris, who are researchers working on a very hard problem: making it easier (more predictable, more reliable, more composable) to write concurrent applications in this the age of Concurrency
Joe Armstrong - On Erlang, OO, Concurrency, Shared State and the Future, Part 2
Joe Armstrong - On Erlang, OO, Concurrency, Shared State and the Future, Part 2 Often, after the camera is turned off, the conversation continues and, on occasion is truly interesting. Of course, as you could image, Joe, Erik and I continued to chat about concurrent programming, functional languages, the future of hardware-software interaction, etc, when I turned the camera off after part 1 of this interview with the creator of Erlang, Joe Armstrong.
CCR Programming - Jeffrey Richter and George Chrysanthakopoulos
Here, George Chrysanthakopoulos, Charles and Jeffrey Richter dive into demos of the CCR API as well as discuss the What How and Why of it.