Parallel Extensions to the .NET FX CTP

Parallel Extensions to the .NET FX CTP

Rate This
  • Comments 62

The shift to multi- and many-core processors that is currently underway presents an exciting opportunity for everyone in the software industry.  With an expected increase of 10 to 100 times today’s compute processing power, the opportunities to deliver powerful and immersive new user experiences and business value are just awesome.

 

Today we released an early preview of the Parallel Extensions to the .NET Framework technology, available for download on MSDN.  This release contains new APIs to make programming on the .NET Framework simpler as well as supporting documentation and samples. 

 

Parallel Extensions runs on .NET FX 3.5, and relies on features available in C# 3.0 and VB 9.0 and includes:

  • Imperative data and task parallelism APIs, including parallel for and foreach loops, to make the transition from sequential to parallel programs simpler.
  • Declarative data parallelism in the form of a data parallel implementation of LINQ-to-Objects.  This allows you to run LINQ queries on multiple processors.
  • First class tasks that can be used to schedule, wait on, and cancel parallel work.
  • New concurrency runtime used across the library to enable lightweight tasks and effectively map and balance the concurrency expressed in code to available concurrent resources on the execution platform.
  • Several great examples of how to use parallelism in real world problems to obtain impressive speedups, including a raytracer, Sudoku puzzle generator, and other simple puzzle solvers and smaller samples.

Along with the Parallel Extensions release, we have also launched a new MSDN dev center dedicated to concurrent programming.  It has a collection of whitepapers (including a whitepaper that describes the broader vision for parallel computing at Microsoft) and will be used to announce and house future developments in the parallel computing space.

 

Our work on concurrent programming is another great example of close, ongoing collaboration between product teams and Microsoft Research.  Although we understand the shift to parallel computing is a gradual road ahead for our whole industry, we are excited by the prospect and believe that the Parallel Extensions library is a large step in the right direction. 

 

Looking forward to hearing your feedback as you start getting your feet wet in this space.

 

Namaste!

 

 

Leave a Comment
  • Please add 8 and 8 and type the answer here:
  • Post
  • Soma,

    the dev center link is dead.

    WM_FYI

    -thomas woelfer

  • the download link also.

  • links do not work

  • I just started foaming at the mouth to work with PLINQ and the link is dead as the other commented.  I feel as sad as a 10 year old on christmas who opened a present thinking it was an XBox360.. to find underwear.

  • Looks like someone forgot to turn a switch on, or this post has been sent too son...

  • You've been kicked (a good thing) - Trackback from DotNetKicks.com

  • Sorry for the confusion, the links are now live.

  • The Parallel Computing Platform team has launched a new Parallel Computing Dev Center along with our

  • The Parallel Computing Platform team has launched a new Parallel Computing Dev Center along with our

  • Good to finally see the Parrallel FX library out, cant wait to get to work to try this out. I have been waiting for a while for this to come out.

    Would you know if Microsoft planning to release a full production version of the Microsoft Research Accelerator framework which offers true parallel processing capabilities on the x86 architecture?

  • Veeral: we know that there are many benefits to using vector instructions to execute certain kinds of data parallel operations, like floating point arithmetic.  Accelerator is one exciting example out of MSR that shows that you can use GPGPU capabilities to acheive general purpose vectorization, and, as you point out, x86 offers SSE which can do similar things.  There has been a surge in research in this area -- in fact, the winner of Jim Gray's pennysort contest last year was a GPU-based sort algorithm.

    With that said, we're not committing to adding any such support to ParallelFX at this point, though we're certainly aware of the technologies and possibilities.  Thanks for the question, and if you have additional feedback, please let us know.

    Thanks,

    ---joe duffy

  • .NET FX CTP could be really useful!  Hopefully, this won't automagically turn piggy code into code that is 10 or 100 times more piggy.  I really hope you guys consider incorporating some sort of higher level heuristics into the IDE (or runtime), where something like auto-profiling is built-in and developers can keep a handle on slow code that now uses more cores (IMHO if you write a Piggy Code Enhancer, this severely defeats some of multi-core and many-core main benefits).

  • I cant find the link for the "new MSDN dev center dedicated to concurrent programming." (Parallel Computing Dev Center)

  • Parallel Extensions to the .NET FX CTP(Somasegar's WebLog)より 前から少し話に出ていた PLINQ(Parallel LINQ) の初の CTP が公開になっていますね。

  • Somasegar's WebLog : Parallel Extensions to the .NET FX CTP Joe Duffy's Weblog - Parallel Extensions

Page 1 of 5 (62 items) 12345