|
The Three Stages of Preparation for Optimizing Parallel Software Together, these three stages help software development organizations optimize their software efficiently, evolving it to take advantage of increasing numbers of processor cores.
8 Simple Rules for Designing Threaded Applications 8 Simple Rules that you should keep in mind when you are designing the threading that will transform a serial application into a parallel version.
The Serial On-Ramp to the Multicore Highway: Preparing to Parallelize Code by Andrew Binstock - This article discusses how coding and optimization on-the-fly are opposed and how performance experts approach performance improvement. It explains how they systematically prepare their code for optimization and how the optimization process is done.
Square Pegs and Round Holes- Evolving your serial code to take advantage of task and data parallelism from multiple cores and data parallelism from SIMD capabilities in Intel® processors requires knowing which parallel programming tools to choose for your project. Intel offers many software development tools for parallelism. This article looks at Intel tools and recommends how to choose the right tools for your project and development environment.
Specific information to support Intel Software Partners "Develop and Solve: Multi-Core Solutions."
List of Books on parallel programming and multi-core software development.
Complete list of Multicore Technical Articles.
Working with Java "Multi-threading in a Java Environment", Article by Allan McNaughton
The Java* Resource Center (on ISN) is a collection of resources to help you optimize your Java applications for Intel Architecture.
|
Intel® Parallel Advisor 2011 - Simplifies threading your code by identifying those areas in your serial and parallel applications where parallelism would have the greatest impact. View the new Parallel Advisor video to see how it could work for you.
Open source TBB - instead of Open MP or Win32
Intel Guide for Developing Multithreaded Applications (For more advanced parallel programmers)
Case Studies Read about successful Parallel Programming
The Wild West Approach to Better Concurrency: Emotional Robots Takes the Parallel Path.
Accelerating Parallel Performance: Pervasive DataRush* Taps Cores Effectively
Geschickten's GenoicsCloud Solution Exploits Multi-Core Potential to the Max: Delivering HPC On Demand to the Biosciences Community
|
Introduction to Parallel Programming video lecture series - Part 01 "Why Parallel? Why Now?" This lecture endeavors to define parallel computing, explain why parallel computing is becoming mainstream, and explain why explicit parallel programming is necessary.
Introduction to Parallel Programming video lecture series - Part 02 "Parallel Decomposition Methods" This part endeavors to give the viewer strategies that can identify opportunities for parallelism in code segments and applications. Three methods for dividing computation into independent work are illustrated.
A Visual Guide to Key Concepts in Threaded Programming - Common Problems and How to Solve Them (Intel) - Dr. Clay Breashears, senior parallel architect, Intel Academic Community, takes us through common threading problems and suggests how to plan for and solve them. He also discusses a number of useful design patterns, illustrating how they work and suggests when they are most applicable to your applications.
Working with .NET Threading in .NET - Best Practices, 12 min. video, first in a series of 7 videos (Link takes you to a page with the first video, plus links to the other videos.) "This series was designed for current .NET developers who have an interest in threading but have not had extensive experience in threading nor how threading enables improved performance on multi-core systems.
TechEd: How .NET developers benefit from multicore platforms Excerpts from a talk by Intel's Rami Radi at Microsoft Tech Ed Europe, 5 min. 30 sec. video
|