Skip to main content

Working Set

Tools for scaling local LLM deployments: how many concurrent users or agents a given GPU configuration can keep warm, where KV cache, decode bandwidth, and prefill compute each become the binding constraint, and which knob (topology, dtypes, max_num_seqs, prompt caching) buys the most headroom for agentic coding workloads.

Start with the interactive explorer — live sliders for the workload, model (Qwen3.8-27B / 35B-A3B / Mistral-Medium-3.5 / GLM-5.3 / DeepSeek-V4-Flash / Qwen3.8-Flash-Next / GLM-5.3-Flash), GPU (H200 / B300), weight & KV dtypes, and DP × TP topology. It answers as a decision tool: a binding-constraint verdict, a deploy recipe (vLLM flags), the bill (€/GPU-hour and €/kWh sliders: hardware plus a duty-cycle power model), a sensitivity panel showing which assumption would flip the decision, the steady-state decode point (how many sessions are actually decoding at your load, and how fast each one runs — Little's law, not the all-warm stress test), shareable links that encode the whole configuration, and a "Test these hypotheses" button that hands out the configuration on screen as a workingset.toml — feed it to ws test below and measure the real limits on a live vLLM endpoint.

The workingset package

The model behind the explorer is a Python package (src/workingset/, the source of truth; the explorer's JS mirrors it). It ships a CLI:

uv run ws init --model Q38FN --gpu B300 --tp 8 --weight-dtype nvfp4   # writes workingset.toml
uv run ws predict workingset.toml        # the four ceilings, which one binds, the operating point
uv run ws predict workingset.toml --json # the same as a run record
uv run ws hypotheses                     # the H-* and what each one needs
uv run ws test workingset.toml --dry-run # the plan, the sampler self-check, no requests
uv run ws test workingset.toml --exclusive --out run.json   # measure it
uv run ws report run.json                # re-print the verdicts
uv run ws models                         # model / GPU keys
uv run pytest                            # self-checks + config round-trips

No checkout needed — the explorer's workingset.toml runs straight from git (--from carries the package because workingset publishes one console script, ws):

uvx --from git+https://github.com/T0mSIlver/working-set ws predict workingset.toml
uvx --from git+https://github.com/T0mSIlver/working-set ws test workingset.toml --dry-run
uvx --from git+https://github.com/T0mSIlver/working-set ws test workingset.toml --all --exclusive --out run.json

After the PyPI release the same commands shorten to uvx --from workingset ws ….

Predictions live in no file: ws predict recomputes them from the config every time, so a config can never carry a number the code did not produce. A harness .py downloaded from the explorer before the package existed still loads (its CONFIG block is extracted).

ws test puts the predictions to a live endpoint, one falsifiable hypothesis at a time. Without --exclusive it runs only the hypotheses that need a handful of requests (miss TTFT, the inter-token gap distribution, the steady decode point) and lists the rest as skipped — a hypothesis that has to generate its own population is never measured against someone else's load. With --exclusive it drives the geometric load ladder once, and every ceiling reads from it. --burst N adds the correlated-flush probe (B*).

Contents

  • docs/writeup.md — baseline study: KV-cache capacity and the prompt-caching / offload / max_num_seqs trade-offs.

  • docs/scenarios.md — extended scenario model: multi-GPU topologies, MoE vs dense, subagent workloads, the cost of a cache miss, and cold-spike tolerance.

  • scripts/ — everything is reproducible:

    uv run ws selfcheck                # the shared model's self-checks (src/workingset/model.py)
    uv run scripts/scenarios.py        # renders the scenario figures
    uv run scripts/tables.py           # regenerates every number in docs/scenarios.md
    
  • research/ — sourced constants for each model and GPU.

  • interactive/ — the explorer, a dependency-free page mirroring the Python model: index.html holds the markup and styles, src/*.js the model and the charts as ES modules (src/main.js is the entry and lists the layering). Browsers refuse module scripts from file://, so serve the folder to open it locally:

    python3 -m http.server 8000 --directory interactive   # then http://localhost:8000
    

Method, calibration, and caveats are laid out in the docs above.

MIT licensed; see LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

workingset-0.1.0.tar.gz (244.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

workingset-0.1.0-py3-none-any.whl (258.0 kB view details)

Uploaded Python 3

File details

Details for the file workingset-0.1.0.tar.gz.

File metadata

  • Download URL: workingset-0.1.0.tar.gz
  • Upload date:
  • Size: 244.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for workingset-0.1.0.tar.gz
Algorithm Hash digest
SHA256 bd46ecfc79086aef8acd144931ff0316f8e61fe55745eb557fd16caecd381b31
MD5 e475f84fc42f2e1c58e66ab6dc9e0c22
BLAKE2b-256 27fc11cf0392d269466e67423286ddfe7af761be3982b45f2e976837c8b4e9f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for workingset-0.1.0.tar.gz:

Publisher: publish.yml on T0mSIlver/working-set

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file workingset-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: workingset-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 258.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for workingset-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d6cb88e41feaed286ce5c0c0530b0fa44961b9c7000ae0c0ffe0476dfc2617f4
MD5 98b67e58b8f73462d6fc7aaad94a0bb8
BLAKE2b-256 103ff6d529698a62ab174ce1ec79a1f52cad2dbfd70f098fbafc8cb16c6322d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for workingset-0.1.0-py3-none-any.whl:

Publisher: publish.yml on T0mSIlver/working-set

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page