In recent months, we have been experimenting with a parallel implementation of the finite element method (FEM) built around an algorithm developed by William Layton and Patrick Rabier of the University of Pittsburgh. The superiority of this algorithm to contemporary preconditioned conjugate gradient (PCG) methods may be attributed to its robustness and remarkable efficiency across a wide range of problems and problem sizes. The new method was shown to converge for highly non-symmetric problems where optimal ordering methods failed. Their single-processor code was also shown to be competitive with PCG for cases where PCG did converge.
An adaptive mesh of nonconforming finite elements clustering in the
vicinity of a discontinuity. (This image was created by Joseph Maubach,
Department of Mathematics, University of Pittsburgh.)
Optimized two-dimensional research codes for the C90 and T3D were constructed in order to study the potential for integrating the algorithm into a standard finite element package on a distributed memory platform. With these codes, we were able to demonstrate that the parallel component of the new method exceeds 99.5% and that the operation counts for problems with N degrees of freedom (DOF) are of order N3/2.
In terms of performance, we have solved problems ranging to 6 million DOF in less than six minutes on the C90 (16 CPUs) and under four minutes on the T3D (512 PEs). For smaller cases (~100,000 DOF), the new method has been shown to be four orders of magnitude faster than the fastest commercial solvers for the C90. We are working on a proof-of-concept code which will support a subset of the command language used by a major engineering software vendor.
A paper describing this work was presented at the Spring 1995 Cray User Group Conference in Denver, Colorado. Copies may be obtained by writing to the authors (oneal@psc.edu and rreddy@psc.edu). Questions and comments from interested readers are invited.