V22.0436 - Prof. Grishman

Lecture 26:  Multi-cores, multi-threading, multiprocessors

The limits of single-thread performance

If we can effectively use multi-thread parallellism, it may even be beneficial to employ less-than-maximal single-thread-performance

Providing multiple threads

Multiple threads can be provided by
Multithreading (text, sec. 7.5)
Multiple cores per chip
Multiple chips in a system

Using multiple threads:  algorithms and applications

Applications differ in the degree to which they can be parallelized and the communication required between threads
Amdahl's law (text, p. 51):
                                1 / ( (1 - P) + (P / S) )

Communication (text, sec. 7.3 and 7.4)

Shared-memory multiprocessors
Message passing multiprocessors