Skip to content
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


Lace is a work-stealing framework for multi-core fork-join parallelism. The framework is written in C and implements work-stealing in a style similar to frameworks like Cilk and Wool.

The novelty of Lace is that it uses a novel scalable double-ended queue for its implementation of work-stealing and that it offers a feature where workers cooperatively interrupt their current tasks to execute a new task frame.

Lace is developed (© 2011-2016) by the Formal Methods and Tools group at the University of Twente as part of the MaDriD project, which was funded by NWO, and (© 2016-2017) by the Formal Methods and Verification group at the Johannes Kepler University Linz as part of the RiSE project. Lace is licensed with the Apache 2.0 license.

The main author of Lace is Tom van Dijk who can be reached via Please let us know if you use Lace in your projects and if you need features that are currently not implemented in Lace.

The main repository of Lace is


Lace requires CMake for compiling and hwloc (libhwloc-dev) to pin workers and allocate memory on the correct CPUs/memory domains.


It is recommended to build Lace in a separate build directory:

mkdir build
cd build
cmake ..
make && make test && make install

It is recommended to use ccmake to configure the build settings of Lace.


T. van Dijk (2016) Sylvan: Multi-core Decision Diagrams. PhD Thesis.

T. van Dijk and J.C. van de Pol (2014) Lace: Non-blocking Split Deque for Work-Stealing. In: Euro-Par 2014: Parallel Processing Workshops. LNCS 8806, Springer.


Lace - implementation of work-stealing in C



You can’t perform that action at this time.