Benjamin Brock, A. Buluç, T. Mattson, Scott McMillan, J. Moreira
{"title":"Introduction to GraphBLAS 2.0","authors":"Benjamin Brock, A. Buluç, T. Mattson, Scott McMillan, J. Moreira","doi":"10.1109/IPDPSW52791.2021.00047","DOIUrl":null,"url":null,"abstract":"The GraphBLAS is a set of basic building blocks for constructing graph algorithms in terms of linear algebra. They are first and foremost defined mathematically with the goal that language bindings will be produced for a wide range of programming languages. We started with the C programming language and over the last four years have produced multiple versions of the GraphBLAS C API specification. In this paper, we describe our next version of the C GraphBLAS specification. It introduces a number of major changes including support for multithreading, import/export functionality, and functions that use the indices of matrix/vector elements. Since some of these changes introduce small backwards compatibility issues, this is a major release we call GraphBLAS 2.0.","PeriodicalId":170832,"journal":{"name":"2021 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW)","volume":"20 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"6","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2021 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/IPDPSW52791.2021.00047","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 6
Abstract
The GraphBLAS is a set of basic building blocks for constructing graph algorithms in terms of linear algebra. They are first and foremost defined mathematically with the goal that language bindings will be produced for a wide range of programming languages. We started with the C programming language and over the last four years have produced multiple versions of the GraphBLAS C API specification. In this paper, we describe our next version of the C GraphBLAS specification. It introduces a number of major changes including support for multithreading, import/export functionality, and functions that use the indices of matrix/vector elements. Since some of these changes introduce small backwards compatibility issues, this is a major release we call GraphBLAS 2.0.
GraphBLAS是一组基本构建块,用于根据线性代数构造图算法。它们首先以数学方式定义,目的是为广泛的编程语言生成语言绑定。我们从C编程语言开始,并在过去的四年中产生了多个版本的GraphBLAS C API规范。在本文中,我们描述了C GraphBLAS规范的下一个版本。它引入了许多重大变化,包括对多线程、导入/导出功能的支持,以及使用矩阵/向量元素索引的函数。由于其中一些更改引入了一些小的向后兼容性问题,因此我们将其称为GraphBLAS 2.0。