Linompss – A Linear Algebra Library on OMPSs
Document typeConference report
PublisherBarcelona Supercomputing Center
Rights accessOpen Access
Exascale performance will require massive parallelism and asynchronous execution (DARPA, DOE, EESI2). The former pertains to the design choice to increase hardware performance through growing core counts. The latter ensures that the associated software scales well. As a result, traditional, bulk-synchronous parallel programming models like OpenMP or MPI will likely fall out of grace in favor of more amenable variants. At the time of writing, the general consensus inclines towards task-based programming models that support dynamic scheduling and use graph-based models to record task dependencies. In this context, we present LINOMPSs, a parallel linear àlgebra library built on top of OMPSs. Currently, we offer most of the BLAS- 3 functionality and the three main factorizations (QR, LU, Cholesky). There is limited support for sparse matrices. For systems of equations, LINOMPSs disposes of implementations of both direct methods as well as iterative solvers. At the lowest level, LINOMPSs can be linked with most BLAS or LAPACK libraries (MKL, ESSL, Netlib, ATLAS...). These funcions are used, in turn, to implement the OMPSs tasks for the parallel implementations of the BLAS, or the Blocked BLAS. The Blocked BLAS are used to write blocked versions of the factorizations in OMPSs, which can then be combined to write solvers or full-fledged numerical simulations with finite element methods, multigrid methods, etc. These applications benefit from the asynchronous parallelism developed by OMPSs at run time. Moreover, the layered design allows for the concurrent and out-of-order execution of tasks that stem from previously distant regions of computation. We not only consider LINOMPSs as an environment for the development of linear algebra applications and benchmarks for the Computer Science Department. In our own department for example, we use LINOMPSs to experiment with mixed-precision and incomplete/inaccurate computations. With the expertise of the CASE and Earth Science Department at BSC, we envision LINOMPSs as a tool for cross-disciplinary collaboration and the development of industrial-strength engineering applications.
CitationZhuang, Sicong. Linompss – A Linear Algebra Library on OMPSs. A: "BSC Doctoral Symposium (2nd: 2015: Barcelona)". 2nd ed. Barcelona: Barcelona Supercomputing Center, 2015, p. 69-70.