Skip to content
DenseChip
Learn
PracticeCode labInterview

DenseChip

Navigate

Menu

LearnPracticeCode labInterview

Tools

All toolsSV editorCode repoResume
DenseChip

Practice, courses, and chip-design tools in one focused workspace.

LearnPracticeCode labInterviewToolsLearning paths

© 2026 DenseChip

AboutContactPrivacyTerms
Skip to lesson

Course contents

  • How to Use This Course
  • Reading Path
  • Cache Coherency Glossary
  • The Shared Course Model
  • Cache Coherency Revision Sheet
  • Why Coherence Exists8
  • States and Protocols12
  • Transactions12
  • Races and Controller Design8
  • Progress and the Fabric16
  • Ordering and Synchronization12
  • Performance and Scalability12
    • False Sharing
    • Directory Capacity and Sharers
    • Hotspots and Placement
      • Hot Lines and Locks
      • Home Interleaving
      • NUMA and Locality
      • Scaling Trade-Off Exercise
  • Real Protocols12
  • SoC Integration12
  • Power, Clocking and Reliability12
  • Verification12
  • Debug and Bring-up12
  • Interview and Design Review17
  • Capstone: A Coherent Model Lab5
Loading lesson

‹Hotspots and Placement
  1. Topics
  2. Cache Coherency
  3. Performance and Scalability
  4. Hotspots and Placement
  5. Scaling Trade-Off Exercise

Part 7 · Performance and Scalability · All levels

Scaling Trade-Off Exercise

Select an optimization from a named bottleneck and define evidence that could reject it.

Which change would you fund first?

Use an illustrative design study, not a benchmark: extend the C0/C1 workload to many requesters while retaining one home per line. The report says independently written counters share lines, one synchronization X is truly shared, directory sets show replacement pressure, and a strided array maps most addresses to one home. These are four mechanisms, not one generic coherence problem.

Measured mechanism to establish

Candidate change

Evidence against the candidate

Independent fields cause transfers

Separate fields or batch their writers

Transfers do not follow those addresses, or footprint cost dominates.

One truly shared X dominates updates

Reduce shared update frequency with a defined algorithm

Required semantics forbid aggregation, or merge cost dominates.

Directory set conflicts cause retirement

Change capacity, associativity or mapping

Pending capacity rather than tagged-entry capacity is full.

Static home mapping aliases a stride

Evaluate another static mapping

One hot line rather than many addresses creates the demand.

Start with the two-core microcases before generalizing. They isolate field sharing, one-line contention and static address mapping. Then replay the same logical operations on each candidate. Preserve values and synchronization meaning first; a lower message total with missing updates is disqualified, not a performance win.

A scaling decision preserves useful work and correctness before comparing traffic, latency and footprint.
A candidate fails immediately if its lower cost comes from changing the required result.

Report units: messages, payload bytes, endpoint probes, cycles, occupancy and metadata bits are distinct. In the false-sharing count, 62 versus 4 messages is not 15.5x runtime. In the directory calculation, 66 versus 31 bits per selected entry is not half the complete directory area. In the home example, four/four requests is not equal service time.

Any throughput or waiting-time prediction needs a service model. State finite queue capacities, admission policy, eventual delivery and fair completion assumptions; add upper bounds if promising a cycle limit. Keep the finite-resource dependency graph valid when reallocating buffers to the proposed optimization.

Common pitfall

Presenting an optimization list without a bottleneck, counterfactual test or correctness rejection criterion.

Interview

Give one proposal, one measurable benefit and one plausible reason it fails. Connect the result back to the observed mechanism rather than a generic manycore label.

Check yourself Would a new home mapping fix a hot X and a strided many-line hotspot equally?

No. It can redistribute different lines. It cannot divide conflicting operations on one line into unrelated coherence orders.

Related topics

  • Shared course model

  • Storage assumptions

  • Traffic assumptions

Previous

85 / 167

Next: Real Protocols

Up next

Up nextReal Protocols

Sign in to save progress

Practice this lessonReport an error

See also

  • Hot Lines and Locks
  • Home Interleaving