Rust-CUDA VS nalgebra

Compare Rust-CUDA vs nalgebra and see what are their differences.


Ecosystem of libraries and tools for writing and executing fast GPU code fully in Rust. (by Rust-GPU)


Linear algebra library for Rust. (by dimforge)
Our great sponsors
  • Zigi - Workflow assistant built for devs & their teams
  • InfluxDB - Build time-series-based applications quickly and at scale.
  • Scout APM - Truly a developer’s best friend
  • SonarLint - Clean code begins in your IDE with SonarLint
Rust-CUDA nalgebra
26 15
2,026 2,921
5.2% 3.0%
7.8 9.4
8 days ago 4 days ago
Rust Rust
Apache License 2.0 Apache License 2.0
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.


Posts with mentions or reviews of Rust-CUDA. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-11-09.
  • Non graphical computing on GPU
    7 projects | | 9 Nov 2022
    On the other hand CUDA is optimized to death and very good. Documentation and codes examples are everywhere (in C++ at least) but it is one more piece of software to install/configure and interact with from Rust. I don't know if Rust-CUDA is good or not. It's a WIP but the development seems stalled at this point (no commit since July)
    7 projects | | 9 Nov 2022
    Rust CUDA
  • Brute forcing protected ZIP archives in Rust
    5 projects | | 4 Oct 2022
    With Rust-CUDA you can write Rust code to run on the GPU quite easily, long as the code is no_std (and you have a NVIDIA GPU).
  • Can Rust do Computer Graphics and ML?
    5 projects | | 15 Sep 2022
    There’s also
  • There is framework for everything.
    107 projects | | 4 Aug 2022
  • C++ is making me depressed / CUDA question
    7 projects | | 20 Jul 2022
    And here's an example on how to add two floats using Rust-CUDA:
    7 projects | | 20 Jul 2022
    I can't say whether or not it works well, and seems maybe fiddly to install, but Rust-CUDA might work for you.
  • Does Rust still depend on LLVM?
    3 projects | | 18 May 2022
    Kinda - SPIR-V is an intermediate representation that can be consumed by graphics drivers and compiled down by them to the GPU's native code. In that sense it's more similar to emitting LLVM IR than e.g. x86 machine code. Similarly, Rust-CUDA emits NVVM IR, which is a subset of LLVM IR.
  • State of GPGPU in 2022
    4 projects | | 27 Apr 2022
    Rust-GPU look promising, also Rust-CUDA, also I see OpenCL 3.0 wrapper
  • Silverblue loads nouveau instead of installed nvidia
    3 projects | | 12 Apr 2022
    rpm-ostree install$(rpm -E %fedora).noarch.rpm$(rpm -E %fedora).noarch.rpm sudo rpm-ostree uninstall akmod-nvidia sudo rpm-ostree install akmod-nvidia-470xx rpm-ostree kargs --append=rd.driver.blacklist=nouveau --append=modprobe.blacklist=nouveau --append=nvidia-drm.modeset=1 sudo systemctl reboot sudo rpm-ostree install nvidia-settings-470xx xorg-x11-drv-nvidia-470xx-power sudo rpm-ostree uninstall xorg-x11-drv-nvidia-cuda sudo rpm-ostree install xorg-x11-drv-nvidia-470xx-cuda sudo rpm-ostree install xorg-x11-drv-nvidia-470xx-devel sudo rpm-ostree install xorg-x11-drv-nvidia-470xx-cuda-devel sudo rpm-ostree install cuda-samples sudo rpm-ostree install vulkan-tools vkmark mesa-vulkan-devel sudo rpm-ostree install libshaderc-devel sudo rpm-ostree install clang clang-tools-extra libstdc++-devel sudo rpm-ostree install glib2-devel glib-devel avahi-gobject-devel sudo rpm-ostree install cairo-devel pango-devel gdk-pixbuf2-devel sudo rpm-ostree install graphene-devel gtk4-devel cairo-gobject-devel sudo systemctl reboot modinfo /usr/lib/modules/$(uname -r)/kernel/drivers/video/nvidia.ko | grep ^version find /usr/lib/modules -name nvidia.ko -exec modinfo {} \; sudo lspci -v | grep -A 20 VGA git clone git clone git clone glxgears glxinfo glxgears glxinfo vkcube vkcubepp ./teapot ./triangle ./occlusion-query ./interactive_fractal


