Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
awesome-lockfree
A collection of resources on wait-free and lock-free programming
https://github.com/rigtorp/awesome-lockfree
- Boost.Lockfree - Boost lock-free data structures.
- ConcurrencyKit - Concurrency primitives.
- crossbeam - Rust library for concurrent programming.
- Folly - Facebook Open-source Library (has good implementation of MPMC queue).
- Junction - Concurrent data structures in C++.
- MPMCQueue - A bounded multi-producer multi-consumer lock-free queue written in C++11.
- SPSCQueue - A bounded single-producer single-consumer wait-free and lock-free queue written in C++11.
- Seqlock - Implementation of Seqlock in C++.
- Userspace RCU - liburcu is a userspace RCU (read-copy-update) library.
- libcds - A C++ library of Concurrent Data Structures.
- liblfds - portable, license-free, lock-free data structure library written in C.
- xenium - A C++ library providing various concurrent data structures and reclamation schemes.
- 1024cores - Dmitry Vyukov's website on lock-free programming.
- LMAX Disruptor
- Wikipedia: Non-blocking algorithm
- Wikipedia: Read-copy-update
- Wikipedia: Seqlock
- Concurrency Freaks - A web site dedicated to Concurrent algorithms and patterns.
- Dan Luu - Lots of info on modern computer architecture.
- Locking in Webkit
- Mechanical Sympathy
- Paul E. McKenney
- Preshing on Programming
- Sutter's Mill - Herb Sutter on software development.
- Paul Khuong
- Is Parallel Programming Hard, And, If So, What Can You Do About It?
- The Art of Multiprocessor Programming
- A Tutorial Introduction to the ARM and POWER Relaxed Memory Models
- Memory Barriers: a Hardware View for Software Hackers
- Simple, Fast, and Practical Non-Blocking and Blocking Concurrent Queue Algorithms - The Michael - Scott Queue
- What Every Programmer Should Know About Memory
- x86-TSO: A Rigorous and Usable Programmer’s Model for x86 Multiprocessors
- CppCon 2014: Herb Sutter "Lock-Free Programming (or, Juggling Razor Blades), Part I"
- CppCon 2014: Herb Sutter "Lock-Free Programming (or, Juggling Razor Blades), Part II"
- CppCon 2015: Fedor Pikus PART 1 “Live Lock-Free or Deadlock (Practical Lock-free Programming)"
- CppCon 2015: Fedor Pikus PART 2 "Live Lock-Free or Deadlock (Practical Lock-free Programming)"
- CppCon 2015: Michael Wong “C++11/14/17 atomics and memory model..."
- CppCon 2015: Paul E. McKenney “C++ Atomics..."
- CppCon 2014: Tony Van Eerd "Lock-free by Example"
- CppCon 2016: Fedor Pikus "The Speed of Concurrency: is lock-free faster?"
- CppCon 2016: Hans Boehm “Using weakly ordered C++ atomics correctly"
- CppCon 2017: Fedor Pikus “C++ atomics, from basic to advanced. What do they really do?”
- CppCon 2017: Fedor Pikus “Read, Copy, Update, then what? RCU for non-kernel programmers”
- CppCon 2017: P. McKenney, M. Michael & M. Wong “Is Parallel Programming still hard? PART 1 of 2”
- CppCon 2017: P. McKenney, M. Michael & M. Wong “Is Parallel Programming still hard? PART 2 of 2”
- CppCon 2018: “The Landscape and Exciting New Future of Safe Reclamation for High Performance”
- C++ and Beyond 2012: Herb Sutter - atomic<> Weapons, 1 of 2
- C++ and Beyond 2012: Herb Sutter - atomic<> Weapons, 2 of 2
- "Aeron: Open-source high-performance messaging" by Martin Thompson
- Adventures with Concurrent Programming in Java: A Quest for Predictable Latency - Martin Thompson
- Understanding the Disruptor, a Beginner's Guide to Hardcore Concurrency -Trisha Gee & Mike Barker
- Erik Rigtorp
Keywords
concurrency
6
lock-free
5
cpp
4
cpp11
3
header-only
3
hazard-pointer
2
queue
2
data-structures
1
parallelism
1
rust
1
synchronization
1
threads
1
concurrent-data-structure
1
spsc-queue
1
atomic
1
no-dependencies
1
containers
1
rcu
1
cpp17
1
debra
1
epoch-based-reclamation
1
hazard-era
1
reclamation-schemes
1
disruptor
1
java
1