/GraphBLAS-Pointers

Resources on the GraphBLAS standard for graph algorithms in the language of linear algebra

GraphBLAS Pointers

Notation:

  • ⭐ if you're new to GraphBLAS, check out these pointers first
  • 🔨 theory-focused
  • 🔧 implementation-focused
  • 🛠️ mix of theory and implementation
  • 📖 detailed specification

Community sites

Selected readings and presentations

GraphBLAS design papers

Tutorials

Specifications

Algorithms

Generic

Traversals and shortest paths

Connected components

Triangle counting, k-truss, clustering coefficient

Context-free path querying (CFPQ)

Community detection

Other

Presentations

Overviews on GraphBLAS and linear algebra-based graph processing

Books

  • Graph Algorithms in the Language of Linear Algebra (SIAM, 2011) by Jeremy Kepner and John R. Gilbert
    • This is the best reference on the topic of linear algebra-based graph processing. However, note that GraphBLAS effort was not yet started when this book was written. Therefore, there are some differences between the notation of GraphBLAS documents and the one used in this book.
  • Mathematics of Big Data: Spreadsheets, Databases, Matrices, and Graphs (MIT Press, 2018) by Jeremy Kepner and Hayden Jananthan
    • An updated version of paper Mathematical Foundations of the GraphBLAS is reprinted in this book (Chapter 6, p81-113)
    • This book is currently the latest detailed reference on semiring-based computations, including graph algorithms. It also covers many other topics such as associative arrays. The book is not intended to be a GraphBLAS reference, but it can be used for providing a background in linear algebra (see e.g. Chapter 8, "Visualizing the Algebra of Associative Arrays").

Implementations

Core implementations

Other implementations

Wrappers

See also the ongoing design of the GraphBLAS C++ API.

Related libraries

RedisGraph

Graphulo

You can also find many papers, posters, and presentations in the Accumulo repository.

Events

year IPDPS workshop HPEC
2021 GrAPL 2021 HPEC 2021
2020 GrAPL 2020 HPEC 2020
2019 GrAPL 2019 HPEC 2019
2018 GABB 2018 HPEC 2018
2017 GABB 2017 HPEC 2017
2016 GABB 2016 HPEC 2016
2015 GABB 2015 HPEC 2015
2014 GABB 2014 HPEC 2014
2013 HPEC 2013

News, interviews, popular science

Typesetting

The nicematrix LaTeX package can be used to typeset block matrices.

Related work