Skip to content
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

Deduplicate locally executed path mapped spawns #22556

Open
wants to merge 12 commits into
base: master
Choose a base branch
from

Conversation

fmeum
Copy link
Collaborator

@fmeum fmeum commented May 27, 2024

When path mapping is enabled, different Spawns in the same build can have identical RemoteAction.ActionKeys and can thus provide remote cache hits for each other. However, cache hits are only possible after the first local execution has concluded and uploaded its result to the cache.

To avoid unnecessary duplication of local work, the first Spawn for each RemoteAction.ActionKey is tracked until its results have been uploaded and all other concurrently scheduled Spawns wait for it and then copy over its local outputs.

Fixes #21043

@fmeum fmeum force-pushed the 21043-deduplicate-action branch from 27e14e8 to ef83b2a Compare May 28, 2024 20:05
@fmeum fmeum marked this pull request as ready for review May 28, 2024 20:05
@fmeum fmeum requested a review from a team as a code owner May 28, 2024 20:05
@fmeum fmeum requested a review from tjgq May 28, 2024 20:05
@github-actions github-actions bot added team-Performance Issues for Performance teams team-Remote-Exec Issues and PRs for the Execution (Remote) team awaiting-review PR is awaiting review from an assigned reviewer labels May 28, 2024
@fmeum
Copy link
Collaborator Author

fmeum commented Jun 14, 2024

@tjgq Gentle ping

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awaiting-review PR is awaiting review from an assigned reviewer team-Performance Issues for Performance teams team-Remote-Exec Issues and PRs for the Execution (Remote) team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

--experimental_output_paths=strip is not effective when actions are scheduled in parallel
1 participant