Basker: Parallel sparse LU factorization utilizing hierarchical parallelism and data layouts
Autor: | Heidi K. Thornquist, Sivasankaran Rajamanickam, Joshua Dennis Booth, Nathan Ellingwood |
---|---|
Rok vydání: | 2017 |
Předmět: |
Multi-core processor
Speedup Memory hierarchy Computer Networks and Communications Computer science Parallel algorithm 010103 numerical & computational mathematics Parallel computing Solver 01 natural sciences Computer Graphics and Computer-Aided Design LU decomposition Theoretical Computer Science law.invention 010101 applied mathematics Matrix (mathematics) Shared memory Factorization Artificial Intelligence Hardware and Architecture law 0101 mathematics Software Xeon Phi Sparse matrix |
Zdroj: | Parallel Computing. 68:17-31 |
ISSN: | 0167-8191 |
DOI: | 10.1016/j.parco.2017.06.003 |
Popis: | Transient simulation in circuit simulation tools, such as SPICE and Xyce, depend on scalable and robust sparse LU factorizations for efficient numerical simulation of circuits and power grids. As the need for simulations of very large circuits grow, the prevalence of multicore architectures enable us to use shared memory parallel algorithms for such simulations. A parallel factorization is a critical component of such shared memory parallel simulations. We develop a parallel sparse factorization algorithm that can solve problems from circuit simulations efficiently, and map well to architectural features. This new factorization algorithm exposes hierarchical parallelism to accommodate irregular structure that arise in our target problems. It also uses a hierarchical two-dimensional data layout which reduces synchronization costs and maps to memory hierarchy found in multicore processors. We present an OpenMP based implementation of the parallel algorithm in a new multithreaded solver called Basker in the Trilinos framework. We present performance evaluations of Basker on the Intel SandyBridge and Xeon Phi platforms using circuit and power grid matrices taken from the University of Florida sparse matrix collection and from Xyce circuit simulation. Basker achieves a geometric mean speedup of 5.91× on CPU (16 cores) and 7.4× on Xeon Phi (32 cores) relative to state-of-the-art solver KLU. Basker outperforms Intel MKL Pardiso solver (PMKL) by as much as 30× on CPU (16 cores) and 7.5× on Xeon Phi (32 cores) for low fill-in circuit matrices. Furthermore, Basker provides 5.4× speedup on a challenging matrix sequence taken from an actual Xyce simulation. |
Databáze: | OpenAIRE |
Externí odkaz: |