1 / 11

CS 584 Lecture 4

CS 584 Lecture 4. Assignment?. PCAM Modeling Review. Partitioning Ignore the number of processors and the target architecture. Expose opportunities for parallelism. Divide up both the computation and data domain decomposition functional decomposition. Communication.

arleen
Download Presentation

CS 584 Lecture 4

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CS 584 Lecture 4 • Assignment?

  2. PCAM Modeling Review • Partitioning • Ignore the number of processors and the target architecture. • Expose opportunities for parallelism. • Divide up both the computation and data • domain decomposition • functional decomposition

  3. Communication • Tasks execute concurrently. • Data dependencies may limit concurrency. • The information flow between tasks is specified in this stage of the design

  4. Communication • Define Channel • Link the producers with the consumers. • Consider the costs • Intellectual • Physical • Distribute the communication. • Specify the messages that are sent.

  5. Communication Patterns • Local vs. Global • Structured vs. Unstructured • Static vs. Dynamic • Synchronous vs. Asynchronous

  6. Local Communication • Communication within a neighborhood. Algorithm choice determines communication.

  7. Global Communication • Not localized. • Examples • Reduction • Master-Slaves

  8. Unstructured Communication • No regular pattern that can be exploited. • Examples • Unstructured Grid • Resolution changes in critical areas • Complicates the next stages of algorithm design: agglomeration and mapping.

  9. Asynchronous Communication • Timing of send/receive is unknown. • Distributing the data structure • Among computational tasks (polling) • Define a set of read/write tasks • Shared Memory

  10. Problems to Avoid • A centralized algorithm • Distribute the computation • Distribute the communication • A sequential algorithm • Seek for concurrency • Divide and conquer • Small, equal sized subproblems

  11. Communication Design Checklist • Is communication balanced? • All tasks about the same • Is communication limited to neighborhoods? • Restructure global to local if possible. • Can communications proceed concurrently? • Can the algorithm proceed concurrently? • Find the algorithm with most concurrency. • Be careful!!!

More Related