An application of partition method for solving 3D Stokes equation

In our previous work we have studied the performance of a parallel algorithm, based on a direction splitting approach, for solving of time dependent Stokes equation. We used a rectangular uniform mesh, combined with a central difference scheme for the second derivatives. Hence, the proposed algorithm required only solution of tridiagonal linear systems.In our work, we are targeting massively parallel computers, as well as clusters of multi-core nodes. The somehow slower (experimentally-established) performance of the proposed approach was observed when using all cores on a single node of a cluster. To remedy this problem, we tried to use LAPACK subroutines from the multi-threaded layer library, but the parallel performance of the code (while improved) was still not satisfactory on a single (multi-core) node.Our current work considers hybrid parallelization based on the MPI and OpenMP standards. It is motivated by the need to maximize the parallel efficiency of our implementation of the proposed algorithm. Essential improvements of the parallel algorithm are achieved by introducing two levels of parallelism: (i) between-node parallelism based on the MPI and (ii) inside-node parallelism based on the OpenMP. The implementation was tested on Linux clusters with Intel processors and on the IBM supercomputer.

[1]  Maria Ganzha,et al.  Performance Evaluation of MPI/OpenMP Algorithm for 3D Time Dependent Problems , 2013, FedCSIS.

[2]  Jack Dongarra,et al.  MPI: The Complete Reference , 1996 .

[3]  P. Amodio,et al.  Parallel factorizations and parallel solvers for tridiagonal linear systems , 1992 .

[4]  Dan Nagle,et al.  MPI -- The Complete Reference, Vol. 1, The MPI Core, 2nd ed., Scientific and Engineering Computation Series, by Marc Snir, Steve Otto, Steven Huss-Lederman, David Walker and Jack Dongarra , 2005 .

[5]  Barbara Chapman,et al.  Using OpenMP - portable shared memory parallel programming , 2007, Scientific and engineering computation.

[6]  Plamen Y. Yalamov,et al.  On the Stability of a Partitioning Algorithm for Tridiagonal Systems , 1998, SIAM J. Matrix Anal. Appl..

[7]  Maria Ganzha,et al.  Performance Analysis of Parallel Alternating Directions Algorithm for Time Dependent Problems , 2011, PPAM.

[8]  Roger W. Hockney,et al.  A Fast Direct Solution of Poisson's Equation Using Fourier Analysis , 1965, JACM.

[9]  Jean-Luc Guermond,et al.  A new class of massively parallel direction splitting for the incompressible Navier―Stokes equations , 2011 .

[10]  CHRIS H. WALSHAW Diagonal Dominance in the Parallel Partition Method for Tridiagonal Systems , 1995, SIAM J. Matrix Anal. Appl..

[11]  Stefan Bondeli,et al.  Divide and conquer: a parallel algorithm for the solution of a tridiagonal linear system of equations , 1991, Parallel Comput..

[12]  Barbara Chapman,et al.  Using OpenMP: Portable Shared Memory Parallel Programming (Scientific and Engineering Computation) , 2007 .

[13]  T. Politi,et al.  Parallel factorizations for tridiagonal matrices , 1993 .

[14]  H. H. Wang,et al.  A Parallel Method for Tridiagonal Equations , 1981, TOMS.

[15]  James Demmel,et al.  LAPACK Users' Guide, Third Edition , 1999, Software, Environments and Tools.

[16]  Eric F. van de Velde,et al.  Alternating-Direction Line-Relaxation Methods on Multicomputers , 1996, SIAM J. Sci. Comput..

[17]  Lionel M. Ni,et al.  Parallel algorithms for solution of tridiagonal systems on multicomputers , 1989, ICS '89.

[18]  Maria Ganzha,et al.  Highly Parallel Alternating Directions Algorithm for Time Dependent Problems , 2011 .

[19]  Harold S. Stone,et al.  An Efficient Parallel Algorithm for the Solution of a Tridiagonal Linear System of Equations , 1973, JACM.

[20]  Rohit Chandra,et al.  Parallel programming in openMP , 2000 .

[21]  Jean-Luc Guermond,et al.  A new class of fractional step techniques for the incompressible Navier–Stokes equations using direction splitting , 2010 .