1 / 15

Multiprocessors

Multiprocessors. Andreas Klappenecker CPSC321 Computer Architecture. Idea. Build powerful computers by connecting many smaller ones. . Multiprocessors. + Good for timesharing + easy to realize - difficult to write good concurrent programs - hard to parallelize tasks

asta
Télécharger la présentation

Multiprocessors

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. Multiprocessors Andreas Klappenecker CPSC321 Computer Architecture

  2. Idea Build powerful computers by connecting many smaller ones.

  3. Multiprocessors + Good for timesharing + easy to realize - difficult to write good concurrent programs - hard to parallelize tasks - mapping to architecture can be difficult

  4. Questions • How do parallel processors share data? — single address space — message passing • How do parallel processors coordinate? — synchronization (locks, semaphores) — built into send / receive primitives — operating system protocols • How are they implemented? — connected by a single bus — connected by a network

  5. Shared Memory Multiprocessors Problems??? Symmetric multiprocessor (SMP)

  6. Distributed Memory Multiprocessors • Distributed shared-memory multiprocessor • Message passing multiprocessor

  7. Multiprocessors

  8. Connection Network • Static Network • fixed connections between nodes • Dynamic Network • packet switching (packets routed from sender to recipient) • circuit switching (connection between nodes can be established by crossbar or switching network)

  9. Static Connection Networks

  10. yk-1xk-1 . . . x2yk-2 yk-1 yk-2. . . xk-1y1 xk-1 . . . x1 yk-1 yk-1 yk-2xk-1 . . . x3yk-3 x2 x1 y1 x0 xk-1 y0 yk-2 yk-3 xk-2 yk-1 Circuit Switching: Delta Networks • Route from any input x to output y by selecting links determined by successive d-ary digits of y’s label. • This process is reversible; we can route from output y back to x by following the links determined by successive digits of x’s label. • This self-routingproperty allows for simple hardware-based routing of cells. 0101 1 1 0 1 0 1 1101 0 1 x=xk-1 . . . x0 y=yk-1 . . . y0

  11. Network versus Bus

  12. Performance / Unit Cost

  13. Programming • lock variables • semaphores • monitor • …

  14. Cache Coherency

  15. Outlook • Distributed Algorithms • Distributed Systems • Parallel Programming • Parallel Compilers

More Related