Software
The primary PASSION Lab Github organization is live.
The Combinatorial BLAS: Distributed memory implementation of sparse linear algebra routines that can be used as building blocks for large scale graph and data analysis.
CAGNET: A family of parallel algorithms for training GNNs that can asymptotically reduce communication compared to previous parallel GNN training methods. CAGNET algorithms are based on 1D, 1.5D, 2D, and 3D sparse-dense matrix multiplication, and are implemented with torch.distributed on GPU-equipped clusters.
HipMCL clusters protein similarity networks with 70 billion edges in a couple of hours. This highly-scalable implementation of the Markov Cluster algorithm is available open source.
PASTIS: A distributed-memory parallel many-to-many protein sequence aligner that uses sparse matrices.
BELLA is a computationally-efficient and highly-accurate long-read to long-read aligner and overlapper for DNA sequences.
BCL: The Berkeley Container Library (BCL) is a C++ library of distributed data structures with interfaces similar to those in STL containers.
HipMer and MetaHipmer: Extreme-scale de novo assembler for large complex genomes and metagenomes. Primarily written in UPC with some MPI/C++ pieces.
Compressed Sparse Blocks: A small Cilk Plus library that performs sparse matrix times dense vector and sparse matrix transpose times dense vector using compressed sparse blocks.
mergeSpMM: Sparse matrix multi-vector (aka tall-skinny dense matrix) products on the GPU, also used in PyTorch Geometric
GraphBLAST is a high-performance linear algebra-based graph framework on the GPU, which closely approximates the GraphBLAS API.
High-performance sparse-sparse matrix products on multicores and KNL
SpDM^3 and HP-CONCORD: SpDM^3 does communication-avoiding Sparse-Dense Matrix-Matrix Multiplication on distributed-memory parallel computers and HP-CONCORD is high-performance inverse covariance matrix estimation using the CONCORD-ISTA algorithm.
Implementing Push-Pull Efficiently in GraphBLAS: Mapping direction-optimization to the language of linear algebra.
MS-BFS-Graft: Multithreaded OpenMP code for computing maximum cardinality matching on bipartite graphs. Performs multi-source breadth-first search with tree-grafting for exploiting parallelism.