How processors are designed.
WHAT AN INSTRUCTION SET ARCHITECTURE IS
The interface between hardware and software: the instructions a processor understands.
WHAT THE MAJOR FAMILIES ARE
A long-established family dominating desktops and servers historically A family dominating mobile and increasingly servers and desktops An open specification gaining adoption
WHAT MICROARCHITECTURE IS
How a particular processor implements that instruction set.
WHY THE DISTINCTION MATTERS
Two processors implementing the same instruction set can differ enormously in performance.
WHAT PIPELINING IS
Overlapping the stages of executing consecutive instructions.
WHAT SUPERSCALAR EXECUTION IS
Issuing several instructions per cycle.
WHAT OUT-OF-ORDER EXECUTION IS
Executing instructions as their inputs become available, rather than in order.
WHAT BRANCH PREDICTION DOES
Guesses which way a branch will go, so work continues rather than stalling.
WHAT A MISPREDICTION COSTS
Discarding speculative work, which is many cycles.
WHAT THE MEMORY HIERARCHY IS
Registers, several cache levels, main memory, storage.
WHY IT EXISTS
Fast memory is small and expensive; large memory is slow.
WHAT DETERMINES REAL PERFORMANCE
How well a program uses that hierarchy.