[ https://issues.apache.org/jira/browse/YARN-624?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13735965#comment-13735965 ]
Steve Loughran commented on YARN-624: ------------------------------------- I now think we can't just offload off this to the AM, because that can lead to a dining philosopher's class deadlock. example, 4 containers for service code, two AMs wanting 3 containers each, each with two allocated and waiting for the third... Gang scheduling in the RM would let it satisfy the constraints for one of the services (& choose based on queues). Otherwise: need a finite configurable limit on how long an AM can lease a container that isn't running code. That would make sense anyway if we allow a container to outlive a single program. > Support gang scheduling in the AM RM protocol > --------------------------------------------- > > Key: YARN-624 > URL: https://issues.apache.org/jira/browse/YARN-624 > Project: Hadoop YARN > Issue Type: Sub-task > Components: api, scheduler > Affects Versions: 2.0.4-alpha > Reporter: Sandy Ryza > Assignee: Sandy Ryza > > Per discussion on YARN-392 and elsewhere, gang scheduling, in which a > scheduler runs a set of tasks when they can all be run at the same time, > would be a useful feature for YARN schedulers to support. > Currently, AMs can approximate this by holding on to containers until they > get all the ones they need. However, this lends itself to deadlocks when > different AMs are waiting on the same containers. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira