FastFlow is a pattern-based programming framework targeting streaming applications. It implements pipeline, farm, divide and conquer, and their composition, as well as generic streaming networks. It is specifically designed to support the development and the seamless porting of existing applications on multi-core. The layered template-based C++ design ensures flexibility and extendibility. Its lock-free/fence-free run-time support minimizes cache invalidation traffic and enforces the development of high-performance (high-throughput, low-latency) scalable applications. It has been proven faster than TBB, OpenMP, and Cilk on several micro-benchmarcks and real-world applications, especially when dealing with fine-grained parallelism and high-throughput applications.
liblfds is a portable, lock-free data structure library. Out-of-the-box ports are provided for Linux (user-mode) and Windows (user-mode and kernel-mode) on ARM, x86, and x64, under a variety of toolchains. Currently, the library contains a freelist, queue, ringbuffer, singly-linked list (logical delete only), and a stack. The homepage contains a blog, bugzilla, forum, and mediawiki. The mediawiki contains comprehensive documentation for development, building, testing, and porting. There is no license. You are free to use this code in any way.
Concurrency Kit provides a plethora of concurrency primitives and lock-less and lock-free data structures designed to aid in the design and implementation of high performance scalable concurrent systems. It was designed to minimize dependencies on operating system-specific interfaces, and most of the interface relies only on a strict subset of the standard library and more popular compiler extensions.
libLunchbox facilitates the development and deployment of multi-threaded applications. It provides OS Abstraction, using utility classes abstracting common operating system features (such as threads, locks, memory maps, shared library loading, and condition variables), high-performance primitives (including thread-safe utilities tuned for performance, such as atomic variables, spin locks, and lock-free containers), and utility classes (including helper primitives which are not in the standard library, such as logging, pools, and random number generation).