Simquence
Simulate your architecture's latency before you build it. Describe the design as a small explicit model, run it thousands of times and see which chain of work users would actually wait on. Not a profiler: it works on the design rather than the code.
Windows, macOS and Linux.
A design-time latency simulator
The whole workflow is a loop:
Model
Tasks, the events that trigger them and the resources they queue behind. Plain JSON or the composer; 10 to 20 tasks is often enough.
Run
Queues form where concurrency runs out; durations are drawn from your distributions. Thousands of times, every run seeded.
Read
Each run records the makespan (how long the user waited) and the critical path (the chain that set the finish time). The spread is the finding.
Change one thing
Raise a concurrency, remove a debounce, split a queue. Two changes at once tell you nothing about which one did it.
Compare
Run again on the same seed. The randomness is identical, so any shift is the design change rather than luck.
What a model is
- System: a name and the entry event that starts a run, such as "user clicks Pay".
- Contexts: what work runs on (a thread pool, a database connection, a UI thread), each with a concurrency. Concurrency 1 means everything waits in line; that is where most surprising latency comes from.
- Tasks: units of work, each with a context, a duration distribution and the event it emits.
- Wiring: which events trigger which tasks, optionally after a delay. The wiring is the architecture.
Any event-driven software
- It simulates the design rather than the code, so the domain does not matter.
- A web checkout, a desktop UI thread, a microservice fan-out, a mobile flow or an embedded pipeline.
- If it is work triggered by events, competing for shared resources, it can be modelled.
One page per question
Who it's for
The roles that make structural decisions which are expensive to undo; and who it is not for.
Why
Latency answered at design time, while the architecture is still cheap to change.
Supporting Simquence
Simquence is free with no paid tier and nothing held back. If it has saved you time, a contribution supports its maintenance. The same link sits in the app's top bar.
Donate