Skip to content

[Feature] Set overlap schedule as default#6668

Merged
EmmonsCurse merged 10 commits intoPaddlePaddle:developfrom
Sunny-bot1:overlap_default
Mar 9, 2026
Merged

[Feature] Set overlap schedule as default#6668
EmmonsCurse merged 10 commits intoPaddlePaddle:developfrom
Sunny-bot1:overlap_default

Conversation

@Sunny-bot1
Copy link
Collaborator

@Sunny-bot1 Sunny-bot1 commented Mar 5, 2026

Motivation

GPU下除MTP、PD分离、RL场景,默认开启overlap schedule,实现性能提升。

相关PR

  1. exist_prefill,v1 scheduler下采用flag变量记录:[Model Runner] Add exist_prefill_flag #6172
    1. 修复PR:[BugFix] Fix exist_prefill_flag when preempted task exist #6629 [Cherry-Pick][BugFix] Fix exist_prefill_flag when preempted task exist (#6629) #6630
  2. fa3前处理进CUDA graph:[Model Runner] Prepare token count and move FA3 initialization into the graph #6170
  3. 拆分execute_model,not_need_stop、sampled_token_ids在 _postprocess 阶段异步拷贝,利用cuda event在save_output阶段进行同步:[Model Runner] Refactor execute_model for GPU async scheduling #6176
  4. 实现event_loop_overlap,当连续处理decode batch时复用上一个 batch 的 token_num来进行 launch: [Model Runner] Support overlap schedule #6259
  5. 支持logprob异步拷贝:[Optimization] Support logprob async copy #6362
  6. 移除not_need_stop,解决insert_task_v1 decode分支引入的同步,解决TP空跑问题,进一步提升overlap schedule性能:[Model Runner] Deprecate not_need_stop #6356
    1. seq_lens_this_time 修复PR:[BugFix] Fix seq_lens_this_time init #6670
    2. EB5 runner 修复PR: [BugFix] Fix EB5 model runner compatibility check in worker process #6673

Modifications

  1. GPU下除MTP、PD分离、RL场景,--enable-overlap-schedule 默认为True
  2. topp_seed提前拷贝,消除同步
  3. 适配 zmq(FD_USE_GET_SAVE_OUTPUT_V1)

TODO:

  1. 修复PD分离下出现的输出变长&CUDA error
  2. 适配MTP
  3. RL场景验证

Usage or Command

关闭overlap schedule:--no-enable-overlap-schedule

Accuracy Tests

Checklist

  • Add at least a tag in the PR title.
    • Tag list: [[FDConfig],[APIServer],[Engine], [Scheduler], [PD Disaggregation], [Executor], [Graph Optimization], [Speculative Decoding], [RL], [Models], [Quantization], [Loader], [OP], [KVCache], [DataProcessor], [BugFix], [Docs], [CI], [Optimization], [Feature], [Benchmark], [Others], [XPU], [HPU], [GCU], [DCU], [Iluvatar], [Metax]]
    • You can add new tags based on the PR content, but the semantics must be clear.
  • Format your code, run pre-commit before commit.
  • Add unit tests. Please write the reason in this PR if no unit tests.
  • Provide accuracy results.
  • If the current PR is submitting to the release branch, make sure the PR has been submitted to the develop branch, then cherry-pick it to the release branch with the [Cherry-Pick] PR tag.

@paddle-bot
Copy link

paddle-bot bot commented Mar 5, 2026

Thanks for your contribution!

@Sunny-bot1 Sunny-bot1 changed the title [Feature] Ser overlap schedule as default [Feature] Set overlap schedule as default Mar 5, 2026
@codecov-commenter
Copy link

codecov-commenter commented Mar 5, 2026

Codecov Report

❌ Patch coverage is 73.33333% with 4 lines in your changes missing coverage. Please review.
⚠️ Please upload report for BASE (develop@0c69cdf). Learn more about missing BASE report.

Files with missing lines Patch % Lines
...executor/layers/sample/ops/top_k_top_p_sampling.py 57.14% 3 Missing ⚠️
fastdeploy/model_executor/pre_and_post_process.py 50.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             develop    #6668   +/-   ##
==========================================
  Coverage           ?   72.67%           
==========================================
  Files              ?      392           
  Lines              ?    53855           
  Branches           ?     8460           
==========================================
  Hits               ?    39137           
  Misses             ?    11932           
  Partials           ?     2786           
Flag Coverage Δ
GPU 72.67% <73.33%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Collaborator

@EmmonsCurse EmmonsCurse left a comment

Choose a reason for hiding this comment

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

LGTM~ Skip coverage check as it mainly relies on end-to-end tests.

@EmmonsCurse EmmonsCurse merged commit 28f7727 into PaddlePaddle:develop Mar 9, 2026
24 of 28 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.

4 participants