Samples for Parallel programming with the. NET Framework

Source: Internet
Author: User
Tags value of pi

The. NET Framework 4 includes significant advancements for developers writing parallel and concurrent applications, includ ing Parallel LINQ (PLINQ), the Task Parallel Library (TPL), new Thread-safe collections, and a variety of new coordination and synchronization data structures.

This is sample includes example applications and library functionality that demonstrate, utilize, and augment this support (i T is not production quality). This sample is a single. zip containing a single Visual studio. sln file, which then contains multiple Visual Studio proje CTS that highlight key capabilities provided by the. NET Framework 4 and the parallel programming support it provides. Below is descriptions of the included examples.

(for discussions of Parallel Extensions and/or these samples, visit the Forums Athttp://social.msdn.microsoft.com/foru Ms/en-us/parallelextensions/threads. For documentation on the parallelism constructs in. NET 4, seehttp://msdn.microsoft.com/en-us/library/dd460693 (vs.100). aspx. For information direct from the Parallel Extensions team, subscribe to the team blog Athttp://blogs.msdn.com/pfxteam. For videos/articles on parallelism and Parallel Extensions, visit the Parallel Computing Developer Center athttp://msdn.co M/concurrency.)

Project Name: Acmepizza           Languages: C #, Visual basic           Description: This simple and somewhat silly application Demonstrates using concurrent collections with wpf.  the collections is wrapped with observable facades, such that M Ultiple threads may modify the collections concurrently, and those updates is safely propagated to UI Controls. &nbs p;       
Project Name: antisocial robots          Languages: c#           Description: demonstrates doing a computationally-intensive Operation many times per second, as a bunch of "robots" try to get as far away from each other as POSSIBLE.  &NB sp;      
Project Name: babynames           Languages: C #, Visual basic           Description: This is one of the first applications we ever BU Ilt to use Parallel linq.  Using LINQ and PLINQ, it queries a data set of baby name popularity information, sorts the Results, and displays the results in a simplistic WPF user interface.        &nb sp; 
Project Name: blendimages           Languages: c#           Description: A demo of very simple image manipulation using A parallel.fo R loop.  The application allows the user to load up both images and blends them together into a single, new Image.&nbs p;        
Project Name: Boids Languages: C # Description: An implementation of a classic flocking algorithm, util Izing WPF for pretty 3D visualization of the "Boids", whose next positions and velocities is computing in parallel.
Project Name: Computepi Languages: C #, Visual Basic Description: A Console application that estimate s the value of PI using a variety of both serial and parallel implementations, the latter done with both PLINQ and the Par Allel class.
Project Name: diningphilosophers          Languages: C #, Visual basic          Description: A WPF application that Demonstrates the classic "Dining Philosophers" synchronization problem.  the application implements several solution s, including one based on asynchronous techniques using Tasks.
Project Name: Editdistance Languages: C #, Visual Basic Description: A Console application that uses Tasks to parallelize a dynamic programming problem, and that's computing the "edit distance" between both strings.
Project Name: Gameoflife Languages: C #, Visual Basic Description: This application provides an imple Mentation of Conway ' s Game of life, using the Parallel class to parallelize the processing of the cellular automata.
Project Name: Imagecolorizer Languages: C #, Visual Basic Description: This application manipulates a n Image by converting the majority of the image to grayscale, except for portions of the image containing user-selected Hu Es.
Project Name: Linqraytracer Languages: C #, Visual Basic Description: Based on Luke Hoban ' s LINQ impl Ementation of a ray tracer, this application parallelizes a computationally intensive LINQ query using PLINQ.
Project Name: Mandelbrotfractals Languages: C #, + /CLI Description: This application provides an IM Plementation of the Classicmandelbrot fractal, parallelizing the processing of the fractal using the Parallel class.
Project Name:  Morph Languages: C # Description: Implements A morphing algorithm between-images. Parallelization is done using the Parallel class.
Project Name: Nbodysimulation Languages: C #, F # Description: Implements A classic n-body simulation us ing C # and WPF for the UI and using F # for the core computation. Parallelism is achieved using the Parallel class.
Project Name: Nqueens Languages: C #, Visual Basic Description: This application implements a Solutio N to the N-queens problem, using both LINQ and PLINQ.
Project Name: Optionpricing Languages: C #, Visual Basic Description: This Excel VSTO application UTI lizes PLINQ to Price Asian Options.
Project Name: Parallelgrep Languages: C #, Visual Basic Description: this console application Impleme NTS "grep" functionality across a file system using PLINQ.
Project Name: plinqknobs          Languages: c#          Description: A Simple Console application that demonstrates some of the ways execution of a PLINQ query may controlled and configured.        
Project Name: raytracer           Languages: C #, Visual Basic, f#           Description: This Windows application provides an Animated, ray-traced bouncing ball.  sequential and parallel implementations are provided, as is a special parallel I Mplementation that colors the animated image based on which thread is used to calculate which regions.
Project Name: Raytracer Languages: C # Description: This WPF application is a Reversi GA  Me. The AI algorithms is minimax with Alpha-beta pruning, and the parallel AI (light player) uses Tasks and CancellationToken s to achieve speedup via parallelism.
Project Name: Shakespeareanmonkeys Languages: C #, Visual Basic Description: This application impleme NTS and parallelizes a genetic algorithm for breeding monkeys able to speak text from Hamlet.
Project Name: Spellchecker Languages: C #, Visual Basic Description: This application implements and Parallelizes a spellchecking algorithm based on the same edit distance calculation in the edit distance sample.
Project Name: Strassens Languages: C # Description: This application implements several algorithms fo R Performing and parallelizing matrix multiplication, including Thestrassen algorithm.
Project Name: sudoku           Languages: C #, Visual basic           Description: This was a fun application, provides a full Sudoku E Xperience, including On-demand puzzle generation and solving.  unlike many Sudoku demos which parallelize the Solver, This implementation parallelizes the generator, using plinq.  It also demonstrates a use for speculative execution.< /td>
Project Name: Visualizepartitioning Languages: C #, Visual Basic Description: This application demons Trates various approaches to partitioning as employed by both Parallel and PLINQ.
Project Name: Parallelextensionsextras Languages: C # Description: This class library provides a plethora of I Nteresting and useful extensions to take advantage of and complement the functionality available in the. NET Framework 4 F or parallel programming.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.