Parallel Programming Talk #37- Joe Duffy architect of Parallel Extensions to .NET & author of "Concurrent Programming on Windows"

Aaron & Clay talked with Joe Duffy of Microsoft on the 37th episode of Parallel Programming Talk of Parallel Programming Talk. Joe Duffy is the lead developer and architect for Parallel Extensions to .NET. He is the author of two books: Concurrent Programming on Windows and Professional .NET Framework 2.0.

Download an MP3 of the show.

Download link to a high quality MP4 video file of the show (about 90MB)

You can watch Parallel Programming Talk live every Tuesday at 8AM Pacific on Intel Software Network TV, our new 24/7 interactive video channel. Come chat with us, or browse the On Demand section to see past episodes of our shows.

You can also automatically receive new show episodes as the become available. Subscribe to the Intel Software Network TV feed in your favorite aggregator (iTunes users, click here), or sign up to get an email when new episodes are posted.

Follow @isntv on Twitter to get notified when a live show or event is about to happen on Intel Software Network TV. Don’t miss out!

Threading Challenge Update
July 3 - Threading Challenge #6 due June 3, 2009
Three contest have been judged. Congratulations to "denghui0815" who is our 1st & 3rd problem winner and "haojn" who won our second problem.

Update to Intel Software Tools
On June 23 Intel Software Product Division released updates for our C++ and Fortran compilers, Intel Math Kernel (MKL) and Intel Integrated Performance Primitives (IPP) libraries and Cluster toolkits. Noteworthy additions include outstanding performance enhancements, support of Intel® Advanced Vector Extensions (AVX) and inclusion of some elements that debuted in Intel® Parallel Studio last month.

Features to note including our AVX and AES support in the tools, our adaptation of some of new features from Parallel Studio to Linux and Mac OS X, and really great tuning of our performance leading MPI library.

The specific new product versions are:

Intel® Professional Edition Compilers 11.1 (Fortran & C/C++, for Windows, Linux, Mac OS X)
Intel® Integrated Performance Primitives (IPP) 6.1 (for Windows, Linux, Mac OS X)
Intel® Math Kernel Library (MKL) 10.2 (for Windows, Linux, Mac OS X)
Intel® Cluster Toolkit, Compiler Edition 3.2.1 (for Windows, Linux)
Intel® MPI Library 3.2.1 (for Windows, Linux)

Upcoming Events
July 17 - Intel Parallelism Training - Santa Clara - Free
July 19-20, 2009 - Workshop on Parallel and Distributed Systems: Testing, Analysis, and Debugging (PADTAD - VII). Presentations by Intel and CILK
Aug 19-21 - UC Berkeley Par Lab Boot Camp

Listener Question Show
Our next listener question show is July 7 – send in questions or ideas for our show to

On Today's Show:
Joe Duffy of Microsoft will discuss the MS Parallel Extensions to .NET and MS Task Parallel Library
He is the lead developer and architect for Parallel Extensions to .NET and the author of two books: Concurrent Programming on Windows and Professional .NET Framework 2.0. You can read more about his views on languages and parallel applications development his personal blog.

According to MSDN, the Microsoft Task Parallel Library (TPL) is designed to make it much easier to write managed code that can automatically use multiple processors. Using the library, you can conveniently express potential parallelism in existing sequential code, where the exposed parallel tasks will be run concurrently on all available processors. Usually this results in significant speedups.

TPL is being created as a collaborative effort by Microsoft® Research, the Microsoft Common Language Runtime (CLR) team, and the Parallel Computing Platform team. TPL is a major component of the Parallel FX library, the next generation of concurrency support for the Microsoft .NET Framework.

Microsoft Parallel Extensions, previously known as the Parallel Framework Extensions or (PFX), is a managed concurrency library being developed by a collaboration between Microsoft Research and the CLR team at Microsoft.

The Microsoft Concurrency Runtime provides an efficient and scalable infrastructure for multiple concurrent programming models by bringing together cooperative work scheduling and resource management into one component.

For more complete information about compiler optimizations, see our Optimization Notice.