| Crates.io | faaa_queue |
| lib.rs | faaa_queue |
| version | 1.0.0 |
| created_at | 2025-06-18 10:31:37.272764+00 |
| updated_at | 2025-06-22 10:25:36.332306+00 |
| description | A really fast unbounded lock-free concurrent queue. |
| homepage | https://github.com/WilleBerg/faaa_queue |
| repository | https://github.com/WilleBerg/faaa_queue |
| max_upload_size | |
| id | 1716847 |
| size | 825,713 |
A very fast concurrent lock-free queue.
faaa_queue is a Rust implementation of the FAAAQueue.
use faaa_queue::FAAAQueue;
fn main() {
let q: FAAAQueue<i32> = FAAAQueue::new();
q.enqueue(1);
assert_eq!(q.dequeue(), Some(1));
}
The faaa_queue was benchmarked using the rusty-benchmarking-framework.
It performs a lot better than all other concurrent queues benchmarked after 4 threads.

Here are results from three different benchmarks using varying tau (τ) values to control the enqueue/dequeue ratio.
Benchmark Setup: Threads are synchronized to start simultaneously, with each thread alternating between enqueue and dequeue operations based on a random number r ∈ [0,1) - enqueueing when r > τ, dequeueing otherwise. Additional random operations simulate realistic workloads between each queue operation.
For implementation details, see the rusty-benchmarking-framework.