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

Support global arbitration without spilling enabled in arbitrator #11381

Closed

Conversation

tanjialiang
Copy link
Contributor

Add feature that allows shared arbitrator's global arbitration to skip spilling, only do abort.

@tanjialiang tanjialiang requested a review from xiaoxmeng October 30, 2024 00:48
@facebook-github-bot facebook-github-bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Oct 30, 2024
Copy link

netlify bot commented Oct 30, 2024

Deploy Preview for meta-velox canceled.

Name Link
🔨 Latest commit c98c5a1
🔍 Latest deploy log https://app.netlify.com/sites/meta-velox/deploys/6724259cd60a68000881307a

@facebook-github-bot
Copy link
Contributor

@tanjialiang has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

Copy link
Contributor

@xiaoxmeng xiaoxmeng left a comment

Choose a reason for hiding this comment

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

@tanjialiang LGTM % minors. Thanks!

velox/common/memory/SharedArbitrator.h Show resolved Hide resolved
velox/common/memory/SharedArbitrator.cpp Outdated Show resolved Hide resolved
velox/common/memory/SharedArbitrator.cpp Outdated Show resolved Hide resolved
@facebook-github-bot
Copy link
Contributor

@tanjialiang has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

Copy link
Contributor

@xiaoxmeng xiaoxmeng left a comment

Choose a reason for hiding this comment

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

@tanjialiang thanks for the update!

(getCurrentTimeMs() - startTimeMs) < maxArbitrationTimeMs_ / 2 &&
(reclaimByAbort || (allParticipantsReclaimed && reclaimedBytes == 0));
if (!reclaimByAbort) {
shouldReclaimByAbort = globalArbitrationWithoutSpill_ ||
Copy link
Contributor

Choose a reason for hiding this comment

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

Maybe add a utility

bool reclaimByAbort = reclaimByAbort(/*hasReclaimedByAbort=*/reclaimByAbort, arbitrationRunTime, allParticipantsReclaimed, /*lastReclaimedBytes=*/reclaimedBytes);

@facebook-github-bot
Copy link
Contributor

@tanjialiang has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

@facebook-github-bot
Copy link
Contributor

@tanjialiang merged this pull request in 2090d78.

Copy link

Conbench analyzed the 1 benchmark run on commit 2090d78d.

There were no benchmark performance regressions. 🎉

The full Conbench report has more details.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. Merged
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants