GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - GraphBLAS/graphblas-api-cpp: GraphBLAS C++ API Specification.

BranchesTags
Open more actions menu

Latest commit

 

History

206 Commits
206 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
markdown
markdown
 
 
minutes
minutes
 
 
README.md
README.md
 
 

Repository files navigation

GraphBLAS C++ Specification

Click here for the most recent HTML draft and most recent PDF draft.

The currently under development GraphBLAS C++ API aims to provide a C++ API for implementing graph algorithms in the language of linear algebra, and is part of the larger GraphBLAS project. The API provides data structures for storing matrices and vectors, as well as a collection of algorithms, such as generalized matrix multiplication, that can be used with custom or pre-defined operators, monoids, and semirings.

The standard document itself can be found in the folder markdown, while minutes for meetings of the GraphBLAS C++ API subcommittee can be found in the folder minutes.

Brief API Example

  // Create a GraphBLAS matrix of size 128 x 128.
  grb::matrix<float> x({128, 128});
  
  // Write to elements along the diagonal.
  for (size_t i = 0; i < 128; i++) {
    x[{i, i}] = i*i;
  }
  
  float sum = 0;
  // Sum up all the elements stored in the matrix.
  for (auto&& [index, value] : x) {
    sum += value;
  }

Libraries

  • rgri is being developed as a reference implementation alongside the API.
  • GBTL has heavily influenced the development of the C++ API, and is also being updated alongside the development of the API.

Citation

To cite the GraphBLAS C++ Specification:

Benjamin Brock, Scott McMillan, Aydın Buluc ̧, Timothy Mattson, and Jose ́ Moreira. GraphBLAS C++ specification. https://github.com/ GraphBLAS/graphblas-api-cpp, 2022.

@misc{graphblascppspec,
  title={Graph{BLAS} {C}++ Specification},
  author={Brock, Benjamin and McMillan, Scott and Bulu\c{c}, Ayd{\i}n and Mattson, Timothy and Moreira, Jos{\'e}},
  howpublished={\url{https://github.com/GraphBLAS/graphblas-api-cpp}},
  volume = {Version 1.0},
  year={2023}
}

About

GraphBLAS C++ API Specification.

graphblas.org/graphblas-api-cpp/

Topics

graphs

Resources

Readme
Activity
Custom properties

Stars

12 stars

Watchers

9 watching

Forks

2 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.