TBB-Lithe

A Port of Intel's Thread Building Blocks to Lithe

View project on GitHub

This is the Lithe port of TBB. It is based on the following release:

June 28, 2012: Intel® Threading Building Blocks 4.0 Update 5 
tbb40_20120613oss stable release 

http://threadingbuildingblocks.org/ver.php?fid=187

More information about Lithe can be found here.

More information about TBB can be found here.

Currently use of the following TBB interface is unsupported:

  • tbb::task_group_context

To report bugs or notify us of any limitations we have not yet encountered, submit an issue on github at

https://github.com/klueska/tbb-lithe/issues

The changes to TBB that make up TBB-Lithe are made available under a modified BSD Licence.

The latest release can be downloaded here.

If you prefer to work directly from the development branch, we also provide read-only access to our shared github repository, with a tag for the current release:

git clone git://github.com/klueska/tbb-lithe.git
git checkout release_1_0_0

Once downloaded, you can build TBB-Lithe the same way you build the standard TBB source.

If you have installed Lithe and Parlib in non-standard locations, you need to set the following environment variables before compiling.

PARLIB_PREFIX=<parlib_install_dir>
LITHE_PREFIX=<lithe_install_dir>

After doing this, you should be able to just run make to compile TBB. All of the Lithe changes are wrapped in a "USE_LITHE" #define, which can be enabled or disabled by modifying the THREADING_LIBRARY variable in "build/linux.gcc.inc". Currently we only support TBB-Lithe on linux, using gcc, but future versions may include other operating systems and compilers (including Akaros).

cd tbb-lithe
make

To test TBB-Lithe, simply run the examples included with the distribution. All of the examples that use features listed in the limitations section above have been modified to include work-arounds that avoid these limitations.

cd tbb-lithe
make examples

All of the examples should run to completion without error. You can also run make tests to run the TBB regression tests, but there are still a significant number of errors on some of these tests. We hope to have all of these resolved by the next release.

Discussions about TBB-Lithe are currently held on the general lithe-users Google group.
Feel free to join the list and post any questions you have there.

Current Contributors:

Past Contributors: