Performance Analysis

In top-down microarchitecture analysis using performance counters, which are the major categories into which CPU issue slots are divided?

  1. AFast, slow and normal
  2. BFrontend bound, backend bound, bad speculation and retiring
  3. CDisk, network, display and keyboard
Show answer and explanation

Answer: B. Frontend bound, backend bound, bad speculation and retiring

Top-down analysis classifies each cycle's issue slots by whether they went empty because the front end (fetch and decode) could not keep up, stalled in the back end (waiting on execution units or memory), were spent on instructions discarded after misprediction, or were used by instructions that completed (retired). Drilling from the largest category into finer causes identifies bottlenecks efficiently.

  • A. That is not the classification.
  • B. Correct. Causes are narrowed down from these top categories.
  • C. These are not categories inside the CPU.
Practice this topic Back to topic

More Performance Analysis questions

  1. A program is slow, yet CPU utilization is only about 20%. What is the most likely cause?
  2. To check whether a program is compute-bound or memory-bound, its run time is measured at different CPU frequencies. What is the typical result if it is memory-bound?
  3. When the Roofline model shows a workload in the memory-bandwidth-limited region, which direction improves performance?
  4. What does the STREAM benchmark mainly measure?
  5. What is the most appropriate method for examining a parallel program's scalability?