Parallel programming with message passing and directives
Steve W. Bova, Clay P. Breshears, Henry A. Gabb, Bob Kuhn, Bill Magro, Rudolf Eigenmann, Greg Gaertner, Stef Salvini, Heidi C. M. Scott · Computing in Science & Engineering · 2001
The authors discuss methods for expressing and tuning the performance of parallel programs, using two programming models in the same program: distributed and shared memory. Such methods are important for anyone who uses these large machines for parallel programs as well as for those who study combinations of the two programming models. The article outlines applications in hydrology, computational chemistry, general science, seismic processing, aeronautics, and computational physics. Emphasizing both I/O and computation, they apply several numerical methods including finite element analysis, wave equation integration, linear algebra subroutines, fast Fourier transforms (FFTs), filters, and a variety of PDEs (partial differential equations) and ODEs (ordinary differential equations).