Skip to content

[GC Debugger] Simply and improve GC Debugger Utils#29029

Merged
22quinn merged 2 commits intovllm-project:mainfrom
Jialin:gc
Nov 20, 2025
Merged

[GC Debugger] Simply and improve GC Debugger Utils#29029
22quinn merged 2 commits intovllm-project:mainfrom
Jialin:gc

Conversation

@Jialin
Copy link
Copy Markdown
Collaborator

@Jialin Jialin commented Nov 19, 2025

Purpose

Further improve GC Debugger.

  • [Broader Usage] Move maybe_attach_gc_debug_callback from EngineCoreProcess to EngineCore which potentially enabled GC debugger for more usage (e.g. External Launcher)
  • [Perf] Only invoke gc.get_objects, when top_objects is not set (reduce the overhead, when we just enable lightweight GC debugger)

Test Plan & Test Results

CI Signals and verify the changed locally


Essential Elements of an Effective PR Description Checklist
  • The purpose of the PR, such as "Fix some issue (link existing issues this PR will resolve)".
  • The test plan, such as providing test command.
  • The test results, such as pasting the results comparison before and after, or e2e results
  • (Optional) The necessary documentation update, such as updating supported_models.md and examples for a new model.
  • (Optional) Release notes update. If your change is user facing, please update the release notes draft in the Google Doc.

Signed-off-by: Jialin Ouyang <Jialin.Ouyang@gmail.com>
Signed-off-by: Jialin Ouyang <Jialin.Ouyang@gmail.com>
@mergify mergify bot added the v1 label Nov 19, 2025
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request introduces several valuable improvements to the GC Debugger utilities. The changes include a performance optimization to conditionally invoke gc.get_objects, reducing overhead during lightweight debugging. The freeze_gc_heap function has been simplified by replacing redundant garbage collection calls with a single, more efficient call. Additionally, the GC debugger attachment logic has been refactored and moved to the more general EngineCore class, broadening its applicability. These changes are well-implemented, correct, and enhance both the performance and the architecture of the GC debugging tools. The pull request is a solid contribution.

@22quinn 22quinn enabled auto-merge (squash) November 19, 2025 21:44
@github-actions github-actions bot added the ready ONLY add when PR is ready to merge/full CI is needed label Nov 19, 2025
@22quinn 22quinn merged commit 537cc63 into vllm-project:main Nov 20, 2025
45 checks passed
devpatelio pushed a commit to SumanthRH/vllm that referenced this pull request Nov 29, 2025
Signed-off-by: Jialin Ouyang <Jialin.Ouyang@gmail.com>
kitaekatt pushed a commit to kitaekatt/vllm that referenced this pull request Dec 1, 2025
Signed-off-by: Jialin Ouyang <Jialin.Ouyang@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready ONLY add when PR is ready to merge/full CI is needed v1

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants