190 likes | 354 Views
MIMD Computers. Module 4. PMS Notation (Bell & Newell, 1987). Similar to a block notation, except using single letters Can augment letter with ( ) containing attributes. PMS Notation. MIMD - Definition. MIMD – Multiple data stream Multiple control (instruction) streams
E N D
MIMD Computers Module 4
PMS Notation (Bell & Newell, 1987) • Similar to a block notation, except using single letters • Can augment letter with ( ) containing attributes
MIMD - Definition MIMD – Multiple data stream Multiple control (instruction) streams Generally considered asynchronous Multiprocessor: single integrated system containing multiple PCs, each capable of executing an independent stream of instructions, but is an integrated system for moving data among PC, memory, I/O
MIMD – General Usage • Can use each PC for a different job – multiprogramming • Our interest: use for one job
Granularity/Coupling Course Grain/Loosely Coupled: infrequent data communication separated by long periods of independent computations Fine Grain/Tightly Coupled: frequent data communications, usually in small amounts Grain: determined by program subroutines, basic blocks, stream or machine level
Types of MIMD Characterized by how data/information from one PC is made available to other PCs • Shared memory • Message passing • Fixed connection • Distributed memory
Types of MIMD Shared memory and message-passing multiprocessors
Switches In distributed memory –> interconnection n.w. Features: Bandwidth: bytes per second Bisection bandwidth (the bps across an interface that partitions the network into two equal groups.) Latency: total time from transmission to reception Concurrency: number of independent connections that can be made (bus has concurrency = 1)
Hybrid Computers – Mixed Type Many shared memory PC have some local memory NUMA: non-uniform memory access – some memory locations have larger access time Shared memory multiprocessor with private memories.
Hybrid Computers – Mixed Type Clusters: group of shared memory PC’s plus memory “separated” from other clusters; clusters message passing between clusters
Shared Memory Features • Interprocessor communication via R/W instructions • Memory: maybe physically distributed (banks), may have different access times, may collide in switch • Memory latency maybe “long”, variable • “Messages” thru switch generally one “word” • Randomization of request maybe used to reduce memory collisions
Message Passing Features Aka Distributed Memory • Interprocessor communication via send/receive instructions • R/W refer to local memory • Data maybe collected into long messages before sending • Long transmissions may mask latency • Global scheduling maybe used to avoid message collisions
Ring Topology Scale: number links/PC - constant Message passing multiprocessors distinguished from one another by their topology
Mesh Topology - Torus Scale: number link/PC – constant (unless?)
Hypercube Scale: number link/PC –increases logarithmically
Specification of Network L – Link (often omitted) • Direction: Unidirectional or bidirectional • Bandwidth (B): In bytes/sec • Latency (R): Start of send to delivery of first byte • Single PC to PC or pipelined (each link can be occupied)