The Memory Hierarchy
Lesson notes
Overview
Faster memory is smaller and costlier: registers, caches, RAM, SSD and disk differ by orders of magnitude in latency. This topic is rated advanced and is number 61 of 117 in Computer Science. Deeper models, formal results and harder reasoning.
What you are seeing
The panel above shows a bar chart that compares values on one scale, so differences in size are easy to see. The animation is drawn live from the model, so everything you see responds to the sliders. Press Space to pause, use Restart to replay from the start, and change the speed to slow down quick events.
In depth
Computer memory is arranged in layers that trade speed against size and cost. Registers are accessed in under a nanosecond, L1 cache in about a nanosecond, main memory in about 100 ns, SSDs in tens of microseconds and hard disks in milliseconds, a spread of millions. Each level holds a copy of the data most likely to be used from the next one. Programs that access memory in orderly patterns exploit locality and run much faster.
Reading the relationship
The expression "latency in nanoseconds" is a compact summary of the idea. It uses the symbols l, a, t, e, n, c; name what each one stands for before you start. Then use the sliders to see how changing one quantity changes the others.
A guided exploration
1. Run the animation once with the default settings and describe in words what happens. 2. Change one slider at a time and note which quantity responds most. 3. Push each slider to its extreme and decide whether the result still makes sense.
Try this
Try to explain why the pattern holds, not just what it is. Look for limiting cases and what happens at the edges.
Common pitfalls
Test small inputs by hand and then the largest ones. Off-by-one errors and forgetting how cost grows with input size are the most common traps.
How it connects
It builds on “The CPU Instruction Cycle”, the topic before it in Computer Science. Once you are comfortable, continue with “From Source Code to Running Program”.
Why it matters
Computing ideas decide how fast, how safely and how well software can solve problems.
Where you might use it
- Revising “The Memory Hierarchy” before a class, exam or certification
- Choosing the right algorithm or data structure when writing software or apps
- Debugging programs and judging how fast or how safely code will run at scale
- Understanding how search engines, games, phones and AI systems make decisions
Frequently asked questions
What is The Memory Hierarchy?
Faster memory is smaller and costlier: registers, caches, RAM, SSD and disk differ by orders of magnitude in latency. It is an advanced topic in Computer Science.
How do I use the The Memory Hierarchy simulation?
The panel at the top shows a bar chart that compares values on one scale, so differences in size are easy to see. Move the sliders one at a time, then press Space to pause the animation and look closer.
What does the formula mean?
The expression latency in nanoseconds packs the idea into symbols. Name each symbol first, then change one quantity with the sliders and see which others respond.
Who is this topic for?
Deeper models, formal results and harder reasoning. If the quiz feels hard, reread the lesson notes and try the previous topic first.
What should I learn before this?
Start with “The CPU Instruction Cycle”, the previous topic in Computer Science. Each topic in a subject builds on the ones before it.
How do I track my progress?
Press “Mark as learned” on this page. Progress is stored only in this browser and is never sent anywhere. The Browse page can show topics you have learned or still need to learn.
Quick quiz
More in Computer Science
See all →From Source Code to Running Program
Compilers translate human-readable code into machine instructions through several stages.
Cocktail Shaker Sort
Bubble sort in both directions, so small items also travel left quickly.
Sorting a Large Array with Merge Sort
Eighty items still need only about n log n steps.