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. Learn more →
Top 23 Rust Concurrency Projects
-
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.
-
burn
Burn is a new comprehensive dynamic Deep Learning Framework built using Rust with extreme flexibility, compute efficiency and portability as its primary goals.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
libfringe
a Rust library implementing safe, lightweight context switches, without relying on kernel services
-
pen
The parallel, concurrent, and functional programming language for scalable software development (by pen-lang)
-
scalable-concurrent-containers
High performance containers and utilities for concurrent and asynchronous programming
-
leapfrog
Lock-free concurrent and single-threaded hash map implementations using Leapfrog probing. Currently the highest performance concurrent HashMap in Rust for certain use cases.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Project mention: Rayon: Data-race free parallelization of sequential computations in Rust | news.ycombinator.com | 2024-04-24
Project mention: Top 10 Rusty Repositories for you to start your Open Source Journey | dev.to | 2023-12-199. Actix
Project mention: 3 years of fulltime Rust game development, and why we're leaving Rust behind | news.ycombinator.com | 2024-04-26You can use libtorch directly via `tch-rs`, and at present I'm porting over to Burn (see https://burn.dev) which appears incredibly promising. My impression is it's in a good place, if of course not close to the ecosystem of Python/C++. At very least I've gotten my nn models training and running without too much difficulty. (I'm moving to Burn for the thread safety - their `Tensor` impl is `Sync` - libtorch doesn't have such a guarantee.)
Burn has Candle as one of its backends, which I understand is also quite popular.
Project mention: Hyperbridge: Fast multi-producer, multi-consumer unbounded channel in Rust | news.ycombinator.com | 2024-02-09Crossbeam isn't async[0]. It can multiplex with itself (via the `select!` macro), but not with anything else.
[0]: https://github.com/crossbeam-rs/crossbeam/issues/896
My understanding is you always need a runtime, somethings needs to drive the async flow. But there are others on the market, just not without the.. market domination... of tokio.
https://github.com/smol-rs/smol looks promising simply for being minimal
https://github.com/bytedance/monoio looks potentially easier to work with than tokio
https://github.com/DataDog/glommio is built around linux io_uring and seems somewhat promising for performance reasons.
I haven't played with any of these yet, because Tokio is unfortunately the path of least resistance. And a bit viral in how it's infected tings.
Project mention: Hyperbridge: Fast multi-producer, multi-consumer unbounded channel in Rust | news.ycombinator.com | 2024-02-09The repository seems abandoned; or maybe complete?
At work we use flume, which is another capable multi-producer, multi-consumer async-capable channel [1]. It's great for shuffling data between threads, as well as between async tasks, and between threads and async tasks. Basically any time you want to pieces of code to exchange data or signals without pesky shared state.
1: https://github.com/zesterer/flume
Very similar to the left-right pattern.
https://github.com/jonhoo/left-right
There's also RTIC which is another framework that makes concurrency trivial.
Project mention: I've incidentally created one of the fastest bounded MPSC queue | /r/rust | 2023-06-26How does it compare to kanal?
Was looking at existing StateMachine and BehaviorTree examples recently and I found the following Behavior Tree crates https://github.com/PistonDevelopers/ai_behavior https://github.com/Sollimann/bonsai
Rust Concurrency related posts
-
Rayon: Data-race free parallelization of sequential computations in Rust
-
Hyperbridge: Fast multi-producer, multi-consumer unbounded channel in Rust
-
SQLite: Wal2 Mode
-
Which application/problem would you choose for presenting Rust to newcomers in 1h30min?
-
Loole, A safe sync/async multi-producer, multi-consumer channel, Boosted Async Performance Up to 17%
-
What Are The Rust Crates You Use In Almost Every Project That They Are Practically An Extension of The Standard Library?
-
Why Async Rust?
-
A note from our sponsor - InfluxDB
www.influxdata.com | 10 May 2024
Index
What are some of the best open-source Concurrency projects in Rust? This list will help you:
Project | Stars | |
---|---|---|
1 | rayon | 10,299 |
2 | actix | 8,406 |
3 | yazi | 8,151 |
4 | burn | 7,169 |
5 | crossbeam | 6,858 |
6 | smol | 3,430 |
7 | joshuto | 3,285 |
8 | bastion | 2,759 |
9 | flume | 2,174 |
10 | left-right | 1,901 |
11 | rtic | 1,626 |
12 | kanal | 1,258 |
13 | libfringe | 495 |
14 | RxRust | 479 |
15 | pen | 440 |
16 | coroutine-rs | 413 |
17 | concread | 313 |
18 | seize | 306 |
19 | r3bl-open-core | 282 |
20 | bonsai | 262 |
21 | scalable-concurrent-containers | 242 |
22 | usync | 230 |
23 | leapfrog | 186 |
Sponsored