The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning. Learn more →
Top 10 Rust Scientific Computing Projects
-
burn
Burn is a new comprehensive dynamic Deep Learning Framework built using Rust with extreme flexibility, compute efficiency and portability as its primary goals.
[package] name = "resnet_burn" version = "0.1.0" edition = "2021" [dependencies] burn = { git = "https://github.com/tracel-ai/burn.git", rev = "75cb5b6d5633c1c6092cf5046419da75e7f74b11", features = ["ndarray"] } burn-import = { git = "https://github.com/tracel-ai/burn.git", rev = "75cb5b6d5633c1c6092cf5046419da75e7f74b11" } image = { version = "0.24.7", features = ["png", "jpeg"] }
-
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
rust-ndarray
ndarray: an N-dimensional array with array views, multidimensional slicing, and efficient operations
I would love some examples of how to do non-trivial data interop between Rust and Python. My experience is that PyO3/Maturin is excellent when converting between simple datatypes but conversions get difficult when there are non-standard types, e.g. Python Numpy arrays or Rust ndarrays or whatever other custom thing.
Polars seems to have a good model where it uses the Arrow in memory format, which has implementations in Python and Rust, and makes a lot of the ndarray stuff easier. However, if the Rust libraries are not written with Arrow first, they become quite hard to work with. For example, there are many libraries written with https://github.com/rust-ndarray/ndarray, which is challenging to interop with Numpy.
(I am not an expert at all, please correct me if my characterizations are wrong!)
-
shadow
Shadow is a discrete-event network simulator that directly executes real application code, enabling you to simulate distributed systems with thousands of network-connected processes in realistic and scalable private network experiments using your laptop, desktop, or server running Linux. (by shadow)
Project mention: Turmoil, a framework for developing and testing distributed systems | news.ycombinator.com | 2023-08-17Cool, will be interested to see how this develops! tokio's loom framework has been a big help in testing some tricky concurrency code I've worked on.
Folks interested in this space might also be interested in the system I spend most of my time working on: Shadow. It also performs deterministic simulation of a network of hosts, but it intercepts network and system interactions at the syscall level via seccomp. As such it can work with binaries compiled from ~any language, usually without any code modification or special compilation. https://shadow.github.io/
-
-
smartcore
A comprehensive library for machine learning and numerical computing. The library provides a set of tools for linear algebra, numerical computing, optimization, and enables a generic, powerful yet still efficient approach to machine learning.
-
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
-
-
Project mention: serde-ndim: Serde support for n-dimensional arrays from self-describing formats | /r/rust | 2023-04-02
Rust Scientific Computing related posts
- Burn Deep Learning Framework Release 0.12.0 Improved API and PyTorch Integration
- Burn Deep Learning Framework 0.11.0 Released: Just-in-Time Automatic Kernel Fusion & Founding Announcement
- Burn Deep Learning Framework v0.11.0 Released: Just-in-Time Kernel Fusion
- Burn – comprehensive dynamic Deep Learning Framework built using Rust
- Helper crate for working with image data of varying type?
- What is the most efficient way to study Rust for scientific computing applications?
- Status and Future of ndarray?
-
A note from our sponsor - WorkOS
workos.com | 18 Mar 2024
Index
What are some of the best open-source Scientific Computing projects in Rust? This list will help you:
Project | Stars | |
---|---|---|
1 | burn | 6,503 |
2 | linfa | 3,316 |
3 | rust-ndarray | 3,235 |
4 | shadow | 1,336 |
5 | ocl | 680 |
6 | smartcore | 631 |
7 | Peroxide | 436 |
8 | rulinalg | 279 |
9 | rebop | 41 |
10 | serde-ndim | 6 |