Performance Analysis
What is the most appropriate method for examining a parallel program's scalability?
- AMeasure once with the maximum core count
- BMeasure run time while increasing threads or cores through 1, 2, 4, 8 and so on, and graph how speedup grows
- CMeasure many times with just one core
Show answer and explanation
Answer: B. Measure run time while increasing threads or cores through 1, 2, 4, 8 and so on, and graph how speedup grows
Measuring speedup at varying core counts ideally shows growth proportional to cores, but in practice serial parts, synchronization, communication and memory-bandwidth limits make gains taper beyond some point. Where growth stops hints at the limiting factor. The fair baseline is the fastest serial version of the program, not a parallel version run on one core.
- A. A single measurement cannot show the trend.
- B. Correct. It shows where gains level off.
- C. It reveals nothing about parallel effects.