A survey of recent developments in parallel implementations of Gaussian elimination

Simplice Donfack, Jack Dongarra, Mathieu Faverge, Mark Gates, Jakub Kurzak*, Piotr Luszczek, Ichitaro Yamazaki

*Corresponding author for this work

    Research output: Contribution to journalArticlepeer-review

    Abstract

    SummaryGaussian elimination is a canonical linear algebra procedure for solving linear systems of equations. In the last few years, the algorithm has received a lot of attention in an attempt to improve its parallel performance. This article surveys recent developments in parallel implementations of Gaussian elimination for shared memory architecture. Five different flavors are investigated. Three of them are based on different strategies for pivoting: partial pivoting, incremental pivoting, and tournament pivoting. The fourth one replaces pivoting with the Partial Random Butterfly Transformation, and finally, an implementation without pivoting is used as a performance baseline. The technique of iterative refinement is applied to recover numerical accuracy when necessary. All parallel implementations are produced using dynamic, superscalar, runtime scheduling and tile matrix layout. Results on two multisocket multicore systems are presented. Performance and numerical accuracy is analyzed.

    Original languageEnglish
    Pages (from-to)1292-1309
    Number of pages18
    JournalConcurrency and Computation: Practice & Experience
    Volume27
    Issue number5
    DOIs
    Publication statusPublished - 2 Jun 2015

    Keywords

    • Gaussian elimination
    • LU factorization
    • multicore
    • parallel
    • shared memory

    Fingerprint

    Dive into the research topics of 'A survey of recent developments in parallel implementations of Gaussian elimination'. Together they form a unique fingerprint.

    Cite this