Download presentation
Presentation is loading. Please wait.
1
Parallel algorithm design
Group 2 - Lukasz Wisniewski, Dave Edwards, Junjie Tang
2
Things to take into consideration
Partitioning - how and what to split Communication - how and what tasks (processes) communicate Agglomerate (granularity) - how big each communication or computation chunk is Map - how and when is data or computation split
3
Algorithm models Data-parallel model - data is split between processes
Task graph model - split data or computations into a graph Work pool model - dynamically add to and assign tasks from a pool (i.e. stack) Master-slave model - master splits work between workers Pipeline model - each processor does different part of computation on data Hybrid models - different models combined
4
Algorithm decision tree
5
References I. T. Foster, Designing and Building Parallel Programs, Addison-Wesley, 1995 A. Grama, A. Gupta, G. Karypis, and V. Kumar, Introduction to Parallel Computing, 2nd. ed., Addison-Wesley, 2003 T. G. Mattson and B. A. Sanders and B. L. Massingill, Patterns for Parallel Programming, Addison-Wesley, 2005
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.