# COMP308 Efficient Parallel Algorithms by sdfwerte

VIEWS: 3 PAGES: 12

• pg 1
```									COMP308
Efficient Parallel Algorithms
Revision
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               Sorting Networks
 PRAM model            Communication
 PRAM algorithms        algorithms
 Tree algorithms       Parallel Virtual

 Graph algorithms
Machine
 Unconventional
 Mesh connected
networks & Sorting     models and
1. Metrics and basic notions
 Parallel time                              Efficiency = p
S p

T
 Cost                       S( p) =    1
T  p      Cost = p  T
p

 Efficiency,
Upper bound on speedup
 Speed-up,                                  1
 Bounds (Amdahl Law)                 S 
f
------------------------------------------------------
 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, 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 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
 The Euler-tour technique
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 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
 Scatter
 Gather
 Reduce
7. Communication operations
   Store and forward routing
   Cut-through routing
◦   Broadcast on ring
◦   Broadcast on mesh
◦   Broadcast on tree
◦   Broadcast on hypercube
   Gossiping problem
Unconventional models
   Cellular automaton
◦ Majority problem – Rule 184
◦ Simulation with 2D environment
   Swarm algorithms
◦ Swarming – Characteristics
◦ Culture model and Adaptive Culture model
   Membrane computing: P-systems
◦ Basic definition
◦ Square function and divisibility
   DNA computing
◦ Adleman Experiment: Hamiltonian Path Problem

```
To top