Masters thesis describes an Malleable/Adaptive Job System.
Malleable jobs are parallel programs that can change the number of processors on which they are executing at run time in response to an external command. One of the advantages of such jobs is that a job scheduler for malleable jobs can provide improved system utilization and average response time over a scheduler for traditional jobs. In this thesis, we present a programming system for creating malleable jobs that is more general than other current malleable systems. In particular, it is not limited to the master-worker paradigm or the Fortran SPMD programming model, but can also support general purpose parallel programs including those written in MPI and Charm++, and has built-in migration and load-balancing, among other features.
The paper also presents a Malleable Job Scheduler which schedules malleable jobs to maximize utilization and minimize response time. Profit oriented and market driven schedulers which maximize the profit gained from running a malleable jobh are also presented.