[
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