Sign In
Parallel Programming with .NET
All about System.Threading, System.Threading.Tasks, System.Collections.Concurrent, System.Linq, and more...
Tags
.NET 4
.NET 4.5
Article Summary
Async
C++
Cancellation
Code Samples
Coordination Data Structures
Dataflow
Debugging
F#
FAQ
Feedback Requested
Media
Message Passing
MSDN
New Feature?
Parallel Extensions
ParallelExtensionsExtras
Parallelism Blockers
PLINQ
Release
Silverlight
Talks
Task Parallel Library
Testing
ThreadPool
Tools
Visual Studio 2010
Browse by Tags
MSDN Blogs
>
Parallel Programming with .NET
>
All Tags
>
plinq
Tagged Content List
Blog Post:
PLINQ Queries That Run in Parallel in .NET 4.5
Igor Ostrovsky - MSFT
One interesting thing to know about PLINQ is that not all queries are guaranteed to execute in parallel (See PLINQ Queries That Run Sequentially for reference). You can think of the AsParallel method as a hint to run in parallel for query shapes that it believes will be faster. By default, PLINQ prefers...
on
10 Nov 2011
Blog Post:
What’s New For Parallelism in .NET 4.5
Stephen Toub - MSFT
.NET 4 and Visual Studio 2010 saw the introduction of a wide range of new support for parallelism: the Task Parallel Library (TPL), Parallel LINQ (PLINQ), new synchronization and coordination primitives and collections (e.g. ConcurrentDictionary), an improved ThreadPool for handling parallel workloads...
on
17 Sep 2011
Blog Post:
PLINQ’s Ordering Model
Igor Ostrovsky - MSFT
In order to execute parallel queries as efficiently as possible, Parallel LINQ (PLINQ) treats ordering as optional. By default, PLINQ considers sequences to be unordered, unless the user explicitly opts into maintaining ordering using either the AsOrdered or the OrderBy operator. Roy Patrick Tan wrote...
on
21 Jun 2010
Blog Post:
Lesser-known Multi-threaded Debugging Support in Visual Studio 2010
Stephen Toub - MSFT
We’ve been very excited about the new debugging windows in Visual Studio 2010, namely Parallel Tasks and Parallel Stacks, as well as the newly revamped Threads window, and thus we’ve talked about them quite a bit. For an overview, you can read the MSDN Magazine article at http://msdn.microsoft.com/en...
on
25 May 2010
Blog Post:
ParallelExtensionsExtras Tour - #14 - SingleItemPartitioner
Stephen Toub - MSFT
(The full set of ParallelExtensionsExtras Tour posts is available here .) In a previous ParallelExtensionsExtras Tour blog post, we talked about implementing a custom partitioner for BlockingCollection<T>. Custom partitioning is an advanced but important feature supported by both Parallel.ForEach...
on
28 Apr 2010
Blog Post:
When To Use Parallel.ForEach and When to Use PLINQ
Igor Ostrovsky - MSFT
If you've played around with PLINQ and Parallel.ForEach loops in .NET 4, you may have noticed that many PLINQ queries can be rewritten as parallel loops, and also many parallel loops can be rewritten as PLINQ queries. However, both parallel loops and PLINQ have distinct advantages in different situations...
on
21 Apr 2010
Blog Post:
ParallelExtensionsExtras Tour - #11 - ParallelDynamicInvoke
Stephen Toub - MSFT
(The full set of ParallelExtensionsExtras Tour posts is available here .) Delegates in .NET may have one or more methods in their invocation list. When you invoke a delegate, such as through the Delegate.DynamicInvoke method, the net result is that all of the methods in the invocation list get invoked...
on
15 Apr 2010
Blog Post:
F# PowerPack supports PLINQ
Stephen Toub - MSFT
The F# team has released the F# PowerPack for download on CodePlex , and we're very excited that the PowerPack now has direct support for PLINQ. From the CodePlex site: F# Parallel LINQ Integration FSharp.PowerPack.Parallel.dll provides an F#-style API for parallel operations on sequences that...
on
10 Feb 2010
Blog Post:
"Parallelism in .NET" Series by Reed Copsey, Jr.
Igor Ostrovsky - MSFT
Reed Copsey, Jr. has been writing a great series of articles on parallelism with the .NET Framework 4. The articles provide the insights of an expert developer who has been using parallelism with .NET to speed up real-world programs. Recommended reading. Parallelism in .NET Introduction Part...
on
10 Feb 2010
Blog Post:
DryadLinq now available also for non-academic use
Massimo Mascaro
Several months ago, Microsoft announced for academic customers the availability of DryadLINQ . DryadLINQ is a LINQ provider developed by Microsoft Research that enables .NET developers to use the LINQ programming model for writing distributed queries and computations against a cluster of computers using...
on
4 Feb 2010
Blog Post:
FAQ :: Why is the speedup not X on my X-way machine?
Danny Shih
We’ll be regularly posting answers to frequently asked questions that we’ve gotten on the forum, internal email lists, etc. Here’s the first – enjoy! Why is the speedup not X on my X-way machine? Or, why does my parallel code run slower? Less than ideal speedup can typically be attributed to two...
on
5 Jan 2010
Blog Post:
A Tour Through the Parallel Programming Samples for .NET 4
Stephen Toub - MSFT
On Code Gallery, we have a plethora of samples that highlight aspects of the .NET Framework 4 that help with writing scalable and efficient parallel applications. This post examines each of those samples, providing an overview of what each provides. Project Name: AcmePizza Languages: C#, Visual...
on
9 Dec 2009
Blog Post:
Reactive Extensions and Parallel Extensions
Stephen Toub - MSFT
It’s awesome to see the Reactive Extensions to .NET (Rx) live on the DevLabs site. If you haven’t checked out this exciting project, we urge you to do so. Not only is it cool and useful technology, but the download includes a back ported (and unsupported) release of Parallel Extensions for...
on
19 Nov 2009
Blog Post:
Scaling out PLINQ: DryadLINQ at PDC09 and Supercomputing09
Stephen Toub - MSFT
PLINQ enables developers to scale up computations in order to leverage the multiple cores available in modern hardware. For many problem domains, this is quite useful and sufficient. What happens, however, when a workload being processed is so big that even a manycore machine is insufficient to adequately...
on
11 Nov 2009
Blog Post:
What's New in Beta 2 for PLINQ
essey
Included in the .NET 4 Framework Beta 2 is a more robust and faster version of PLINQ. Between B1 and B2, PLINQ changes have mainly been under the covers, so hopefully no need to rewrite any of your applications to see the improvements. 1. Many improvements to performance and scalability 2. GroupBy...
on
5 Nov 2009
Blog Post:
Slides from Parallelism Tour
Stephen Toub - MSFT
Last week, I had the privilege of touring around Tennessee, Kentucky, Ohio, and Michigan, speaking about the new parallel computing support in Visual Studio 2010 and the .NET Framework 4. Many folks I spoke with were interested in getting a copy of the slide deck I used, so I’ve attached it to this blog...
on
1 Nov 2009
Blog Post:
Parallelized Map and Filter Operations
Stephen Toub - MSFT
Common operations like map and filter are available in parallelized form through PLINQ, though the names differ. A map can be achieved with PLINQ’s Select operator, and a filter with PLINQ’s Where operator. For example, I could implement a ParallelMap operation that takes in one array and returns...
on
12 Oct 2009
Blog Post:
Parallel Extensions and I/O
Danny Shih
In this post, we’ll investigate some ways that Parallel Extensions can be used to introduce parallelism and asynchrony to I/O scenarios. Here’s a simple scenario. I want to retrieve data from a number of web resources. static string[] Resources = new string[] { "http://www.microsoft.com"...
on
4 Aug 2009
Blog Post:
Cancellation in Parallel Extensions
Mike Liddell
One of the great features that crosses all of Parallel Extensions types is a consistent approach to cancellation (see http://blogs.msdn.com/pfxteam/archive/2009/05/22/9635790.aspx ). In this post we explore some of the ways cancellation is used in Parallel Extensions and explain the guidance we developed...
on
22 Jun 2009
Blog Post:
How PLINQ processes an IEnumerable<T> on multiple cores
Igor Ostrovsky - MSFT
As Ed Essey explained in Partitioning in PLINQ , partitioning is an important step in PLINQ execution. Partitioning splits up a single input sequence into multiple sequences that can be processed in parallel. This post further explains chunk partitioning, the most general partitioning scheme that works...
on
13 Jun 2009
Blog Post:
ParallelOptions.MaxDegreeOfParallelism vs PLINQ’s WithDegreeOfParallelism
Stephen Toub - MSFT
We exert a good deal of effort ensuring that the APIs we provide are consistent within Parallel Extensions as well as with the rest of the .NET Framework. This is from many angles, including behavior and general design, but also naming. So when there are slight differences in naming, it raises...
on
29 May 2009
Blog Post:
Samples for Parallel Programming with the .NET Framework 4
Stephen Toub - MSFT
Along with the release of the .NET Framework 4 Beta 1 , we've just published a slew of samples that demonstrate using Parallel Extensions in a variety of ways. You can download these from Code Gallery at http://code.msdn.microsoft.com/ParExtSamples . These samples include raytracers, a sudoku game...
on
20 May 2009
Blog Post:
What’s new in Beta 1 for Parallel LINQ (PLINQ)?
essey
A number of improvements have been made to Parallel Extensions since the Visual Studio 2010 CTP across the Task Parallel Library (TPL), Parallel LINQ (PLINQ), and our coordination data structures. You can find the latest on TPL ( 1 2 3 ) and the data structures ( link ) on this blog. Here are the big...
on
29 Apr 2009
Blog Post:
.NET Framework 4.0 Poster for Download
Stephen Toub - MSFT
Brad Abrams posted about a cool .NET Framework 4.0 poster which was distributed at the PDC last week and which you can download . Zoom in on the CORE section right in the middle for a glimpse into the parallelism support in .NET 4.0.
on
4 Nov 2008
Blog Post:
Concurrent, Multi-core Programming on Windows and .NET
Stephen Toub - MSFT
Thanks to everyone who attended our PDC pre-conference session yesterday on parallelism and concurrency! We had a wonderful turnout at the event, and David, Joe, and I all had a terrific time. Attached to this post are the slides we presented. (It turns out that the PDC site does allow you to submit...
on
28 Oct 2008
Page 1 of 2 (43 items)
1
2