In need of a Parallel programmin training vendor or person

who could deliver a course like this.

Thanks,
Greg
VP Web Age Solutions

“The only way to increase performance with new processor generations is now to increase the number of processor cores. All programming will therefore have to be for parallel systems but for the smallest of systems with low performance requirements. However, also there, multicore processors will be used in order to reduce the system energy consumption.

This course provides insights in the different models of how multicore processors can be utilized in practice. Some of these models concern consolidation, where several single CPU solutions are merged into a multicore processor solution. Other models concern parallel programming, in which the purpose is to utilize the cores of a multicore processor to speed up an individual application. This will be the topic of the bulk of the course. We will in this part study parallel programming models, system software and processor architecture designed for performance as well as performance modeling tools and techniques.

Learning Objectives:
On completion of this course the participants will be able to have knowledge about the following topics:
1 Models of multicore computing
2 Introduction to parallel computing (in contrast to concurrent computing), i.e. computing for performance
3 Parallel computer hardware and architecture
4 Parallel computing paradigms
5 Synchronization issues
6 A survey of programming models
7 Shared memory VS message passing etc.
8 A more thorough introduction to task-centric models (OpenMP 3.0, Intel Cilk Plus, Intel TBB, etc.)
9 Performance analysis and debugging
10 Application limitations”