A parallel algorithm for Gaussian elimination over finite fields
In this paper we describe a parallel Gaussian elimination algorithm for matrices with entries in a finite field. Our algorithm subdivides a very large input matrix into smaller submatrices by subdividing both rows and columns into roughly square blocks sized so that computing with individual blocks on individual processors provides adequate concurrency. The algorithm also returns the transformation matrix, which encodes the row operations used. We go to some lengths to avoid storing any unnecessary data as we keep track of the row operations, such as block columns of the transformation matrix known to be zero. This helps the algorithm to scale to very large dimensions. The algorithm is accompanied by a concurrency analysis which shows that the improvement in concurrency is of the same order of magnitude as the number of blocks. An implementation of the algorithm has been tested on matrices as large as 1 , 500 , 000 × 1 , 500 , 000 over GF ( 2 ) .
Authors
- Jon Thackray
- Gabriele Nebe (ORCID: https://orcid.org/0000-0002-5297-5542)
- Richard A. Parker (ORCID: https://orcid.org/0000-0003-4888-8670)
- Alice C. Niemeyer (ORCID: https://orcid.org/0000-0002-2163-3240)
- Stephen Linton
Institutions
- Twitter (United States) (US)
- University of St Andrews (GB)
- RWTH Aachen University (DE)
Publication Details
- Journal
- Journal of Algebra
- Published
- 2025-11-01
- DOI
- https://doi.org/10.1016/j.jalgebra.2025.11.009
- Primary Topic
- Cryptography and Residue Arithmetic
- Type
- article
- Field-Weighted Citation Impact
- 0.00