7.6Optimizations to the Bus Interconnection Network

book pp. 142–143 · ~2 min read

  • separate data network
  • logical bus
  • timestamp snooping

So far every system model used shared-wire buses. Two upgrades follow directly from §7.1’s asymmetry — requests need totally ordered broadcast, responses need nothing at all.

7.6.1 A separate, non-bus network for data responses

Coherence responses require no broadcast and no ordering — so route them over a crossbar, mesh, torus, or butterfly instead of a bus. Three wins:

  • Implementability — high-speed shared-wire buses are hard to build, especially with many controllers; point-to-point links are not.
  • Throughput — a bus carries one response at a time; other topologies carry many in flight.
  • Latency — no per-response bus arbitration; responses launch immediately.

7.6.2 A logical bus for coherence requests

Requests still need their total order — but a logical bus delivers totally ordered broadcast without one physical shared wire:

Physically ordered topology: the tree

Controllers at the leaves; a request is unicast up to the root — the serialization point — then broadcast down. Every controller sees the same order (possibly at different times, which is fine). All links point-to-point. Sun’s Starfire (§7.7) works exactly this way.

rootcores at the leaves

Logical order on ANY topology

Timestamp Snooping (Martin et al.): broadcast each request labeled with the logical time at which it should be ordered, ensuring (a) every broadcast gets a distinct logical time, (b) controllers process requests in logical-time order even when they arrive out of physical-time order, and (c) no request at logical time T reaches a controller after it has passed T. Agarwal et al.’s In-Network Snoop Ordering (INSO) is a similar scheme. The network can then be anything at all.

Check yourself

1.Why can data responses travel on a crossbar, mesh, or torus while requests cannot (in a traditional snooping system)?

2.What makes a tree topology a LOGICAL BUS for coherence requests?

3.Timestamp Snooping achieves ordered broadcast on ANY topology. What three things must the protocol ensure?

4.Flashback (pop quiz Q7): 'A snooping cache coherence protocol requires the cores to communicate on a bus.' True or false?

4 questions