A Parallel Multigrid Solver Based on Processor Virtualization

We investigate the use of the processor virtualization technique in parallelizing the multigrid algorithm on high performance computers. By doing processor virtualization, we can achieve adaptive process overlapping, better cache performance, and dynamic load balance control. We use a neighbor based virtual processor to physical processor mapping strategy and dynamically changing the number of virtual processors with the multigrid levels to maximum the performance of the multigrid solver. A V-cycle multigrid solver, is accomplished based on Charm++, a message driven parallel language developed by Parallel Programming Lab at University of Illinois at Urbana-Champaign. Numerical experiments for solving convection-diffusion type equations on structured grids are reported to show the benefits we get from processor virtualization.

[1]  Ulrich Rüde,et al.  Cache Optimization for Structured and Unstructured Grid Multigrid , 2000 .

[2]  Yousef Saad,et al.  Iterative methods for sparse linear systems , 2003 .

[3]  Manuel Prieto-Matías,et al.  An efficient parallel multigrid solver for 3-D convection-dominated problems , 2000 .

[4]  Murli M. Gupta,et al.  High accuracy multigrid solution of the 3D convection-diffusion equation , 2000, Appl. Math. Comput..

[5]  Jun Zhang,et al.  An explicit fourth‐order compact finite difference scheme for three‐dimensional convection–diffusion equation , 1998 .

[6]  Laxmikant V. Kale,et al.  NAMD2: Greater Scalability for Parallel Molecular Dynamics , 1999 .

[7]  Wolfgang Hackbusch,et al.  Multi-grid methods and applications , 1985, Springer series in computational mathematics.

[8]  Laxmikant V. Kalé,et al.  BigSim: a parallel simulator for performance prediction of extremely large parallel machines , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[9]  StübenKlaus Algebraic multigrid (AMG) , 1983 .

[10]  Robert D. Falgout,et al.  Semicoarsening Multigrid on Distributed Memory Machines , 1999, SIAM J. Sci. Comput..

[11]  Craig C. Douglas,et al.  Caching in with Multigrid Algorithms: Problems in Two Dimensions , 1996, Parallel Algorithms Appl..

[12]  Achi Brandt,et al.  Multigrid solvers on parallel computers , 1981 .

[13]  Craig C. Douglas A Review of Numerous Parallel Multigrid Methods , 1996, Applications on Advanced Architecture Computers.

[14]  Siddhartha Chatterjee,et al.  Cache-Efficient Multigrid Algorithms , 2004, Int. J. High Perform. Comput. Appl..

[15]  Laxmikant V. Kalé,et al.  NAMD: a Parallel, Object-Oriented Molecular Dynamics Program , 1996, Int. J. High Perform. Comput. Appl..

[16]  Laxmikant V. Kale,et al.  The Charm Parallel Programming Language and System: Part I - Description of Language Features , 1994 .

[17]  Dietrich Braess,et al.  On the combination of the multigrid method and conjugate gradients , 1986 .

[18]  William L. Briggs,et al.  A multigrid tutorial , 1987 .

[19]  Peter Bastian Load Balancing for Adaptive Multigrid Methods , 1998, SIAM J. Sci. Comput..

[20]  Alan Weiser,et al.  Semicoarsening Multigrid on a Hypercube , 1992, SIAM J. Sci. Comput..