
Chapter 2
“Why Is My Program So
Slow?”: Obstacles to
Speed
Here is an all-too-common scenario: An analyst acquires a brand new mul-
ticore machine, capable of wondrous things. With great excitement, he
codes up his favorite large problem on the new machine—only to find that
the parallel version runs more slowly than the serial one. What a disap-
pointment!
Though you are no doubt eager to get to some more code, a firm grounding
in the infrastructural issues will prove to be quite valuable indeed, hence
the need for this chapter. These issues will arise repeatedly in the rest of
the book. If you wish, you could skip ahead to the other chapters now, and
come ...