Github user yingdachen commented on the issue:

    https://github.com/apache/tez/pull/33
  
    @jteagles thanks for your input.
    
    Regarding the implication of RM(YARN) supporting gang scheduling, it 
largely depends on how application/runtime is implemented, and may not be an 
absolute necessity.  While it would be best if strong gang-scheduling can be 
guaranteed by RM, but even when without, AM can still assist in several ways:
    
    1. AM can schedule all tasks in upstream and downstream vertices 
simultaneously, as is implemented in this change
    2. AM can gather information about downstream/upstream tasks and inform 
dependent tasks to put things into action only when all dependencies are 
satisfied. This will require mechanisms such as waiting/timeout/retry to be 
implemented in application runtime, but that would be something needed anyways, 
even with RM gang-scheduling.  Some of the changes along this line would be 
covered by TEZ-4000.
    



---

Reply via email to