The lecture given here is the second part in the “Introduction to Parallel Programming” video series. 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 (Domain Decomposition, Task Decomposition, and Pipelining) are illustrated. The first two methods will be examined in later parts of the series and lab exercises.
Running time: 8:47
The module interleaves compiler and performance analyzer topics with essential architecture topics. General architecture topics include:
- Exploiting the architecture - taking advantage of: SSE how to get instructional parallelism in a single core.
- Multi-core architecture: how to use OpenMP and or Intel® CilkPlus™ to get parallelism from multiple cores Program organization via cache utilization, efficient data structures and loop performance.