Features

What's New in the 2019 Edition

  • Parallel Standard Template Library (Parallel STL) C++17 generic parallel algorithms implementation.
  • Expanded support for Android*, macOS*, Windows*, and Linux*.
  • Python* language support for conda* distribution.
  • New capabilities in Flow Graph and Intel® Vtune™ Amplifier improve concurrency and heterogeneity, including reduced task scheduling overhead, default OpenCL™ platform customization, and a user event-tracing API.
Feature Benefit
opencl_node class Use with any graph object. Includes all devices from the first available OpenCL™ platform.
blocked_rangeNd class Optimize generic C++11 multidimensional arrays.
lightweight policy Reduced task scheduling overhead in Flow Graph.
Latest and future Intel® architecture support Future-proofs the next generation.

Scalability with Future-Proofing

Intel® Threading Building Blocks (Intel® TBB) makes parallel performance and scalability accessible to software developers who are writing loop- and task-based applications. Build robust applications that abstract platform details and threading mechanisms while achieving performance that scales with increasing core count. Yield linear scaling in these example applications.

Rich Feature Set for Parallelism

Intel TBB includes a rich set of components for threading performance and productivity.

Parallel Algorithms and Data Structures

Generic Parallel Algorithms

An efficient, scalable way to exploit the power of multicore without having to start from scratch.

Flow Graph

A set of classes express parallelism as a graph of compute dependencies or data flows.

Concurrent Containers

Get concurrent access and a scalable alternative to containers that are externally locked for thread safety.

Memory Allocation and Task Scheduling

Task Scheduler

This sophisticated work-scheduling engine empowers parallel algorithms and the flow graph.

Memory Allocation

Use a scalable memory manager and false-sharing free allocators.

Threads and Synchronization

Synchronization Primitives

Access atomic operations, a variety of mutexes with different properties, and condition variables.

Timers and Exceptions

Use thread-safe timers and exception classes.

Threads

API wrappers are available for operating systems.

Thread Local Storage

Efficiently implement an unlimited number of thread-local variables.

Conditional Numerical Reproduction

Ensure deterministic association for floating-point arithmetic results with the new Intel TBB template function parallel_deterministic_reduce.

 


Support for C++11 Lambda Expressions

This library can be used with C++11 compilers and supports lambda expressions. For developers using parallel algorithms, lambda expressions reduce the time and code needed by removing the requirement for separate objects or classes.

 


Select the Right License

Choose from one of the following options:

  • A commercial binary distribution for customers who may require commercial support services with separate prices available for students and classroom use.
  • The open source distribution can be used under an Apache* 2.0 license. It allows support for additional operating systems and hardware platforms. Both source and binary forms are available for download.
  • A custom license for modifying or distributing the commercial source code of Intel TBB. For more information, contact your Intel representative.

 


Software and workloads used in performance tests may have been optimized for performance only on Intel® microprocessors. Performance tests, such as SYSmark and MobileMark, are measured using specific computer systems, components, software, operations and functions. Any change to any of those factors may cause the results to vary. You should consult other information and performance tests to assist you in fully evaluating your contemplated purchases, including the performance of that product when combined with other products. For more information, see Performance Benchmark Test Disclosure.