petgraph VS LAGraph

Compare petgraph vs LAGraph and see what are their differences.

petgraph

Graph data structure library for Rust. (by petgraph)

LAGraph

This is a library plus a test harness for collecting algorithms that use the GraphBLAS. For test coverage reports, see https://graphblas.org/LAGraph/ . Documentation: https://lagraph.readthedocs.org (by GraphBLAS)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
petgraph LAGraph
7 3
2,648 221
4.8% 1.4%
7.0 8.2
2 days ago 12 days ago
Rust C
Apache License 2.0 GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

petgraph

Posts with mentions or reviews of petgraph. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-24.
  • Borrow Checking, RC, GC, and the Eleven () Other Memory Safety Approaches
    2 projects | news.ycombinator.com | 24 Apr 2024
    Are you just trying to throw shade on Rust?

    https://doc.rust-lang.org/std/collections/struct.LinkedList....

    > NOTE: It is almost always better to use Vec or VecDeque because array-based containers are generally faster, more memory efficient, and make better use of CPU cache.

    https://docs.rs/petgraph 78 M downloads

  • The Hunt for the Missing Data Type
    10 projects | news.ycombinator.com | 4 Mar 2024
    I used to think that since graphs are such a broad datastructure that can be represented in different ways depending on requirements that it just made more sense to implement them at a domain-ish level.

    Then I saw Petgraph [0] which is the first time I had really looked at a generic graph library. It's very interesting, but I still have implemented graphs at a domain level.

    [0] https://github.com/petgraph/petgraph

  • Many of the typical "Algorithms" as plain Rust implementation
    4 projects | /r/rust | 22 Aug 2022
    For graph algorithms specifically, also consider looking at the implementations in petgraph.
  • 2-way Weak
    1 project | /r/rust | 30 Jun 2022
    Take a look at: https://github.com/petgraph/petgraph
  • autograph v0.1.0
    3 projects | /r/rust | 30 Oct 2021
    Render the backward "graph" using petgraph for visualization and debugging purposes.
  • Another graph library :)
    3 projects | /r/rust | 26 Apr 2021
    I second the need for quickcheck-style tests. I implemented a matching algorithm in petgraph, and quickcheck discovered so many bugs on non-trivial graphs. Thanks to it, I am now much more confident that it is indeed correct.
  • Why Rust for Robots?
    7 projects | dev.to | 9 Apr 2021
    petgraph: Graph data structure library, compatible with Rust

LAGraph

Posts with mentions or reviews of LAGraph. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-03-04.
  • The Hunt for the Missing Data Type
    10 projects | news.ycombinator.com | 4 Mar 2024
    > you probably want more specialised tools like BLAS/LAPACK

    The GraphBLAS and LAGraph are sparse matrix optimized libraries for this exact purpose:

    https://github.com/DrTimothyAldenDavis/GraphBLAS

    https://github.com/GraphBLAS/LAGraph/

  • A windowed graph Fourier transform
    2 projects | news.ycombinator.com | 4 Mar 2024
  • [D] Why I'm Lukewarm on Graph Neural Networks
    4 projects | /r/MachineLearning | 4 Jan 2021
    I work on GraphBLAS, primarily on its LAGraph library and on tutorials. In the last few years, the GraphBLAS community has made a lot of progress on more efficient sparse matrix algorithms and porting graph algorithms to linear algebra – I hope LAGraph can play the role of a more efficient NetworkX in the future. The output of most LAGraph algorithms is a bunch of vectors/matrices so piping these into machine learning algorithms should be possible (and probably more efficient than using other representations).

What are some alternatives?

When comparing petgraph and LAGraph you can also consider the following projects:

autograph - Machine Learning Library for Rust

node2vec-c - node2vec implementation in C++

rosrust - Pure Rust implementation of a ROS client library

cleora - Cleora AI is a general-purpose model for efficient, scalable learning of stable and inductive entity embeddings for heterogeneous relational data.

optimization-engine - Nonconvex embedded optimization: code generation for fast real-time optimization

prepona - A graph crate with simplicity in mind

nphysics - 2 and 3-dimensional rigid body physics engine for Rust.

graph-force - Python library for embedding large graphs in 2D space, using force-directed layouts.

openrr - Open Rust Robotics

ros2_rust - Rust bindings for ROS 2

rustros_tf - A port of ROS's TF library to rust

rust-gpu - 🐉 Making Rust a first-class language and ecosystem for GPU shaders 🚧