How-to guides

How to find bottlenecks in an architecture

Run bottleneck detection against a modelled architecture under a stated workload, and confirm the finding with sensitivity analysis.

When this is useful

  • A design has a component everyone suspects and nobody has evidence about.
  • Volumes are about to increase and you want to know what gives way first.
  • A review asks where the design's limit is.

Before you start

  • A modelled architecture and a workload profile. Bottleneck detection is meaningless without a stated demand.

Step 1: State the workload

Set the workload profile to the load you care about — today's, or the one you are planning for.

Simulate ▸ Workload Profile

Step 2: Run bottleneck detection

Bottleneck Detection identifies where the modelled architecture strains under that demand.

Simulate ▸ Bottleneck DetectionSimulate ▸ Simulation Panel

Step 3: Confirm it is real, not an artefact of an assumption

Run Sensitivity Analysis over the same model. If the bottleneck moves when a single uncertain input changes, the finding is about that assumption rather than about the architecture — and that is worth knowing before anyone re-designs anything.

Simulate ▸ Sensitivity Analysis

Step 4: Test the fix in the model

Change the design and re-run. Comparing two runs is what the tool is genuinely good at, more so than any single absolute number it produces.

Simulate ▸ Recommendations

What happens next

A confirmed bottleneck is worth recording as a risk against the component, so it survives past the simulation session.

Example

Bottleneck detection pointed at a shared cache; sensitivity analysis showed the result held across the plausible range of request sizes, which turned a suspicion into a design change.

Tips

  • Compare runs rather than trusting a single figure. The relative answer is far more reliable than the absolute one.
  • A bottleneck that only appears at one set of assumptions is a finding about your assumptions.

Limitations

  • This is a model-based estimate, not a measurement. It complements load testing rather than replacing it.

Related how-to guides

Related questions

The capability behind this

Put your architecture under version control

Model it, govern it, and keep it true to the system it describes.