Symmetric Indefinite Linear Solver Using OpenMP Task on Multicore Architectures

被引:7
|
作者
Yamazaki, Ichitaro [1 ]
Kurzak, Jakub [1 ]
Wu, Panruo [1 ]
Zounon, Mawussi [2 ]
Dongarra, Jack [2 ]
机构
[1] Univ Tennessee, Elect Engn & Comp Sci, Knoxville, TN 37996 USA
[2] Univ Manchester, Sch Math, Manchester M13 9PL, Lancs, England
关键词
Linear algebra; symmetric indefinite matrices; multithreading; Runtime;
D O I
10.1109/TPDS.2018.2808964
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Recently, the Open Multi-Processing (OpenMP) standard has incorporated task-based programming, where a function call with input and output data is treated as a task. At run time, OpenMP's superscalar scheduler tracks the data dependencies among the tasks and executes the tasks as their dependencies are resolved. On a shared-memory architecture with multiple cores, the independent tasks are executed on different cores in parallel, thereby enabling parallel execution of a seemingly sequential code. With the emergence of many-core architectures, this type of programming paradigm is gaining attention-not only because of its simplicity, but also because it breaks the artificial synchronization points of the program and improves its thread-level parallelization. In this paper, we use these new OpenMP features to develop a portable high-performance implementation of a dense symmetric indefinite linear solver. Obtaining high performance from this kind of solver is a challenge because the symmetric pivoting, which is required to maintain numerical stability, leads to data dependencies that prevent us from using some common performance-improving techniques. To fully utilize a large number of cores through tasking, while conforming to the OpenMP standard, we describe several techniques. Our performance results on current many-core architectures-including Intel's Broadwell, Intel's Knights Landing, IBM's Power8, and Arm's ARMv8-demonstrate the portable and superior performance of our implementation compared with the Linear Algebra PACKage (LAPACK). The resulting solver is now available as a part of the PLASMA software package.
引用
收藏
页码:1879 / 1892
页数:14
相关论文
共 50 条
  • [21] OpenMP implementation of parallel linear solver for reservoir simulation
    Hu, Changjun
    Zhang, Jilin
    Wang, Jue
    Li, Jianjiang
    PRACTICAL PROGRAMMING MODEL FOR THE MULTI-CORE ERA, PROCEEDINGS, 2008, 4935 : 134 - 137
  • [22] A symmetric linear system solver
    Rao, S. Chandra Sekhara
    Sarita
    APPLIED MATHEMATICS AND COMPUTATION, 2008, 203 (01) : 368 - 379
  • [23] Parallel direct methods for solving the system of linear equations with pipelining on a multicore using OpenMP
    Michailidis, Panagiotis D.
    Margaritis, Konstantinos G.
    JOURNAL OF COMPUTATIONAL AND APPLIED MATHEMATICS, 2011, 236 (03) : 326 - 341
  • [24] Solving the Generalized Symmetric Eigenvalue Problem using Tile Algorithms on Multicore Architectures
    Ltaief, Hatem
    Luszczek, Piotr
    Haidar, Azzam
    Dongarra, Jack
    APPLICATIONS, TOOLS AND TECHNIQUES ON THE ROAD TO EXASCALE COMPUTING, 2012, 22 : 397 - 404
  • [25] Task-Based Sparse Hybrid Linear Solver for Distributed Memory Heterogeneous Architectures
    Agullo, Emmanuel
    Giraud, Luc
    Nakov, Stojce
    EURO-PAR 2016: PARALLEL PROCESSING WORKSHOPS, 2017, 10104 : 83 - 95
  • [26] Dense Symmetric Indefinite Factorization on GPU Accelerated Architectures
    Baboulin, Marc
    Dongarra, Jack
    Remy, Adrien
    Tomov, Stanimire
    Yamazaki, Ichitaro
    PARALLEL PROCESSING AND APPLIED MATHEMATICS, PPAM 2015, PT I, 2016, 9573 : 86 - 95
  • [27] A Study of a Software Cache Implementation of the OpenMP Memory Model for Multicore and Manycore Architectures
    Chen, Chen
    Manzano, Joseph B.
    Gan, Ge
    Gao, Guang R.
    Sarkar, Vivek
    EURO-PAR 2010 - PARALLEL PROCESSING, PART II, 2010, 6272 : 341 - +
  • [28] An algorithm for symmetric indefinite linear systems
    Chen, Dandan
    Huang, Ting-Zhu
    Li, Liang
    JOURNAL OF COMPUTATIONAL ANALYSIS AND APPLICATIONS, 2012, 14 (04) : 767 - 784
  • [29] Divide and Conquer Symmetric Tridiagonal Eigensolver for Multicore Architectures
    Pichon, Gregoire
    Haidar, Azzam
    Faverge, Mathieu
    Kurzak, Jakub
    2015 IEEE 29TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM (IPDPS), 2015, : 51 - 60
  • [30] Assembly Operations for Multicore Architectures Using Task-Based Runtime Systems
    Genet, Damien
    Guermouche, Abdou
    Bosilca, George
    EURO-PAR 2014: PARALLEL PROCESSING WORKSHOPS, PT II, 2014, 8806 : 338 - 350