Skip to content

feat: load.instances, spike tolerance and infra.loadgen.count - #27

Merged
psanders merged 3 commits into
mainfrom
feat/loadgen-count
Nov 9, 2026
Merged

psanders merged 3 commits into
mainfrom
feat/loadgen-count

Conversation

@psanders

@psanders psanders commented Nov 9, 2026

Copy link
Copy Markdown
Member

Three steps on top of #26, each tagged and run on DigitalOcean:

  • load.instances: a benchmark's uac split over several SIPp processes (rc.2)
  • thresholds.confirmSteps: a capacity ramp ends only after N steps in a row break a rule (rc.3)
  • infra.loadgen.count: more load generator droplets, instances spread round robin, their SIPp files copied back to the first (rc.4)

Smoke run of the last one is in progress; merging after it passes.

🤖 Generated with Claude Code

https://claude.ai/code/session_01WSt25UoKGj2mgDNQ4dHVrB

psanders and others added 3 commits November 9, 2026 06:06
…sses

SIPp is single-threaded, so one uac tops out at about one core (350 calls/s
over TCP) however big the load generator is. load.instances: N starts N uac
processes, each with 1/N of the rate and the open calls, its own port,
Call-ID prefix and share of uac.users. The sampler names each process, the
step check judges the busiest one, and the analysis sums them all.
infra.loadgen.count is left as a design note.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WSt25UoKGj2mgDNQ4dHVrB
…n a row break a rule

A step that breaks p99LatencyMs or failedCallsPct while the next one passes
is a spike: the ramp goes on, the step is flagged spike in the report and
on the live page, and the limit stays the last step before a confirmed
break. Default 2; 1 keeps the old behavior. A break on the last step and an
unmeasurable (saturated load generator) step still end the ramp at once.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WSt25UoKGj2mgDNQ4dHVrB
…IPp processes

load.instances stays the total and is spread round robin over the droplets;
each worker's SIPp files are pulled back to the first droplet over SSH, with
their pids renamed so two machines never collide.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WSt25UoKGj2mgDNQ4dHVrB
@psanders
psanders merged commit 2cbb5ca into main Nov 9, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant