Intel® threading building blocks

  • Authors:
  • Chuck Pheatt

  • Affiliations:
  • Emporia State University, Emporia, KS

  • Venue:
  • Journal of Computing Sciences in Colleges
  • Year:
  • 2008

Quantified Score

Hi-index 0.01

Visualization

Abstract

Intel® Threading Building Blocks [1] is a C++ runtime library that abstracts the low-level threading details necessary for effectively utilizing multi-core processors. It uses C++ templates to eliminate the need to create and manage threads. Applications tend to be more portable since parallelism is achieved through library calls and utilization of a task manager for scheduling. The task manager analyzes the system the software is running on, chooses the optimal number of threads, and performs load balancing that spreads out the work evenly across all processor cores. The library consists of data structures and algorithms that simplify parallel programming in C++ by avoiding requiring a programmer to use native threading packages such as POSIX threads or Windows threads, or even the portable Boost Threads.