petgraph
autograph
Our great sponsors
petgraph | autograph | |
---|---|---|
6 | 5 | |
2,632 | 298 | |
4.2% | - | |
6.2 | 9.2 | |
6 days ago | 19 days ago | |
Rust | Rust | |
Apache License 2.0 | Apache License 2.0 |
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
-
The Hunt for the Missing Data Type
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.
-
Many of the typical "Algorithms" as plain Rust implementation
For graph algorithms specifically, also consider looking at the implementations in petgraph.
-
autograph v0.1.0
Render the backward "graph" using petgraph for visualization and debugging purposes.
-
Another graph library :)
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?
petgraph: Graph data structure library, compatible with Rust
autograph
-
Where to Learn Vulkan for parallel computation (with references to porting from CUDA)
I'm working on a machine learning library https://github.com/charles-r-earp/autograph implemented in Rust that uses rust-gpu to compile Rust compute shaders to spirv, and then gfx_hal to target metal and dx12. Training performance is currently about 2x slower than pytorch (cuda) on my laptop but I've made significant progress recently and I am targeting 1.5x. While rust-gpu itself has it's own restrictions, it does support inline spirv assembly, which provides direct access to operations not provided in its std lib, thus it's lower level than GLSL. For example, it should be possible to target cuda tensor cores via cooperative matrix operations (I believe Metal supports these as well but this may not be implemented in spirv-cross and certainly isn't in naga). Once I have things a bit more stabilized I'd like to provide more examples, like porting from cuda / opencl, but I'm still figuring out patterns like how to work with 16 and 8 bit types in a nice and portable way.
-
autograph v0.1.0
autograph v0.1.0
-
What's the current state of GPU compute in rust?
Working on autograph, for machine learning and neural networks. Unlike CUDA / HIP it's threadsafe, but doesn't expose low level things like multiple streams. Most of the shaders are glsl but I'm now using rust_gpu for pure rust gpu code.
-
Announcing neuronika 0.1.0, a deep learning framework in Rust
Maybe not for learning but as inspiration I have to plug this amazing effort for ML with (vulkan) shaders: https://github.com/charles-r-earp/autograph
-
What do you think about a library that helps reducing the overhead of GPU programming, regarding ndimensional Arrays?
Maybe you'd be interested in checking out my library, https://github.com/charles-r-earp/autograph?
What are some alternatives?
neuronika - Tensors and dynamic neural networks in pure Rust.
RustaCUDA - Rusty wrapper for the CUDA Driver API
rosrust - Pure Rust implementation of a ROS client library
rust-gpu - 🐉 Making Rust a first-class language and ecosystem for GPU shaders 🚧
optimization-engine - Nonconvex embedded optimization: code generation for fast real-time optimization
VkFFT - Vulkan/CUDA/HIP/OpenCL/Level Zero/Metal Fast Fourier Transform library
ocl - OpenCL for Rust
juice - The Hacker's Machine Learning Engine
prepona - A graph crate with simplicity in mind
tractjs - Run ONNX and TensorFlow inference in the browser.
are-we-learning-yet - How ready is Rust for Machine Learning?
nphysics - 2 and 3-dimensional rigid body physics engine for Rust.