Lecture 2

Learning objectives

After this class, you should be able to:

  1. Describe the following architectural features: pipelining, super-scalar execution, out of order execution, speculative execution.
  2. Describe the difference between the following types of parallelism: instruction level parallelism, data level parallelism, and thread level parallelism.
  3. Describe the four categories in Flynn's classification.
  4. Explain the difference between shared memory and shared network computers.
  5. Explain the cache coherence problem and two ways of handling it.
  6. Explain the differences in the approaches conventional multicore processors, GPUs, and the Cell processor use to deal with high data transfer costs.

Reading assignment

  1. Review material on computer architecture on topics related to those mentioned under the learning objectives.
  2. Read Chapter 1 of Kirk and Hwu's GPU book (GPU-1 on Blackboard -- course library).
  3. Review pthreads material from your Operating Systems course.

Exercises and review questions


Last modified: 11 Jan 2010