In numerical algorithms based on adaptive mesh refinement, the computational workload changes during their execution. In mapping such algorithms on to distributed memory architectures, it is necessary to balance the workload among the processors dynamically in order to obtain high performance. In this paper, we propose a dynamic processor allocation algorithm for a mesh architecture that reassigns the workload in an attempt to minimize both the computational and communication costs. Our algorithm is based on a heuristic for a 2D packing problem that gives provably close to optimal solutions for special cases of the problem. We also demonstrate through experiments how our algorithm provides good quality solutions in general. >
['Ravi Varadarajan', 'Injae Hwang']
An efficient dynamic processor allocation algorithm for adaptive mesh applications