Skip to content

feat: add remote-bench-e2e.yml for batch remote-bench dispatch#30

Merged
aistackdev merged 1 commit into
mainfrom
feat/remote-bench-e2e
Jul 24, 2026
Merged

feat: add remote-bench-e2e.yml for batch remote-bench dispatch#30
aistackdev merged 1 commit into
mainfrom
feat/remote-bench-e2e

Conversation

@aistackdev

Copy link
Copy Markdown

Summary

Adds remote-bench-e2e.yml, a batch counterpart to remote-bench.yml: dispatch several remote-bench configs (different conc/duration/dataset variants) in one call, matrix-fanned to benchmark-tmpl.yml the same way e2e-tests.yml fans out master-config sweeps.

Takes a JSON array of configs directly (configs input) rather than going through generate_sweep_configs.py — keeps remote-bench independent of the closed master-config schema, same rationale as remote-bench.yml itself (issue #26/#27).

Test plan

  • Once merged, dispatch with a small 1-2 config array against the sglang-vanilla dev endpoint to confirm the matrix fan-out and benchmark-tmpl.yml wiring work end to end

Matrix-fans a JSON array of remote-bench configs to benchmark-tmpl.yml
in one dispatch, mirroring e2e-tests.yml's fan-out pattern. Takes the
config array directly instead of going through generate_sweep_configs.py,
so it stays independent of the closed master-config schema.
@aistackdev
aistackdev merged commit 522717e into main Jul 24, 2026
aistackdev pushed a commit that referenced this pull request Jul 24, 2026
…ndpoint)

Adds remote-bench: benchmark an already-running, externally-managed
inference endpoint instead of launching a server on the GPU runner.

- benchmark_lib.sh: REMOTE_BASE_URL override in build_replay_cmd so
  aiperf points at an external endpoint instead of localhost.
- benchmark-tmpl.yml: 6 optional remote-* workflow_call inputs/env vars,
  consumed only by *-remote-bench.sh recipes.
- remote-bench-e2e.yml: single entrypoint, takes a JSON array of configs
  (one element for a smoke test, many for a full CCU-ladder sweep),
  matrix-fans to benchmark-tmpl.yml, then aggregates via
  collect-results + calc-success-rate.
- Two model-agnostic *-remote-bench.sh recipes (dsv2lite fp8, glm5.2
  fp4), the cluster:remote-bench runner label + non-GPU controller
  launcher (bench-client_01).
- create-remote-bench skill: how to bring up a new recipe, including
  checking the endpoint's KV pool capacity to size a concurrency ladder,
  and the REMOTE_MAX_CONTEXT_LENGTH incident (a per-request cap is
  required, and even the model's nominal context window isn't
  automatically a safe value on small/dev GPUs).
- sync-upstream + fork-changelog skills: since fork commits now live
  directly on main instead of a separate customization branch, syncing
  upstream is a real merge — fork-changelog lists every fork-only edit
  and why, sync-upstream is the procedure that checks against it.

Background: issue #26/#28, PR #27/#30/#31/#34 (squashed into this single
commit).
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