lockfree VS spsc_queue

Compare lockfree vs spsc_queue and see what are their differences.

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
lockfree spsc_queue
11 2
695 34
- -
7.9 10.0
20 days ago over 4 years ago
C++ C++
MIT License BSD 2-clause "Simplified" License
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.

lockfree

Posts with mentions or reviews of lockfree. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-29.

spsc_queue

Posts with mentions or reviews of spsc_queue. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-03.
  • Low latency queues in Rust ecosystem
    4 projects | /r/rust | 3 Jul 2023
    I've been researching how low latency I can get with Rust and if there's anything already built. If I limit the question only to SPSC queues, it looks like crossbeam-channel is the most performant one and needs around 20ns per item. In comparison to e.g. https://github.com/Deaod/spsc_queue with almost 1ns/item (the linked queue is not implemented in Rust and only used as an example of what's physically possible). I don't see why we couldn't have something like that in the Rust ecosystem and am wondering if there are any other places to look for perf structures like that, other than Github or crates.io (or they live under a different tag). Also if I would go for a c++ queue, can somebody share the perf impact of calling it from Rust? Haven't done that yet.
  • A collection of lock-free data structures written in standard C++11
    7 projects | news.ycombinator.com | 10 May 2023
    Should be benchmarked against ->

    https://github.com/Deaod/spsc_queue

    If proven faster OK.. If not.. Well.. back to the drawing board.

What are some alternatives?

When comparing lockfree and spsc_queue you can also consider the following projects:

rc_event_queue - VecDeque-like fast, unbounded, mpmc/spmc concurent FIFO message queue. Lockless reads, write-lock writes.

tlaplus - TLC is a model checker for specifications written in TLA+. The TLA+Toolbox is an IDE for TLA+.

distortos - object-oriented C++ RTOS for microcontrollers

glibc - GNU Libc

micro-gl - Headers Only C++11 CPU Vector Graphics. no std-lib, no FPU and no GPU required !

Ring-Buffer - A simple ring buffer (circular buffer) designed for embedded systems.

set-ethernet-max-ring-buffer - Set max TX/RX ring buffer for ethernet device

jemalloc

bounded-spsc-queue - A Bounded SPSC queue for Rust

multiversion-concurrency-control - Implementation of multiversion concurrency control, Raft, Left Right concurrency Hashmaps and a multi consumer multi producer Ringbuffer, concurrent and parallel load-balanced loops, parallel actors implementation in Main.java, Actor2.java and a parallel interpreter

multiversion-concurrency-contro