150 likes | 344 Views
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
E N D
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 - mapping to architecture can be difficult
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
Shared Memory Multiprocessors Problems??? Symmetric multiprocessor (SMP)
Distributed Memory Multiprocessors • Distributed shared-memory multiprocessor • Message passing multiprocessor
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)
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
Programming • lock variables • semaphores • monitor • …
Outlook • Distributed Algorithms • Distributed Systems • Parallel Programming • Parallel Compilers