@article {820, title = {Algorithm-based Fault Tolerance for Dense Matrix Factorizations, Multiple Failures, and Accuracy}, journal = {ACM Transactions on Parallel Computing}, volume = {1}, number = {10}, year = {2015}, month = {2015-01}, pages = {10:1-10:28}, abstract = {Dense matrix factorizations, such as LU, Cholesky and QR, are widely used for scientific applications that require solving systems of linear equations, eigenvalues and linear least squares problems. Such computations are normally carried out on supercomputers, whose ever-growing scale induces a fast decline of the Mean Time To Failure (MTTF). This paper proposes a new hybrid approach, based on Algorithm-Based Fault Tolerance (ABFT), to help matrix factorizations algorithms survive fail-stop failures. We consider extreme conditions, such as the absence of any reliable node and the possibility of losing both data and checksum from a single failure. We will present a generic solution for protecting the right factor, where the updates are applied, of all above mentioned factorizations. For the left factor, where the panel has been applied, we propose a scalable checkpointing algorithm. This algorithm features high degree of checkpointing parallelism and cooperatively utilizes the checksum storage leftover from the right factor protection. The fault-tolerant algorithms derived from this hybrid solution is applicable to a wide range of dense matrix factorizations, with minor modifications. Theoretical analysis shows that the fault tolerance overhead decreases inversely to the scaling in the number of computing units and the problem size. Experimental results of LU and QR factorization on the Kraken (Cray XT5) supercomputer validate the theoretical evaluation and confirm negligible overhead, with- and without-errors. Applicability to tolerate multiple failures and accuracy after multiple recovery is also considered.}, keywords = {ABFT, algorithms, fault-tolerance, High Performance Computing, linear algebra}, doi = {10.1145/2686892}, author = {Aurelien Bouteiller and Thomas Herault and George Bosilca and Peng Du and Jack Dongarra}, editor = {Phillip B. Gibbons} } @conference {836, title = {clMAGMA: High Performance Dense Linear Algebra with OpenCL }, booktitle = {International Workshop on OpenCL}, year = {2014}, month = {2014-05}, address = {Bristol University, England}, abstract = {This paper presents the design and implementation of several fundamental dense linear algebra (DLA) algorithms in OpenCL. In particular, these are linear system solvers and eigenvalue problem solvers. Further, we give an overview of the clMAGMA library, an open source, high performance OpenCL library that incorporates the developments presented, and in general provides to heterogeneous architectures the DLA functionality of the popular LAPACK library. The LAPACK-compliance and use of OpenCL simplify the use of clMAGMA in applications, while providing them with portably performant DLA. High performance is obtained through use of the high-performance OpenCL BLAS, hardware and OpenCL-specific tuning, and a hybridization methodology where we split the algorithm into computational tasks of various granularities. Execution of those tasks is properly scheduled over the heterogeneous hardware components by minimizing data movements and mapping algorithmic requirements to the architectural strengths of the various heterogeneous hardware components.}, author = {Chongxiao Cao and Jack Dongarra and Peng Du and Mark Gates and Piotr Luszczek and Stanimire Tomov} } @techreport {681, title = {clMAGMA: High Performance Dense Linear Algebra with OpenCL}, journal = {University of Tennessee Technical Report (Lawn 275)}, number = {UT-CS-13-706}, year = {2013}, month = {2013-03}, publisher = {University of Tennessee}, abstract = {This paper presents the design and implementation of sev- eral fundamental dense linear algebra (DLA) algorithms in OpenCL. In particular, these are linear system solvers and eigenvalue problem solvers. Further, we give an overview of the clMAGMA library, an open source, high performance OpenCL library that incorporates the developments pre- sented, and in general provides to heterogeneous architec- tures the DLA functionality of the popular LAPACK library. The LAPACK-compliance and use of OpenCL simplify the use of clMAGMA in applications, while providing them with portably performant DLA. High performance is ob- tained through use of the high-performance OpenCL BLAS, hardware and OpenCL-speci c tuning, and a hybridization methodology where we split the algorithm into computa- tional tasks of various granularities. Execution of those tasks is properly scheduled over the heterogeneous hardware components by minimizing data movements and mapping algorithmic requirements to the architectural strengths of the various heterogeneous hardware components.}, author = {Chongxiao Cao and Jack Dongarra and Peng Du and Mark Gates and Piotr Luszczek and Stanimire Tomov} } @article {691, title = {Extending the scope of the Checkpoint-on-Failure protocol for forward recovery in standard MPI}, journal = {Concurrency and Computation: Practice and Experience}, year = {2013}, month = {2013-07}, abstract = {Most predictions of exascale machines picture billion ways parallelism, encompassing not only millions of cores but also tens of thousands of nodes. Even considering extremely optimistic advances in hardware reliability, probabilistic amplification entails that failures will be unavoidable. Consequently, software fault tolerance is paramount to maintain future scientific productivity. Two major problems hinder ubiquitous adoption of fault tolerance techniques: (i) traditional checkpoint-based approaches incur a steep overhead on failure free operations and (ii) the dominant programming paradigm for parallel applications (the message passing interface (MPI) Standard) offers extremely limited support of software-level fault tolerance approaches. In this paper, we present an approach that relies exclusively on the features of a high quality implementation, as defined by the current MPI Standard, to enable advanced forward recovery techniques, without incurring the overhead of customary periodic checkpointing. With our approach, when failure strikes, applications regain control to make a checkpoint before quitting execution. This checkpoint is in reaction to the failure occurrence rather than periodic. This checkpoint is reloaded in a new MPI application, which restores a sane environment for the forward, application-based recovery technique to repair the failure-damaged dataset. The validity and performance of this approach are evaluated on large-scale systems, using the QR factorization as an example. Published 2013. This article is a US Government work and is in the public domain in the USA.}, doi = {10.1002/cpe.3100}, url = {http://doi.wiley.com/10.1002/cpe.3100}, author = {Wesley Bland and Peng Du and Aurelien Bouteiller and Thomas Herault and George Bosilca and Jack Dongarra} } @article {755, title = {Soft Error Resilient QR Factorization for Hybrid System with GPGPU}, journal = {Journal of Computational Science}, volume = {4}, year = {2013}, month = {2013-11}, pages = {457{\textendash}464}, abstract = {The general purpose graphics processing units (GPGPUs) are increasingly deployed for scientific computing due to their performance advantages over CPUs. What followed is the fact that fault tolerance has become a more serious concern compared to the period when GPGPUs were used exclusively for graphics applications. Using GPUs and CPUs together in a hybrid computing system increases flexibility and performance but also increases the possibility of the computations being affected by soft errors, for example, in the form of bit flips. In this work, we propose a soft error resilient algorithm for QR factorization on such hybrid systems. Our contributions include: (1) a checkpointing and recovery mechanism for the left-factor Q whose performance is scalable on hybrid systems; (2) optimized Givens rotation utilities on GPGPUs to efficiently reduce an upper Hessenberg matrix to an upper triangular form for the protection of the right factor R; and (3) a recovery algorithm based on QR update on GPGPUs. Experimental results show that our fault tolerant QR factorization can successfully detect and recover from soft errors in the entire matrix with little overhead on hybrid systems with GPGPUs.}, keywords = {gpgpu, gpu, magma}, doi = {http://dx.doi.org/10.1016/j.jocs.2013.01.004}, author = {Peng Du and Piotr Luszczek and Stanimire Tomov and Jack Dongarra} } @inproceedings {icl:672, title = {Algorithm-Based Fault Tolerance for Dense Matrix Factorization}, journal = {Proceedings of the 17th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPOPP 2012}, year = {2012}, month = {2012-02}, pages = {225-234}, publisher = {ACM}, address = {New Orleans, LA, USA}, abstract = {Dense matrix factorizations, such as LU, Cholesky and QR, are widely used for scientific applications that require solving systems of linear equations, eigenvalues and linear least squares problems. Such computations are normally carried out on supercomputers, whose ever-growing scale induces a fast decline of the Mean Time To Failure (MTTF). This paper proposes a new hybrid approach, based on Algorithm-Based Fault Tolerance (ABFT), to help matrix factorizations algorithms survive fail-stop failures. We consider extreme conditions, such as the absence of any reliable component and the possibility of loosing both data and checksum from a single failure. We will present a generic solution for protecting the right factor, where the updates are applied, of all above mentioned factorizations. For the left factor, where the panel has been applied, we propose a scalable checkpointing algorithm. This algorithm features high degree of checkpointing parallelism and cooperatively utilizes the checksum storage leftover from the right factor protection. The fault-tolerant algorithms derived from this hybrid solution is applicable to a wide range of dense matrix factorizations, with minor modifications. Theoretical analysis shows that the fault tolerance overhead sharply decreases with the scaling in the number of computing units and the problem size. Experimental results of LU and QR factorization on the Kraken (Cray XT5) supercomputer validate the theoretical evaluation and confirm negligible overhead, with- and without-errors.}, keywords = {ft-la, ftmpi}, doi = {10.1145/2145816.2145845}, author = {Peng Du and Aurelien Bouteiller and George Bosilca and Thomas Herault and Jack Dongarra}, editor = {J. Ramanujam and P. Sadayappan} } @inproceedings {icl:679, title = {A Checkpoint-on-Failure Protocol for Algorithm-Based Recovery in Standard MPI}, journal = {18th International European Conference on Parallel and Distributed Computing (Euro-Par 2012) (Best Paper Award)}, year = {2012}, month = {2012-08}, publisher = {Springer-Verlag}, address = {Rhodes, Greece}, author = {Wesley Bland and Peng Du and Aurelien Bouteiller and Thomas Herault and George Bosilca and Jack Dongarra}, editor = {Christos Kaklamanis and Theodore Papatheodorou and Paul Spirakis} } @techreport {icl:724, title = {Extending the Scope of the Checkpoint-on-Failure Protocol for Forward Recovery in Standard MPI}, journal = {University of Tennessee Computer Science Technical Report}, number = {ut-cs-12-702}, year = {2012}, month = {2012-00}, keywords = {ftmpi}, author = {Wesley Bland and Peng Du and Aurelien Bouteiller and Thomas Herault and George Bosilca and Jack Dongarra} } @article {icl:725, title = {From CUDA to OpenCL: Towards a Performance-portable Solution for Multi-platform GPU Programming}, journal = {Parallel Computing}, volume = {38}, number = {8}, year = {2012}, month = {2012-08}, pages = {391-407}, author = {Peng Du and Rick Weber and Piotr Luszczek and Stanimire Tomov and Gregory D. Peterson and Jack Dongarra} } @article {icl:708, title = {High Performance Dense Linear System Solver with Resilience to Multiple Soft Errors}, journal = {ICCS 2012}, year = {2012}, month = {2012-06}, address = {Omaha, NE}, author = {Peng Du and Piotr Luszczek and Jack Dongarra} } @article {icl:690, title = {An Implementation of the Tile QR Factorization for a GPU and Multiple CPUs}, journal = {Applied Parallel and Scientific Computing}, volume = {7133}, year = {2012}, month = {2012-00}, pages = {248-257}, author = {Jakub Kurzak and Rajib Nath and Peng Du and Jack Dongarra}, editor = {Kristj{\'a}n J{\'o}nasson} } @techreport {icl:715, title = {Providing GPU Capability to LU and QR within the ScaLAPACK Framework}, journal = {University of Tennessee Computer Science Technical Report (also LAWN 272)}, number = {UT-CS-12-699}, year = {2012}, month = {2012-09}, author = {Peng Du and Stanimire Tomov and Jack Dongarra} } @techreport {icl:626, title = {Algorithm-based Fault Tolerance for Dense Matrix Factorizations}, journal = {University of Tennessee Computer Science Technical Report}, number = {UT-CS-11-676}, year = {2011}, month = {2011-08}, address = {Knoxville, TN}, keywords = {ft-la}, author = {Peng Du and Aurelien Bouteiller and George Bosilca and Thomas Herault and Jack Dongarra} } @article {icl:622, title = {High Performance Dense Linear System Solver with Soft Error Resilience}, journal = {IEEE Cluster 2011}, year = {2011}, month = {2011-09}, address = {Austin, TX}, keywords = {ft-la}, author = {Peng Du and Piotr Luszczek and Jack Dongarra} } @techreport {icl:625, title = {Soft Error Resilient QR Factorization for Hybrid System}, journal = {University of Tennessee Computer Science Technical Report}, number = {UT-CS-11-675}, year = {2011}, month = {2011-07}, address = {Knoxville, TN}, keywords = {ft-la}, author = {Peng Du and Piotr Luszczek and Stanimire Tomov and Jack Dongarra} } @article {icl:635, title = {Soft Error Resilient QR Factorization for Hybrid System}, journal = {UT-CS-11-675 (also LAPACK Working Note $\#$252)}, number = {ICL-CS-11-675}, year = {2011}, month = {2011-07}, keywords = {magma}, author = {Peng Du and Piotr Luszczek and Stanimire Tomov and Jack Dongarra} } @article {icl:642, title = {Soft Error Resilient QR Factorization for Hybrid System with GPGPU}, journal = {Journal of Computational Science}, year = {2011}, month = {2011-11}, publisher = {Workshop on Latest Advances in Scalable Algorithms for Large-Scale Systems at SC11}, address = {Seattle, WA}, keywords = {ft-la}, author = {Peng Du and Piotr Luszczek and Stanimire Tomov and Jack Dongarra} } @inproceedings {icl:562, title = {Mixed-Tool Performance Analysis on Hybrid Multicore Architectures}, journal = {First International Workshop on Parallel Software Tools and Tool Infrastructures (PSTI 2010)}, year = {2010}, month = {2010-09}, address = {San Diego, CA}, keywords = {magma}, author = {Peng Du and Piotr Luszczek and Stanimire Tomov and Jack Dongarra} } @inproceedings {icl:549, title = {OpenCL Evaluation for Numerical Linear Algebra Library Development}, journal = {Symposium on Application Accelerators in High-Performance Computing (SAAHPC {\textquoteright}10)}, year = {2010}, month = {2010-07}, address = {Knoxville, TN}, keywords = {magma}, author = {Peng Du and Piotr Luszczek and Jack Dongarra} } @article {icl:521, title = {A Scalable High Performant Cholesky Factorization for Multicore with GPU Accelerators}, journal = {Proc. of VECPAR{\textquoteright}10 (to appear)}, year = {2010}, month = {2010-06}, address = {Berkeley, CA}, keywords = {magma, plasma}, author = {Hatem Ltaeif and Stanimire Tomov and Rajib Nath and Peng Du and Jack Dongarra} } @article {icl:561, title = {Tuning Principal Component Analysis for GRASS GIS on Multi-core and GPU Architectures}, journal = {FOSS4G 2010}, year = {2010}, month = {2010-09}, address = {Barcelona, Spain}, keywords = {magma}, author = {Peng Du and Matthew Parsons and Erika Fuentes and Shih-Lung Shaw and Jack Dongarra} } @article {1365, title = {Numerical Linear Algebra on Hybrid Architectures: Recent Developments in the MAGMA Project}, year = {2009}, month = {2009-11}, publisher = {The International Conference for High Performance Computing, Networking, Storage, and Analysis (SC09)}, address = {Portland, Oregon}, author = {Rajib Nath and Jack Dongarra and Stanimire Tomov and Hatem Ltaeif and Peng Du} }