- Identify a CPU’s major components and their roles.
- Explain how a CPU processes instructions, including multithreading and multitasking.
- Interpret common CPU specs (cores, threads, clock speed) and predict how multiple cores affect performance.


| Component | Role |
|---|---|
| Cores | Independent execution units; each core can fetch, decode, and execute instructions like a mini-CPU. More cores enable more true parallel work. |
| Processor graphics | Integrated GPU for display and graphics workloads; reduces the need for a discrete GPU in many everyday scenarios. |
| System agent / Memory controller | Coordinates data movement between cores, RAM, and I/O devices; crucial for memory throughput and low latency. |
| Cache (L1 / L2 / L3) | Very fast on-chip memory that stores frequently used instructions and data close to cores to reduce access latency and increase throughput. |

- The 8 performance (P) cores support simultaneous multithreading (SMT). Each P-core can run 2 threads → 8 × 2 = 16 threads.
- The 12 efficiency (E) cores do not support SMT and run 1 thread each → 12 × 1 = 12 threads.
- Total threads = 16 + 12 = 28.

- Single-core, single-threaded: tasks run one after another. The OS scheduler swaps tasks quickly to give the illusion of concurrency.
- Multiple cores: truly parallel execution — different cores run different tasks simultaneously (e.g., video decoding, UI, background sync).
- Multithreading (SMT): a single core presents multiple logical threads and can interleave or parallelize work on replicated pipeline resources to improve utilization.
- If there are more runnable tasks than available physical cores, the OS performs context switches so each task gets time on the CPU.
- Modern systems also offload specialized work to GPUs, NPUs, or dedicated accelerators to free CPU cores for general-purpose tasks.
SMT improves throughput by letting a core handle multiple execution paths, but it doesn’t double performance for every workload. SMT helps most when threads have complementary resource usage (e.g., one thread stalls on memory while another uses execution units).

- Not every instruction completes in a single clock cycle; complex operations may take many cycles.
- CPUs use pipelining, out-of-order execution, and multiple execution units to complete parts of multiple instructions across overlapping cycles.
- “Turbo” or “Max Boost” frequencies are the highest achievable clocks for a limited time under favorable power/thermal conditions.

- A hummingbird flaps ~80 times per second. 5.6 GHz is roughly 70 million times faster.
- An electric toothbrush vibrates ~1,000 times per second. 5.6 GHz is about 5.6 million times faster.

Do not equate higher GHz directly with better performance for all workloads. A newer CPU with lower clock speed can outperform an older, higher-clocked chip due to architectural improvements, larger caches, or more efficient execution pipelines.
- Prioritize the workload: many office apps and web browsing benefit from higher single-thread performance and good integrated graphics; software compilation, virtualization, and heavy multitasking benefit from more cores and threads.
- Consider thermal and power limits: thin laptops may not sustain turbo clocks for long due to cooling constraints.
- Look beyond headline numbers: compare cache sizes, memory support (LPDDR vs. DDR), and real-world benchmarks for your typical applications.

- Intel: Introduction to CPU architecture — https://www.intel.com/
- CPU basics and performance factors — https://en.wikipedia.org/wiki/Central_processing_unit
- Multithreading and SMT overview — https://en.wikipedia.org/wiki/Simultaneous_multithreading