[
https://issues.apache.org/jira/browse/YARN-2113?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15989599#comment-15989599
]
Wangda Tan commented on YARN-2113:
----------------------------------
[~eepayne]/[~sunilg] here's my understanding of the two policies:
1) Priority first:
App1 can preempt App2 if:
When App1.priority > App2.priority
- User of app1 not reached user-limit
When App1.priority = App2.priority
- app1.user != app2.user
- User of app1 not reached user-limit
- User of app2 beyond user-limit.
2) User limit first:
App1 can preempt app2 if:
- app1.user != app2.user
- User of app1 not reached user-limit
- User of app2 beyond user-limit.
For both:
- No matter if {{app1.user}} is outside of {{#100/MULP}} or not, no change to
preemption behavior. (To the example in
https://issues.apache.org/jira/browse/YARN-2113?focusedCommentId=15951222&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15951222,
if policy is PRIORITY_FIRST, preemption is allowed but if policy is
USERLIMIT_FIRST, preemption is not allowed).
If I understand Jason's comment correctly:
https://issues.apache.org/jira/browse/YARN-2113?focusedCommentId=15951538&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15951538,
above behavior should support both scenarios via different policies:
USERLIMIT_FIRST don't allow any preemption to an user who is below user limit;
PRIORITY_FIRST allows preemption happen if one app has higher priority than
another.
> Add cross-user preemption within CapacityScheduler's leaf-queue
> ---------------------------------------------------------------
>
> Key: YARN-2113
> URL: https://issues.apache.org/jira/browse/YARN-2113
> Project: Hadoop YARN
> Issue Type: Sub-task
> Components: scheduler
> Reporter: Vinod Kumar Vavilapalli
> Assignee: Sunil G
> Attachments: IntraQueue Preemption-Impact Analysis.pdf,
> TestNoIntraQueuePreemptionIfBelowUserLimitAndDifferentPrioritiesWithExtraUsers.txt,
> YARN-2113.0001.patch, YARN-2113.0002.patch, YARN-2113.0003.patch,
> YARN-2113.0004.patch, YARN-2113.0005.patch, YARN-2113.0006.patch,
> YARN-2113.0007.patch, YARN-2113.0008.patch, YARN-2113.0009.patch,
> YARN-2113.0010.patch, YARN-2113.0011.patch, YARN-2113.0012.patch,
> YARN-2113.0013.patch, YARN-2113.apply.onto.0012.ericp.patch,
> YARN-2113.v0.patch
>
>
> Preemption today only works across queues and moves around resources across
> queues per demand and usage. We should also have user-level preemption within
> a queue, to balance capacity across users in a predictable manner.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]