Skip to main content

Computer Architecture · Parallel architecture and performance limits

Roofline time is the max of a compute ceiling and a bandwidth ceiling

Problem

A machine has peak floating-point performance $\pi=200\ \mathrm{GFLOP/s}$ and peak DRAM bandwidth $\beta=50\ \mathrm{GB/s}$. Arithmetic intensity is $I=W/Q$ in $\mathrm{FLOP/B}$, where $W$ is work in floating-point operations and $Q$ is DRAM traffic in bytes. Attainable performance is \[ P=\min(\pi,I\beta), \] and a lower bound on running time is \[ T\ge\max\!\left(\frac{W}{\pi},\frac{Q}{\beta}\right)=\frac{W}{P}. \] The ridge point is $I_\star=\pi/\beta$. Use these two ceilings consistently: never add the two times, and never replace $P$ by $\max(\pi,I\beta)$. 1. Compute $I_\star$. For a kernel with $I=0.5\ \mathrm{FLOP/B}$, give $P$ and classify the kernel as compute-bound or memory-bound. 2. That same kernel performs $W=1\ \mathrm{GFLOP}$ of work and moves $Q=2\ \mathrm{GB}$. Bound its running time from below. 3. A second kernel performs the same $W=1\ \mathrm{GFLOP}$ at intensity $I=6\ \mathrm{FLOP/B}$. Classify it, give $P$, and bound its running time from below. Confirm that the two ceilings are consistent with the stated $P$. 4. Audit these claims: (i) $I=0.5$ still runs at $200\ \mathrm{GFLOP/s}$ because that is the peak; (ii) the two ceilings should be added, so the first kernel takes at least $45\ \mathrm{ms}$; (iii) the bound is Amdahl's law with the held serial fraction $1-p=0.08$ and coordination overhead $h(N)$. Do not rederive that Amdahl fraction, and do not convert the ridge into a speedup-versus-$N$ plot.

Hint

$I_\star=200/50=4\ \mathrm{FLOP/B}$. Intensity $0.5$ lies below the ridge.

Check your work

Work the problem yourself first. Then open it in Training to check your answer and read the full worked solution.

The answer check and full solution for this problem come with ProofAnvil Practice membership ($19 USD monthly). See membership. Or start with the free Computer Architecture sample problem: Try the free sample problem.

More Computer Architecture practice problems