Fine‐grain task‐parallel algorithms for matrix factorizations and inversion on many‐threaded CPUs

Sandra Catalán, José R. Herrero, Francisco D. Igual, Enrique S. Quintana–Ort́ı, Rafael Rodríguez‐Sánchez · Concurrency and Computation Practice and Experience · 2022

Abstract We extend a two‐level task partitioning previously applied to the inversion of dense matrices via Gauss–Jordan elimination to the more challenging QR factorization as well as the initial orthogonal reduction to band form found in the singular value decomposition. Our new task‐parallel algorithms leverage the tasking mechanism currently available in OpenMP to exploit “nested” task parallelism, with a first outer level that operates on matrix panels and a second inner level that processes the matrix either by ‐panels or by tiles, in order to expose a large number of independent tasks. We present a detailed performance analysis, including execution traces, which shows that the two‐level refinement into fine grain tasks allows for an improved load balancing and delivers high performance on current general‐purpose many‐core processors (CPUs) from Intel and AMD.

Read the paper · More papers on PaperTik