Tuning a Parallel LINQ File Search Application
Ever wonder what performance issues you will run into when you attempt to take advantage of the new Parallel processing capabilities in .NET 4.0 and Visual Studio 2010?
Ever think that all it takes to go from LINQ to PLINQ is to add a “.AsParallel()” statement to your LINQ query?
This post explores the performance issues that arise when using PLINQ to parallelize queries, and illustrates how the Concurrency Visualizer in Visual Studio 2010 can be a valuable tool in identifying performance bottlenecks and making efficient and profitable parallelization choices.
The subject of this entry is a toy application that scans a set of files for a user-specified pattern and performs some processing every time it finds an occurrence of the pattern. The processing in this case is a simple count of the number of matches. In spite of its small size, the application provides insight into several issues that arise in parallelization using PLINQ.
Check-out this informative post by the Parallel Computing team: