COMP 308 Efficient Parallel Algorithms Revision COMP 308

  • Slides: 12
Download presentation
COMP 308 Efficient Parallel Algorithms Revision

COMP 308 Efficient Parallel Algorithms Revision

COMP 308 Exam Time allowed : 2. 5 hours Answer four questions (out of

COMP 308 Exam Time allowed : 2. 5 hours Answer four questions (out of five). If you attempt to answer more questions than the required number of questions, the marks awarded for the excess questions will be discarded (starting with your lowest mark). In each question you will see 3 problems which usually marked as 10, 10 and 5

Topics: Metrics PRAM model PRAM algorithms Tree algorithms Graph algorithms Mesh connected networks &

Topics: Metrics PRAM model PRAM algorithms Tree algorithms Graph algorithms Mesh connected networks & Sorting Networks Communication algorithms Parallel Virtual Machine Unconventional models and paradigms

1. Metrics and basic notions Parallel time Cost Efficiency, Speed-up, Bounds S( p) =

1. Metrics and basic notions Parallel time Cost Efficiency, Speed-up, Bounds S( p) = T 1 Tp Sp Efficiency = p Cost = p Tp Upper bound on speedup (Amdahl Law) -------------------------- Complexity Classes: NC, P Tractable and intractable problems for parallel computers (P-complete problems)

Basics of parallel computing Coarse and fine grained computations Models ◦ PRAM model EREW,

Basics of parallel computing Coarse and fine grained computations Models ◦ PRAM model EREW, CRCW, CREW, ERCW ◦ MIMD, SISD, SIMD, MISD Network topologies: ◦ Ring, Mesh, Tree, Hypercube

2. PRAM algorithms Activation of n processors Finding minimum of n numbers Sum of

2. PRAM algorithms Activation of n processors Finding minimum of n numbers Sum of elements in an array Computing of the first 1 in the sequence of 0’s and 1’s Simulation of CRCW algorithm by EREW model

3. Basic parallel techniques Balanced binary tree technique Doubling technique Parallel divide and conquer

3. Basic parallel techniques Balanced binary tree technique Doubling technique Parallel divide and conquer The Euler-tour technique

4. Tree and Graph algorithms List ranking problem Parallel prefix sum computation Parallel algorithms

4. Tree and Graph algorithms List ranking problem Parallel prefix sum computation Parallel algorithms for expression evaluation ◦ Simultaneous Substitutions Method ◦ A parallel pebble game Parallel Computation of Transitive Closure Problem (Warshall algorithm) ◦ Coarse grained vs. Fine grained Parallel construction of Euler cycles.

5. Sorting algorithms Mesh connected networks. ◦ Sorting on 1 -dim mesh ◦ Sorting

5. Sorting algorithms Mesh connected networks. ◦ Sorting on 1 -dim mesh ◦ Sorting on 2 -dim mesh Comparison networks ◦ The zero-one principle ◦ Bitonic and Merging sorting networks ◦ Batcher’s merging network You need to be able to construct sorting networks

6. Parallel Virtual Machine (PVM) Basics of Message-Passing Programming Broadcast Scatter Gather Reduce

6. Parallel Virtual Machine (PVM) Basics of Message-Passing Programming Broadcast Scatter Gather Reduce

7. Communication operations Store and forward routing Cut-through routing Broadcasting problem ◦ ◦ Broadcast

7. Communication operations Store and forward routing Cut-through routing Broadcasting problem ◦ ◦ Broadcast on ring Broadcast on mesh Broadcast on tree Broadcast on hypercube Gossiping problem

Unconventional models and paradigms Cellular automaton ◦ Majority problem – Rule 184 ◦ Simulation

Unconventional models and paradigms Cellular automaton ◦ Majority problem – Rule 184 ◦ Simulation with 2 D environment Swarm algorithms ◦ Swarming – Characteristics ◦ Culture model and Adaptive Culture model Membrane computing: P-systems ◦ Basic definition, ◦ Maximal parallelism in membrane computation model ◦ Square function and divisibility DNA computing ◦ Adleman Experiment: Hamiltonian Path Problem Quantum computations ◦ Deutsch's problem. Main ideas of quantum computations, quantum information.