Skip to content

feat: Expose warm up seamless flag#661

Open
debermudez wants to merge 2 commits intomainfrom
dbermudez/warmup-seamless
Open

feat: Expose warm up seamless flag#661
debermudez wants to merge 2 commits intomainfrom
dbermudez/warmup-seamless

Conversation

@debermudez
Copy link
Contributor

@debermudez debermudez commented Feb 10, 2026

Summary by CodeRabbit

Release Notes

  • New Features

    • Added --warmup-seamless flag to enable immediate profiling start after warmup completion.
  • Improvements

    • Updated --request-cancellation-rate validation constraints to enforce bounds > 0.0 and ≤ 100.0.

@github-actions
Copy link

github-actions bot commented Feb 10, 2026

Try out this PR

Quick install:

pip install --upgrade --force-reinstall git+https://github.com/ai-dynamo/aiperf.git@a2d0a1821105bd0a8caad6c2933ffe046a347dbe

Recommended with virtual environment (using uv):

uv venv --python 3.12 && source .venv/bin/activate
uv pip install --upgrade --force-reinstall git+https://github.com/ai-dynamo/aiperf.git@a2d0a1821105bd0a8caad6c2933ffe046a347dbe

Last updated for commit: a2d0a18Browse code

@github-actions github-actions bot added the feat label Feb 10, 2026
@coderabbitai
Copy link

coderabbitai bot commented Feb 10, 2026

Walkthrough

The pull request introduces a new --warmup-seamless CLI flag that enables immediate profiling start after warmup completion without waiting for all warmup responses. This includes configuration field additions, phase transition logic updates, and comprehensive test coverage for the seamless operation mode.

Changes

Cohort / File(s) Summary
Documentation
docs/cli_options.md
Added --warmup-seamless flag documentation with constraint validation details for --request-cancellation-rate (bounds > 0.0 and ≤ 100.0).
Configuration
src/aiperf/common/config/loadgen_config.py, src/aiperf/timing/config.py
Added warmup_seamless boolean configuration field to LoadGeneratorConfig and updated warmup phase to derive its seamless behavior from this config value instead of using a fixed False.
Tests
tests/component_integration/timing/test_warmup_phase.py
Renamed existing transition test for clarity; added comprehensive TestWarmupSeamless test suite with three new test methods validating seamless mode behavior, credit distribution, phase overlap, and multi-turn session compatibility. Note: test suite appears duplicated in diff.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐰 A seamless leap from warm to bright,
No idle gaps, just flow so light,
The profiling starts ere warmup's done,
Phase transitions smooth as one,
Efficiency hops, seamless and spry!

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The PR title 'feat: Expose warm up seamless flag' directly matches the main change: adding a --warmup-seamless configuration flag to enable seamless transition from warmup to profiling.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


No actionable comments were generated in the recent review. 🎉


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@codecov
Copy link

codecov bot commented Feb 10, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Copy link
Contributor

@ajcasagrande ajcasagrande left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good job!

@ajcasagrande
Copy link
Contributor

I think we might want to hold off on merging until we get feedback about it. I think I remember now the nuance of a seamless warmup is that the warmup requests will still be using up concurrency slots from profiling requests, leading to potentially degraded performance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

Comments