TBB uses templates thereby relying on compile-time polymorphism that can be more temporally efficient than traditional run-time polymorphism since modern C++ compilers are tuned to minimize any abstraction penalty arising from heavy use of templates such as Standard Template Library and TBB.
TBB is a collection of components for parallel programming:
Version 1.0 was introduced by Intel on August 29, 2006, the year after the introduction of Intel's first dual-core x86 processor, the Pentium D.
Version 1.1 was introduced on April 10, 2007. This version introduced auto_partitioner which offered an automatic alternative to specifying a grain size parameter to estimate the best granularity for your tasks. This version was added to the Intel C++ Compiler 10.0 with the new Professional Edition later that year on June 5.
Version 2.0 was introduced on July 24, 2007. This version included the release of the source code and the creation of an open source project. The license used for open source is the same as the one used by the GNU Compiler Collection C++ standard library, a GPLv2 with an "runtime exception" (because of being template heavy code that usually becomes part of the executable after compilation). TBB is still available in a commercial version (without source code) with support but with no differences in functionality from the open source version.
Possible future version features were outlined in a posting to the project web site.
Between July 2007 and March 2008, significant development was put into improvements in the TBB container classes (especially
concurrent_vector), and a new algorithm (
parallel_do) was developed. These features were made available in open source TBB development releases during this time period.
parallel_do component is a replacement for
parallel_while, which will eventually be deprecated. The
parallel_do component is structured in a manner that is consistent with the other TBB algorithms (
parallel_scan), making its application simpler and more intuitive for developers than was the case with
The TBB commercial release 2.0 supports Microsoft Windows (XP or newer), Mac OS X (version 10.4.4 or higher) and Linux using compilers Visual C++ (version 7.1 or higher, on Windows OS only), Intel C++ Compiler (version 9.0 or higher) or GNU Compiler Collection (gcc). Additionally, the open source builds of TBB supports Solaris and FreeBSD.
New Parallel and Distributed Computing Study Findings Recently Were Reported by Researchers at Iowa State University
May 30, 2013; By a News Reporter-Staff News Editor at Computer Weekly News -- Investigators publish new report on Parallel and Distributed...