Skip to content

Conversation

@vadiklyutiy
Copy link
Collaborator

@vadiklyutiy vadiklyutiy commented Mar 16, 2025

FIX #13697

ccache doesn't work when use with pip install -e .

Added hint to documentation:

When using ccache with pip install -e ., you should run CCACHE_NOHASHDIR="true" pip install --no-build-isolation -e .. This is because pip creates a new folder with a random name for each build, preventing ccache from recognizing that the same files are being built.

@github-actions
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.

🚀

@mergify mergify bot added the documentation Improvements or additions to documentation label Mar 16, 2025
@vadiklyutiy vadiklyutiy force-pushed the ccache-pip-install-doc branch from f571258 to d6af0ab Compare March 16, 2025 19:49
@vadiklyutiy vadiklyutiy changed the title [Doc] Add guidance for using ccache with pip install -e . in installation d… [Doc] Add guidance for using ccache with pip install -e . in doc Mar 16, 2025
Copy link
Collaborator

@comaniac comaniac left a comment

Choose a reason for hiding this comment

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

Thanks for the hint!

@comaniac comaniac added the ready ONLY add when PR is ready to merge/full CI is needed label Mar 16, 2025
@comaniac comaniac enabled auto-merge (squash) March 16, 2025 22:54
@comaniac comaniac merged commit 90df7f2 into vllm-project:main Mar 16, 2025
23 of 24 checks passed
DefTruth pushed a commit to DefTruth/vllm that referenced this pull request Mar 17, 2025
@ekagra-ranjan
Copy link
Contributor

ekagra-ranjan commented Apr 3, 2025

@vadiklyutiy @comaniac - when we use VLLM_USE_PRECOMPILED=1 pip install --editable ., it downloads the wheel file from the base commit in main branch. However, any local cpp/kernel changes will not be used as mentioned in the notes.

Do you think that if we use VLLM_USE_PRECOMPILED=1 CCACHE_NOHASHDIR="true" pip install --no-build-isolation -e . then the downloaded build files will be cached by ccache such that subsequent full build to build local cpp/kernel changes using CCACHE_NOHASHDIR="true" pip install --no-build-isolation -e . will be fast?

Basically, I am looking for a fast way to build a newly checkout of a vllm branch with some local cpp changes. Thanks!

lulmer pushed a commit to lulmer/vllm that referenced this pull request Apr 7, 2025
@vadiklyutiy
Copy link
Collaborator Author

vadiklyutiy commented Apr 10, 2025

Do you think that if we use VLLM_USE_PRECOMPILED=1 CCACHE_NOHASHDIR="true" pip install --no-build-isolation -e . then the downloaded build files will be cached by ccache such that subsequent full build to build local cpp/kernel changes using CCACHE_NOHASHDIR="true" pip install --no-build-isolation -e . will be fast?

ccache don't see any downloaded files. It sees only what have come locally through gcc/nvcc/etc.

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

Labels

documentation Improvements or additions to documentation ready ONLY add when PR is ready to merge/full CI is needed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Installation]: sccache/ccache is not effective

3 participants