Skip to content

Some tools for high performance Multi-Core computing: lock-free queues, MCS-lock, etc.

Notifications You must be signed in to change notification settings

honkiko/Multi-Core-Toolbox

Repository files navigation

Multi-Core Toolbox
==================

Some basic tools for high performance Multi-Core computing. 
Including:

Lockless Single producer single consumer concurrent queue
------------------------------------------------

To have producer and consumer work concurrently/parallely 
without using locks.
Published by Maged M. Michael and Michael L. Scott: "Simple, 
Fast, and Practical Non-Blocking and Blocking Concurrent Queue 
Algorithms", PODC96.

Lock-free Multi-producer multi-consumer queue
---------------------------------------------

Published by Maged M. Michael and Michael L. Scott in the same
article.

MCS-lock
--------

Algorithm published on ACM TOCS, February 1991, by John M. 
Mellor-Crummey and Michael L. Scott.
http://www.cs.rochester.edu/u/scott/papers/1991_TOCS_synch.pdf

- guarantees FIFO ordering of lock acquisitions;
- spins on locally-accessible flag variables only;
- requires a small constant amount of space per lock; and
- works equally well (requiring only O(1) network transactions per lock
		acquisition) on machines with and without coherent caches.

About

Some tools for high performance Multi-Core computing: lock-free queues, MCS-lock, etc.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published