[ 
https://issues.apache.org/jira/browse/YARN-2498?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14503692#comment-14503692
 ] 

Wangda Tan commented on YARN-2498:
----------------------------------

Short notes about this patch:
- It indepdently computes ideal_allocation for each partition, only containers 
in over-satisfied partition will be preempted.
- It modifies LeafQueue to record ignore_partition_exclusivity containers, when 
doing container preemption, it will first preempt ignore_partition_exclusivity 
containers.
- Time complexity of new algorithm is as same as before, for individual queue, 
it takes at most O(number-of-containers-in-the-queue) in every preemption cycle.
- The original test mocking framework doesn't support specifying partition 
capacity information for queues and doesn't support specify container info in 
individual applications, created a new test framework and added several test 
cases for partition preemption. (See 
TestProportionalCapacityPreemptionPolicyForNodePartitions).

> Respect labels in preemption policy of capacity scheduler
> ---------------------------------------------------------
>
>                 Key: YARN-2498
>                 URL: https://issues.apache.org/jira/browse/YARN-2498
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: resourcemanager
>            Reporter: Wangda Tan
>            Assignee: Wangda Tan
>         Attachments: STALED-YARN-2498.zip, YARN-2498.1.patch
>
>
> There're 3 stages in ProportionalCapacityPreemptionPolicy,
> # Recursively calculate {{ideal_assigned}} for queue. This is depends on 
> available resource, resource used/pending in each queue and guaranteed 
> capacity of each queue.
> # Mark to-be preempted containers: For each over-satisfied queue, it will 
> mark some containers will be preempted.
> # Notify scheduler about to-be preempted container.
> We need respect labels in the cluster for both #1 and #2:
> For #1, when there're some resource available in the cluster, we shouldn't 
> assign it to a queue (by increasing {{ideal_assigned}}) if the queue cannot 
> access such labels
> For #2, when we make decision about whether we need preempt a container, we 
> need make sure, resource this container is *possibly* usable by a queue which 
> is under-satisfied and has pending resource.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to