Lecture 18

Learning objectives

After this class, you should be able to:

  1. Explain the idea behind divide and conquor, which is used to develop efficient parallel algorithms.
  2. Define the terms (i) speedup, (ii) efficiency, and (iii) work.
  3. Given the time on a single processor, the number of processors, and the time taken by an algorithm on those processors, compute the speedup, efficiency, and work.

Reading assignment

  1. Handout on Parallel algorithms.
  2. Refer to an online parallel computing book. For example, section 2.3 discusses reduction, section 3.3 discusses performance metrics, and section 4.6 discusses matrix multiplication (this is more complicated than matrix-vector multiplication, but does show the benefits of a 2-D decomposition).

Exercises and review questions


Last modified: 9 Nov 2011