Skip to content

Add option to use torch._inductor.standalone_compile #17057

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

zou3519
Copy link
Collaborator

@zou3519 zou3519 commented Apr 23, 2025

This PR adds the option to use torch._inductor.standalone_compile to perform compilation instead of compile_fx. The goal of standalone_compile is to remove the hacks around vLLM's usage of compile_fx, we want to migrate to using it in PyTorch 2.8.

standalone_compile replaces how vLLM interacts with the torch.compile caches. Instead of vLLM trying to redirect them into its torch_compile_cache folder, vLLM can pass standalone_compile a filepath that is inside of the torch_compile_cache folder and standalone_compile will write the full precompiled artifact to it.

Right now this option is hidden behind a config flag. It is also not tested in vLLM CI (vLLM CI only tests against PyTorch 2.6). This option also needs more testing before we turn it on by default for PyTorch 2.8+. I am putting this PR out so that we can merge something that we can keep developing on top of.

Test Plan:

Copy link

👋 Hi! Thank you for contributing to the vLLM project.

💬 Join our developer Slack at https://slack.vllm.ai to discuss your PR in #pr-reviews, coordinate on features in #feat- channels, or join special interest groups in #sig- channels.

Just a reminder: PRs would not trigger full CI run by default. Instead, it would only run fastcheck CI which starts running only a small and essential subset of CI tests to quickly catch errors. You can run other CI tests on top of those by going to your fastcheck build on Buildkite UI (linked in the PR checks section) and unblock them. If you do not have permission to unblock, ping simon-mo or khluu to add you in our Buildkite org.

Once the PR is approved and ready to go, your PR reviewer(s) can run CI to test the changes comprehensively before merging.

To run CI, PR reviewers can either: Add ready label to the PR or enable auto-merge.

🚀

@zou3519 zou3519 force-pushed the standalone_compile branch 2 times, most recently from de70e86 to 031b8a1 Compare April 23, 2025 15:41
This PR adds the option to use torch._inductor.standalone_compile to
perform compilation instead of compile_fx. The goal of
standalone_compile is to remove the hacks around vLLM's usage of
compile_fx, we want to migrate to using it in PyTorch 2.8.

standalone_compile replaces how vLLM interacts with the torch.compile
caches. Instead of vLLM trying to redirect them into its
torch_compile_cache folder, vLLM can pass standalone_compile a filepath
that is inside of the torch_compile_cache folder and standalone_compile
will write the full precompiled artifact to it.

Right now this option is hidden behind a config flag. It is also not
tested in vLLM CI (vLLM CI only tests against PyTorch 2.6).
This option also needs more testing before we turn it on by default for
PyTorch 2.8+. I am putting this PR out so that we can
merge something that we can keep developing on top of.

Test Plan:
- Run https://gist.github.com/zou3519/aebb622714e80f4cd4c369472f2372cd

Signed-off-by: rzou <[email protected]>
@zou3519 zou3519 force-pushed the standalone_compile branch from 031b8a1 to 24dc355 Compare April 23, 2025 18:32
@zou3519 zou3519 marked this pull request as ready for review April 24, 2025 00:42
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