hadoop-yarn-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Daniel Templeton (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (YARN-6320) FairScheduler:Identifying apps to assign in updateThread
Date Sat, 11 Mar 2017 00:04:04 GMT

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

Daniel Templeton commented on YARN-6320:

Excellent idea. That's something we've been kicking around for a while.  YARN-5139 proposes
that model for the capacity scheduler.  Have a look at the specs there for a sense of scope.

> FairScheduler:Identifying apps to assign in updateThread
> --------------------------------------------------------
>                 Key: YARN-6320
>                 URL: https://issues.apache.org/jira/browse/YARN-6320
>             Project: Hadoop YARN
>          Issue Type: Bug
>            Reporter: Tao Jie
> In FairScheduler today, we have 1)UpdateThread that update queue/app status, fairshare,
starvation info, 2)nodeUpdate triggered by NM heartbeat that do the scheduling. When we handle
one nodeUpdate, we will top-down from the root queue to the leafqueues and find the most needy
application to allocate container according to queue's fairshare. Also we should sort children
at each hierarchy level.
> My thought is that we have a global sorted {{candidateAppList}} which keeps apps need
to assign, and move the logic that "find app that should allocate resource to" from nodeUpdate
to UpdateThread. In UpdateThread, we find candidate apps to assign and put them into {{candidateAppList}}.
In nodeUpdate, we consume the list and allocate containers to apps. 
> As far as I see, we can have 3 benifits:
> 1, nodeUpdate() is invoked much more frequently than update() in UpdateThread, especially
in a large cluster. As a result we can reduce much unnecessary sorting.
> 2, It will have better coordination with YARN-5829, we can indicate apps to assign more
directly rather than let nodes find the best apps to assign.
> 3, It seems to be easier to introduce scheduling restricts such as nodelabel, affinity/anti-affinity
into FS, since we can pre-allocate containers asynchronously.
> [~kasha], [~templedf], [~yufeigu] like to hear your thoughts.

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: yarn-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: yarn-issues-help@hadoop.apache.org

View raw message