Skip to content

Stop idle non-latest sampler pools even when replicas linger - #6

Open
cnnradams wants to merge 1 commit into
mainfrom
stop-idle-pools-with-replicas
Open

Stop idle non-latest sampler pools even when replicas linger#6
cnnradams wants to merge 1 commit into
mainfrom
stop-idle-pools-with-replicas

Conversation

@cnnradams

Copy link
Copy Markdown
Collaborator

Summary

  • _cleanup_fft_pools skipped every idle non-latest pool that still had replicas. A replica never scales to zero on its own here: the Flash pool's health probes (GET /metrics, GET /server_info every few seconds) count as web-server traffic, so the container stays warm past scaledown_window forever. Observed: lilo-fft-…-v0 (base qwen3_5_9b_full_64k pool used by a TB-Lite eval) held one H200 for 12 h after the last sample; fft_pool_touch was 06:46 UTC, container still serving /metrics at 14:57 UTC.
  • Keep the 5 min idle grace (replicas may be finishing a long generation), but stop the pool once idle ≥ 30 min (FFT_POOL_ORPHAN_TIMEOUT) whether or not replicas are reported.

Test plan

  • tests/providers/test_modal_app.py::test_cleanup_stops_long_idle_pool_with_lingering_replicas
  • Existing cleanup tests unchanged

Made with Cursor

A base-model pool used by one eval kept an H200 replica alive for 12 hours after its
last request: the Flash health probes keep the web server warm, and the cleaner skipped
any idle pool that still reported replicas. Keep the 5 minute grace for pools whose
replicas may be finishing a generation, but stop the pool once it has been idle for
30 minutes regardless.

Co-authored-by: Cursor <cursoragent@cursor.com>
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