Two-level dynamic scheduling in PARDISO: improved scalability on shared memory multiprocessing systems

  • Authors:
  • Olaf Schenk;Klaus Gärtner

  • Affiliations:
  • Department of Computer Science, University of Basel, Klingelbergstrasse 50, CH-4056 Basel, Switzerland;Weierstrass Institute for Applied Analysis and Stochastics, Mohrenstr 39, D-10117, Berlin, Germany

  • Venue:
  • Parallel Computing - Parallel matrix algorithms and applications
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

The PARDISO package is a mathematical library of OpenMP routines for the parallel direct solution of large sparse linear systems of equations. One objective of PARDISO is to achieve a high efficiency on shared memory multiprocessing systems. A new parallelization strategy based on a dynamic two-level scheduling scheme is therefore explored. The method aims at minimizing cache conflicts and interprocessor communication costs and, at the same time, maximizing processor load balance and Level-3 BLAS performance. The synchronization events are reduced by one order of magnitude compared with a one-level scheduling strategy. This results in an efficient parallel sparse LU decomposition method. An overview of the two-level scheduling algorithm and the key algorithmic features of the solver PARDISO is given, Finally, numerical results and a comparison with another software package demonstrate the performance.