-
Notifications
You must be signed in to change notification settings - Fork 20
Home
This software stack provides sketching-based NLA kernels for more general data analysis and optimization applications; such tasks have significantly different input matrices and performance criteria than arise in the more traditional scientific computing applications. The crucial NLA kernels to be implemented include regression and low-rank approximations of matrices, akin to the Singular Value Decomposition (SVD).
Additionally this library provides a simple distributed Python interface.
Skylark uses Elemental for a dense matrix functionality. Elemental is a framework for distributed-memory dense linear algebra that strives to be both fast and convenient. It combines ideas including: element-wise matrix distributions (Hedrickson et al.), object-oriented submatrix tracking (FLAME, van de Geijn et al.), and first-class matrix distributions (PLAPACK, van de Geijn et al.). Many algorithms use techniques from LAPACK (Anderson et al.) in order to improve numerical stability.
- Elemental
- A tutorial on the design and usage of Elemental
- TOMS paper
- Elemental Distributions & Matrix Multiplication Overview paper
Skylark uses CombBLAS for sparse matrix functionality. CombBLAS is a distributed memory reference implementation that implements scalable sparse (and some dense) matrix operations that is used to implement graph algorithms such as betweenness centrality and Markov clustering, see:
- CombBLAS (Doxygen)
- Presentation
- KDT (contains SWIG bindings for CombBLAS)
- KDT Installation Guide