Work Stealing Queues in .Net 4 and in Previous Versions – Go Parallel
Posted on http://www.ddj.com/go-parallel
.Net 4.0 Beta 1 offers a new and improved thread pool engine. It uses work stealing queues to provide nice load-balancing capabilities, better performance and greater scalability. The work stealing mechanism allows you to reduce the scheduling overhead in highly parallelized algorithms.
Read more here
Lightweight Concurrency: Threads are on a Diet – Go Parallel
Posted on http://www.ddj.com/go-parallel
Most modern programming languages are adding lightweight concurrency capabilities. Why is this happening? It is a response to the multicore revolution. You need more parallelism in your applications and you need it without adding a great overhead.
Read more here
Debugging Multithreaded Applications as Singlethreaded in C#
Posted on Packt Publishing Article Network
In order to solve problems that arise in concurrently running threads in applications, we need new debugging techniques suitable for the new parallelism environments that occur in Visual C#. In this article, you will learn many tricks and debugging procedures that will help you find solutions to multithreaded application problems and have a better understanding of the execution of parallel threads.
In this article, you will be performing the following exercises:
* Find out how to freeze some threads to stop concurrency and simplify the process for debugging one thread at a time.
* Learn to set and control breakpoints with multithreaded applications.
* Discover how to inspect values when multiple threads are accessing the variables that hold them .
* Develop multithreaded applications that show partial results to help us in the debugging process.
Use lambda expressions in C# to simplify the parallelized code
Posted on Intel Software Network
So, you want to start using Task Parallel Library Beta 1. You want to take advantage of the new features that will be available in .Net 4.0. Hold on! Are you familiar with lambda expressions?
Watching Multiple Threads in C#
Posted on Packt Publishing Article Network
In order to solve problems that arise in concurrently running threads in applications, we need new debugging techniques suitable for the new parallelism environments that occur in Visual C#. Multicore programming and parallel programming require new debugging techniques.
Learn some tricks to prepare multithreaded code to simplify the debugging and troubleshooting processes.
Specifying the desired degree of parallelism in .Net 4.0 TPL Beta 1
Posted on Intel Software Network
Sometimes, you don’t want to use all the available cores in a parallel loop. Why? Because you have better plans for the remaining available cores. Thus, you want to specify the concurrency level of a parallel loop. Luckily, Task Parallel Library Beta 1 will allow you to do this using the new ParallelOptions class.
Counting cores in .Net and Java
Posted on Intel Software Network
As C# and Visual Basic (in the .Net world) and Java are high level programming languages, most developers were not used to check for some hardware information. With multicore microprocessors and a task-oriented programming model, trying to take full advantage of parallel processing capabilities offered by modern microprocessors, this is changing.
Counting cores in .Net and Java
Posted on Intel Software Network
As C# and Visual Basic (in the .Net world) and Java are high level programming languages, most developers were not used to check for some hardware information. With multicore microprocessors and a task-oriented programming model, trying to take full advantage of parallel processing capabilities offered by modern microprocessors, this is changing.
Invoking parallel tasks
Posted on Intel Software Network
In a recent post, Robert Chesebrough (Intel) talked about less focus on threads and more focus on tasks. I agree with him. I do believe that decomposing the job to be done into many tasks is the key to a successfully parallelized algorithm.
Full story: http://software.intel.com/en-us/blogs/2009/04/28/invoking-parallel-tasks/
Running a parallelized C# threaded application using different number of cores in Windows Vista
This video shows the difference between using one core and four cores in a highly threaded, parallelized application programmed in Visual C# 3.0 (2008). Many people say multicore CPUs are useless. Watching this video you will find out that there is a lot of power in multicore CPUs. Developers must tackle the multicore revolution to exploit multicore CPUs in new applications.
The application uses the excellent AForge.Net C# imaging library. For more information about it, visit: www.aforgenet.com
The application shown in the video is developed and explained in Chapter 12: Developing a Completely Parallelized Application.
This is the chapter’s table of contents:
Joining many different parallelized pieces into a complete application
Time for action – Creating an opacity effect in an independent thread
Running code out of the UI thread
Time for action – Creating a safe method to change the opacity
Blocking the UI—Forbidden with multithreading code
Time for action – Creating a class to run a task in an independent thread
Time for action – Putting the logic into methods to simplify running tasks
in a pool of threads
Time for action – Queuing requests, running threads, and updating the UI
Combining threads with a pool of threads and the UI thread
Time for action – Creating a specialized parallel algorithm piece subclass
to run concurrently with the pool of threads
Time for action – Creating a specialized parallel algorithm coordination
subclass to run concurrently with the pool of threads
Time for action – Overriding methods in the brightness adjustment
coordination subclass
Time for action – Starting new threads in a new window
Creating threads inside other threads
Time for action – Showing new windows without blocking the user
interface
Multiple windows and one UI thread for all of them
Rationalizing multithreaded code
Summary
For more information visit: http://www.packtpub.com/beginners-guide-for-C-sharp-2008-and-2005-threaded-programming/book
-
Archives
- October 2009 (12)
- July 2009 (9)
- June 2009 (4)
- May 2009 (14)
- April 2009 (4)
- March 2009 (2)
- February 2009 (7)
-
Categories
- .net
- .Net 4.0
- 3D engine
- Actors
- Atom
- background workers
- Balder
- benchmarks
- book
- c threading
- C#
- Cloud computing
- concurrent programming
- concurrent threads
- Core i7
- cshap
- csharp
- debugging
- design
- diagrams
- Fan
- game development
- games
- Groovy
- hardware threads
- HTML 5
- Hyper-Threading
- Intel
- Intel Atom
- Intel Concurrency Checker
- Intel Parallel Studio
- Java
- Java 7
- Javascript
- Jetlang
- lambda expressions
- metrics
- MIDs
- multi-threaded
- multicore
- multicore programming
- multicore testing
- multiprocessor
- netbooks
- parallel extensions
- parallel performance
- parallel programming
- Parallelism
- Parallelized LINQ
- PLINQ
- podcast
- processes
- RIA
- Rich Internet Applications
- scalability
- scheduling
- scripts
- Silverlight
- Silverlight 3
- SIMD
- software threads
- tasks
- threaded
- TMonitor
- UML
- Uncategorized
- video
- VirtualBox 3.0
- virtualization
- Visual Studio 2010
- Webworkers
- Windows 7
- Windows Vista
-
RSS
Entries RSS
Comments RSS
I am researching about parallel programming, multiprocessor and multicore since 1997. My last research is a new Packt’s book,