Posts with mentions or reviews of nalgebra. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-11-04.
  • What crates are considered as de-facto standard?
    7 projects | | 4 Nov 2022
  • Hey Rustaceans! Got a question? Ask here! (31/2022)!
    11 projects | | 2 Aug 2022
    Take a look into math libraries, like glam, nalgebra, and cgmath. I've only used these through game engines, though, so I can't offer per-basis reviews/advice.
  • C++ is making me depressed / CUDA question
    7 projects | | 20 Jul 2022
    If you do not need GPU then I would recommend looking into Eigen in C++, nalgebra in Rust (with a BLAS in both cases for improved performance) or one of the above options (Julia / Python+JAX).
  • Lightning talk: Stop writing Rust
    4 projects | | 14 Jul 2022
  • -🎄- 2021 Day 19 Solutions -🎄-
    94 projects | | 18 Dec 2021
    I coded it in rust, with the very good lib nalgebra for the vector, point, matrix and SVD computation and petgraph for the graph, and I'm very happy with my math heavy, computer vision and no brute force solution.
  • Announcing Rust CUDA 0.2
    3 projects | | 5 Dec 2021
    It looks like nalgebra is already working on adding support for rust CUDA:
  • What is Rust NOT suitable for, architecturally?
    6 projects | | 28 Nov 2021
    Actually I would disagree with this somewhat. It's not as built out as Julia or python with third party crates, but that is likely to keep improving. The ability to implement the traits in std::ops means that the natural use of +, *, etc to "add" or "multiply" custom types is possible. There is already rug for big number / high precision calculations, nalgebra for linear algebra, among a couple others for ode solving etc. Rust's iterators are also ergonomically magnificent for math involving iteration. Where I would agree it is less ergonomic is for scientists that don't care about the speed gains from the rust memory management system having to deal with the borrow checker. With a little understanding of the way that works, it doesn't get in the way much IMO. Not saying it will ever be a go to language for scientific computation, just that it's more than possible, and can be just as enjoyable.
  • Software for math research
    2 projects | | 10 Oct 2021
  • Software for Math Research
    2 projects | | 10 Oct 2021
  • I have written a blog post about my experience using Rust for scientific numerical applications
    7 projects | | 8 Apr 2021
    During my Ph.D., I made a Hartree-Fock implementation using Haskell ( What I learnt from it is that most of the work is actually in implementing the integrals. But with Rust, you can take the integrals from libraries like libint2 ( and focus on the implementation's physics. The integrals and the diagonalization of the resulting operators are the bottlenecks in both Hartree-Fock and DFT. So, if you take something like libint2 for the integrals and Nalgebra ( for the linear algebra, the application is going to be lightning-fast. But if you decide to implement the integrals yourself, I think it would take a significant time until you can reach the current Fortran/C++ implementation performance.

What are some alternatives?

When comparing Rust-CUDA and nalgebra you can also consider the following projects:

cgmath-rs - A linear algebra and mathematics library for computer graphics.

rust-ndarray - ndarray: an N-dimensional array with array views, multidimensional slicing, and efficient operations

rust-blas - BLAS bindings for Rust

wgpu - Safe and portable GPU abstraction in Rust, implementing WebGPU API.

scirust - Scientific Computing Library in Rust

rulinalg - A linear algebra library written in Rust

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

arrayfire-rust - Rust wrapper for ArrayFire

rust-GSL - A GSL (the GNU Scientific Library) binding for Rust

rust-opencl - OpenCL bindings for Rust.

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