[ https://issues.apache.org/jira/browse/YARN-8379?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16524263#comment-16524263 ]
Sunil Govindan commented on YARN-8379: -------------------------------------- Thanks [~eepayne]. I will be having bandwidth to check this. So I ll help in this. Few comments in this patch. # I think its better to rename PREEMPTION_TO_BALANCE_QUEUES_AFTER_SATISFIED to PREEMPTION_TO_BALANCE_QUEUES_BEYOND_GUARANTEED and similar variables. # PREEMPTION_TO_BALANCE_QUEUES_AFTER_SATISFIED_MAX_WAIT_BEFORE_KILL to MAX_WAIT_BEFORE_KILL_FOR_QUEUE_BALANCE_PREEMPTION and other similar variables. # Could we move this one as the list selector. {code:java} 263 if (isPreemptionToBalanceRequired) { 264 PreemptionCandidatesSelector selector = new FifoCandidatesSelector(this, 265 false, true); 266 selector.setMaximumKillWaitTime(maximumKillWaitTimeForPreemptionToQueueBalance); 267 candidatesSelectionPolicies.add(selector); 268 }{code} # I have some doubt about below code {code:java} curCandidates = selector.selectCandidates(toPreempt, curCandidates, clusterResources, totalPreemptionAllowed); {code} {code:java} toPreempt = selector.selectCandidates(toPreempt, clusterResources, totalPreemptionAllowed); {code} Earlier selector know what the selectedCandidates from toPreempt. Now i dnt this we will get this > Add an option to allow Capacity Scheduler preemption to balance satisfied > queues > -------------------------------------------------------------------------------- > > Key: YARN-8379 > URL: https://issues.apache.org/jira/browse/YARN-8379 > Project: Hadoop YARN > Issue Type: Bug > Reporter: Wangda Tan > Assignee: Zian Chen > Priority: Major > Attachments: YARN-8379.001.patch, YARN-8379.002.patch, > YARN-8379.003.patch, YARN-8379.004.patch, ericpayne.confs.tgz > > > Existing capacity scheduler only supports preemption for an underutilized > queue to reach its guaranteed resource. In addition to that, there’s an > requirement to get better balance between queues when all of them reach > guaranteed resource but with different fairness resource. > An example is, 3 queues with capacity, queue_a = 30%, queue_b = 30%, queue_c > = 40%. At time T. queue_a is using 30%, queue_b is using 70%. Existing > scheduler preemption won't happen. But this is unfair to queue_a since > queue_a has the same guaranteed resources. > Before YARN-5864, capacity scheduler do additional preemption to balance > queues. We changed the logic since it could preempt too many containers > between queues when all queues are satisfied. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org