TBB

Overview

Intel Thread Building Blocks (TBB) provides a library of highly optimized, extensively threaded C++ template library for task parallel application development. Note: the TBB library is provided as part of the Intel compiler installation. If you are using the Intel Compiler then you do NOT need to use the version discussed here – this version is provided for use with the GCC compiler for convenience.

Version 2019 Update 5 is installed on the CSF

Restrictions on use

There are no restrictions on accessing the software on the CSF. The software is released under the Apache 2.0 License and all use must adhere to that license.

Set up procedure

We now recommend loading modulefiles within your jobscript so that you have a full record of how the job was run. See the example jobscript below for how to do this. Alternatively, you may load modulefiles on the login node and let the job inherit these settings.

Load one of the following modulefiles:

module load libs/gcc/tbb/2019.5

Using the TBB in your applications

Flags should be provided to the GCC compiler command line to link against the TBB. The modulefile sets the TBBROOT environment variable to help with this. You can also run

module show libs/gcc/tbb/2019.5

To see all of the settings made by the modulefile.

This can be used on your compiler command line to access header files and libraries. For example:

gcc -I${TBBROOT}/include -L${TBBROOT}/lib/intel64 ...

The LD_LIBRARY_PATH environment variable is also set correctly by the modulefiles so that executables will find the TBB libraries at runtime if you linked against shared libraries at compile time.

Further info

Updates

None.

Last modified on June 12, 2019 at 11:47 pm by George Leaver