This page assumes you have seen none of the notation on the parent note. We build every letter, every symbol, every fraction from the ground up, in an order where each idea leans on the one before it. Return here whenever a symbol on NUMA architectures confuses you.
Why the topic needs these words: NUMA is defined relative to a node. "Local" means "same node", "remote" means "different node". If you don't have the word node, you cannot even say what local means.
We will count nodes with a letter. Let
Nnodes=how many nodes (desks) the machine has.
The little subscript nodes is just a label reminding us what we are counting — it is not multiplication, not a power, just a note-to-self written small. Read it aloud as "N-nodes".
The picture: imagine every book on every shelf has a unique sticker number. A is that sticker number. The whole shelf, node by node, is one long numbered strip — but chopped into pieces, one piece per desk.
Why the topic needs A: to decide which desk a book lives at, the machine looks at its sticker number A and does arithmetic on it. That arithmetic is the "address mapping" formulas on the parent page — we prepare for them in §6.
Everything expensive in NUMA is measured in time. We use the letter t for "how long something takes", always with a small label saying which thing:
Picture: a stopwatch you start when the processor asks for a book and stop when the book arrives. Different journeys → different stopwatch readings → different t's. That difference is the "Non-Uniform" in NUMA.
To decide which node holds address A, the parent uses two operators most 12-year-olds haven't met: floor⌊⌋ and mod.
Why the topic needs floor & mod: they are the only tools that turn a smooth stream of addresses into a repeating pattern of node numbers. That repeating pattern is exactly how hardware splits memory across desks.
Every arrow is a "you need this first". Notice node and address are the twin roots; everything else grows from knowing what a desk is and how a book's number picks its desk.
Cover the right side; can you answer before revealing?
What does a node physically contain?
One or more cores + a local memory bank + a memory controller — one "desk".
What is an addressA?
The unique house-number of one box of memory.
What does the memory controller (clerk) do?
Opens the requested box of memory and hands back its contents; each desk has its own.
What is taccess?
The total time a processor waits from asking for a box until its contents arrive.
Read tlocal aloud — is it a product?
"Local time"; it is a single quantity, not t times "local".
What is tremote_controller?
The wait for the far desk's memory controller to open its box, one of the extra legs in a remote trip.
Why can tremote never be less than tlocal?
A remote trip does everything a local trip does plus extra wire and far-clerk time — you only add legs.
What does the "cases" bracket mean?
A written-out if/else: pick the line whose condition is true.
Compute ⌊3.9⌋ and 6mod4.
3 and 2.
In interleaved mapping, why divide A by Lcacheline first?
Books travel one cache-line at a time, so we choose a node per line-slot, not per byte.
Define FNUMA in words.
Remote latency divided by local latency — how many times slower a remote trip is.
If f=0.2, what fraction of trips are local?
1−f=0.8, i.e. 80%.
Give tavg for f=0.2,FNUMA=2 in units of tlocal.
1.2tlocal.
Give the speedup S for those same numbers.
2.0/1.2=1.67×.
Are FNUMA and S the same thing?
No — one is per-trip slowness, the other is whole-program gain from locality.
Recall Self-test: state the ONE core idea in a sentence
Memory is split into per-node piles; your own pile is fast, others are slower because you must cross the interconnect — that gap is what all the symbols measure.
One-sentence answer ::: NUMA = local memory fast, remote memory slow, and the topic is the arithmetic of that gap.