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

follow up: coscheduling queue sort plugin starves pods #874

Open
googs1025 opened this issue Jan 25, 2025 · 4 comments
Open

follow up: coscheduling queue sort plugin starves pods #874

googs1025 opened this issue Jan 25, 2025 · 4 comments
Labels
kind/bug Categorizes issue or PR as related to a bug.

Comments

@googs1025
Copy link
Member

Since the issue #110 has been open for a long time and has not been resolved, I would like to open a new issue as a follow up.

There is no very depth research, but there are roughly two problems I think:

  • The sort plugins use InitialAttemptTimestamp to sort, which can easily cause pod starvation for pods enqueue later than pggroup's pod. Not all pods enqueued are managed by the podgroup, and there may be a large number of other pods. Therefore, it seems inappropriate to use only InitialAttemptTimestamp. based on coscheduling queue sort plugin starves pods #110 (comment)

  • When considering only InitialAttemptTimestamp enqueue in podgroup, there seems to be other problems: for example, podgroup should also consider minMember, we should satisfy most of the podgroup first, and then satisfy the pods of other numbers in the podgroup.

According to the above, can it be modified like this:

  1. Priority Comparison:
    First, compare the priorities of the two Pods.

  2. PodGroup Check:
    to get the PodGroup info for each Pod.
    If one Pod does not belong to any PodGroup and the other does:
    We use podInfo timestamp sorting.
    If both Pods belong to PodGroups, proceed to the next step.

  3. MinMember Comparison:
    For Pods belonging to PodGroups, check whether each PodGroup has met its minMember requirement.
    Give priority to PodGroups that have not yet met their minMember.
    If both PodGroups do not meet their minMember or both meet their minMember, compare the creation time of the PodGroups.

@googs1025
Copy link
Member Author

similar issue: #110 (comment)

@googs1025
Copy link
Member Author

@Huang-Wei @ffromani Could you please help me see if there is any problem with this idea? 🤔

@googs1025
Copy link
Member Author

/kind bug

@k8s-ci-robot k8s-ci-robot added the kind/bug Categorizes issue or PR as related to a bug. label Jan 25, 2025
@Huang-Wei
Copy link
Contributor

FYI: another proposal #661 (closed due to inactivity)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Categorizes issue or PR as related to a bug.
Projects
None yet
Development

No branches or pull requests

3 participants