Version Information

Intel® Threading Building Blocks (Intel® TBB) has macros, an environment variable, and a function that reveal version and run-time information.

Version Macros

The header tbb/tbb_stddef.h defines macros related to versioning, as described below. You should not redefine these macros.

Version Macros


Description of Value


Current interface version. The value is a decimal numeral of the form xyyy where x is the major version number and y is the minor version number.


TBB_INTERFACE_VERSION/1000; that is, the major version number.


Oldest major interface version still supported.

TBB_VERSION Environment Variable

Set the environment variable TBB_VERSION to 1 to cause the library to print information on stderr. Each line is of the form “TBB: tag value, where tag and value are described below.

Output from TBB_VERSION


Description of Value


Intel TBB product version number.


Value of macro TBB_INTERFACE_VERSION when library was compiled.


Various information about the machine configuration on which the library was built.


Setting of macro TBB_USE_ASSERT


1 if library can enable instrumentation for Intel® Parallel Studio XE and Intel® Threading Tools; 0 or undefined otherwise.


yes if library has enabled instrumentation for Intel® Parallel Studio XE and Intel® Threadng Tools, no otherwise. Typically yes only if the program is running under control of Intel® Parallel Studio XE or Intel® Threadng Tools.


Underlying allocator for tbb::tbb_allocator. It is scalable_malloc if the Intel® TBB malloc library was successfully loaded; malloc otherwise.


This output is implementation specific and may change at any time.

TBB_runtime_interface_version Function


Function that returns the interface version of the Intel® TBB library that was loaded at runtime.


extern “C” int TBB_runtime_interface_version();


#include "tbb/tbb_stddef.h"


The value returned by TBB_runtime_interface_version() may differ from the value of TBB_INTERFACE_VERSION obtained at compile time. This can be used to identify whether an application was compiled against a compatible version of the Intel® TBB headers.

In general, the run-time value TBB_runtime_interface_version() must be greater than or equal to the compile-time value of TBB_INTERFACE_VERSION. Otherwise the application may fail to resolve all symbols at run time.

Pour de plus amples informations sur les optimisations de compilation, consultez notre Avertissement concernant les optimisations.