Advanced Eager Scheduling for Java-Based
Adaptively Parallel Computing


Michael O. Neary and Peter Cappello
Concurrency and Computation: Practice and Experience,2005

Abstract

Javelin 3 is a software system for developing large-scale, fault tolerant, adaptively parallel applications. When all or part of their application can be cast as a master-worker or branch-and-bound computation, Javelin 3 frees application developers from concerns about inter-processor communication and fault tolerance among networked hosts, allowing them to focus on the underlying application. The paper describes a fault tolerant task scheduler and its performance analysis.  The task scheduler integrates work stealing with an advanced form of eager scheduling. It enables dynamic task decomposition, which improves host load-balancing in the presence of tasks whose non-uniform computational load is evident only at execution time. Speedup measurements are presented of actual performance  on up to 1,000 hosts. We analyze the expected performance degradation due to unresponsive hosts, and measure actual performance degradation due to unresponsive hosts.

BibTex

@article{cappello:2004:cacpac,
    author    = {Michael O. Neary and Peter Cappello},
    title     = {{Advanced Eager Scheduling for Java-Based Adaptively Parallel 
                  Computing}},
    journal   = {Concurrency and Computation: Practice and Experience},
    year      = {2005},
    volume    = {17},
    number    = {},
    pages     = {797 - 819},
    month     = {},
    note      = {Received 15 Jan 03. Revised 31 Aug 03. Accepted 14 Oct 03. concurrent programming, branch and bound, eager scheduling, fault tolerance, Grid computing, parallel computing},
}

Full version