CPU Architecture and the Fetch–Decode–Execute Cycle: Question 9
Syllabus 3.1
A student runs a single-threaded photo-filter app that cannot split its workload across more than one core. They time how long it takes to apply the same filter on two laptops, both with an identical clock speed of 2.4 GHz:
- Laptop P: octa-core processor (8 cores)
- Laptop Q: dual-core processor (2 cores)
Which statement correctly predicts and explains how long the app takes to run on each laptop?
Show worked solution Hide worked solution
Worked solution
Step 1: Recall what determines a single-threaded task’s speed
A core is an independent processing unit that fetches, decodes and executes its own stream of instructions. Extra cores only speed up a task if that task’s workload has been divided up so that different parts run on different cores at the same time (multi-threading). A single- threaded app is written as one continuous stream of instructions that only ever runs on one core, no matter how many other cores are sitting idle.
Step 2: Rule out the incorrect options
- Option A assumes the CPU automatically spreads a single task across all available cores. This does not happen. The app itself has to be written to do this, and this app cannot.
- Option C invents a “power budget” trade-off between core count and per-core speed; core count and clock speed are separate, independent properties of a CPU.
- Option D confuses core count with clock speed. Adding more cores does not make each individual core run at a higher frequency. Clock speed is set separately (and here it is identical on both laptops, at 2.4 GHz).
Step 3: Confirm the correct option
Since the app can only ever use one core, and both laptops’ cores run at the same 2.4 GHz clock speed, the number of extra, unused cores on laptop P makes no difference to how quickly this particular app runs. Both laptops complete the app in almost the same time.
Final answer
Option B. Laptop P and laptop Q will run the app in almost the same time, because a single-threaded app can only use one core, however many cores are available.