TBB
 
Welcome Guest | Login | Register
 

 

Feedback on TBB:

“After a couple days of integrating Intel® Threading Building Blocks (TBB), the team here at Exocortex got a 2.5X performance boost. Our fluid simulation code is now on track to scale in a future proof manner, and we look forward to digging deeper into the Intel Parallel Studio. The huge ROI we got with TBB was fantastic and our only regret is we didn’t investigate it sooner.“

Ben Houston
CTO
Exocortex Technologies

 

 

“Performance is critical to the Progress Apama Complex Event Processing (CEP) engine.  In our recent 4.0 release we incorporated the next Intel TBB scalable allocator and observed up to 30-fold speed improvements in some of our customer sourced memory intensive benchmarks.  The Intel TBB libraries have proved to be extremely easy to use and reliable in our testing.  We are very pleased with the results so far and are actively investigating other parts of TBB for future releases of Progress Apama.”

Dr. Kev Palfreyman
Engineering Manager
Progress Apama

 

 

“Any current top-quality game engine must use all available cores for handling game worlds smoothly and efficiently.  We’ve researched the problem thoroughly and found out that Intel’s software libraries offer the most comprehensive and effective solution for performance scaling. Although we considered RapidMind and Jibu for our cross-platform multi-threading development we found that Intel® TBB offered the easiest programming model, extensive support including active forums and good documentation, and an open source code base; all backed by Intel.  Because an open source version of TBB exists we were able to easily port it to Xbox360 and achieve scalability without reprogramming to take advantage of it three-core architecture. Now our games will work equally well both on Xbox360 and multi-core PCs with Intel® multi-core technology enabled.”

Roman Lut
Technical Director
Deep Shadows

 

“After using Intel TBB, we achieved 3.5 times the performance on our game server on a 4-core machine.  I think that the best benefit of using TBB is being able to utilize multi-core processors efficiently and saving development time simultaneously.”

Guoli Chen
Development Manager
The9 Development Center

 

"We are impressed with Intel® Threading Building Blocks, part of Intel® C++ Compiler Professional Edition for Windows. It’s nicely adapted, consistent with the spirit of C++ and helped us more quickly and easily add parallelism to our application...  We recommend the Professional Edition to any C++ developer interested in adding or enhancing parallelism in their application software."

Benjamin Ramirez
Colorado School of Mines
Golden, Colorado 
    

 

"We are very pleased with the progress we have made in a very short time incorporating parallel algorithms from TBB in our SimXpert code.  Intel's technical leadership and assistance facilitated our decision to introduce multi-threaded versions of SimXpert moving forward, and we're pleased to see the breadth of TBB parallel algorithms, such as parallel_for and parallel pipeline, that are available for our future consideration.  

The mentoring program that is available from Intel, which includes on site multi-threading classes, followed by close interaction with the applied engineers assigned to our account, allowed us to add multi-threading capability during a single release cycle.  

We were very excited to see the near theoretical performance scaling that was achieved by applying multi-threading to the post processing portion of SimXpert that is responsible for calculation of various
engineering quantities such as von Mises, Principal, Tresca, and Maximum Shear stresses.  Performing tests with seven very large customer simulation models, on a machine equipped with two Intel Core 2 Duo processors, we found that the scaling of the engineering calculations ranged from 3.86 to 3.9.  Achieving these near perfect results has increased the excitement within SimXpert development team to expand the use of multi-threading throughout the product."

George Truesdell
Manager, Product Development
MSC.Software
    

 

"We at KnowledgeMiner want to thank the brilliant thinkers at Intel for Threading Building Blocks (TBB) which is an amazing parallel programming toolkit.  TBB allowed us to easily add scalable multi-threading into our redesigned KnowledgeMiner software, the knowledge discovery program for the Macintosh.  TBB's task-oriented design helped us to implement concurrency of complex processors like self-organization of active heurons on a high level of abstraction.  This feature of TBB was essential to the increased accuracy, performance, and stability of our software.

TBB helped KnowledgeMiner achieve speeds 8x faster on an 8 core system.  In addition, a strict redesign of KnowledgeMiner for parallel computing is giving a 400x total speedup over the previous version.  This astonishing change in speed allows KnowledgeMiner to operate in almost real time something we didn't previously think was possible.  This surprising speedup meant the power of KnowledgeMiner could be applied more easily and quickly to the fields of socio-economical and socio-ecological modeling."

Frank Lemke
Founder and President
KnowledgeMiner Software
    

 

"With the advent of multi-core CPUs, the need for multithreading capable code has become compelling. But the traps and pitfalls are numerous for the developer willing to tap this surge of computing power. Lurking anti-patterns and counter-intuitive behaviors, coupled with the lack of thread-aware semantics in common programming languages, make this journey a perilous one.

Enter Intel Threading Building Blocks, a cross-platform C++ components library from Intel Corporation, Santa Clara. From synchronization primitives to thread-safe collections, this library allows developers to work with thread-aware building blocks and benefit from their solid implementation. Furthermore, the library also contains a set of generic parallel algorithms that is a neat invitation to go further in the quest of scalability.

Complete with one year of Intel Premier Support, this library will complement advantageously the toolbox of any C++ developer having to deal with parallelized and multithreaded application."

David Dossot
Quoted from the 2007 Jolt Productivity Awards
TBB won for Libraries, Frameworks and Components
    

 

Feedback on the O'Reilly Media TBB Book: 

"We used to say make it right, then make it fast. We can't do that anymore. TBB lets us design for correctness and speed upfront for Maya. This book shows you how to extract the most benefit from using TBB in your code."

Martin Watt
Senior Software Engineer
Autodesk
    

 

"The Age of Serial Computing is over.  With the advent of multi-core processors, parallel-computing technology that was once relegated to universities and research labs is now emerging as mainstream.  Intel Threading Building Blocks updates and greatly expands the 'work-stealing' technology pioneered by the MIT Cilk system of 15 years ago, providing a modern industrial-strength C++ library for concurrent programming.

Not only does this book offer an excellent introduction to the library, it furnishes novices and experts alike with a clear and accessible discussion of the complexities of concurrency."

Charles E. Leiserson
MIT Computer Science and Artificial Intelligence Laboratory
    

 

"TBB promises to change how parallel programming is done in C++.  This book will be extremely useful to any C++ programmer. With this book, James achieves two important goals:

  • Presents an excellent introduction to parallel programming, illustrating the most common parallel programming patterns and the forces governing their use.
  • Documents the Threading Building Blocks C++ library -- a library that provides generic algorithms for these patterns.

TBB incorporates many of the best ideas that researchers in object-oriented parallel computing developed in the last two decades."

Marc Snir
Head of the Computer Science Department
University of Illinois at Urbana-Champaign
    

 

"This book was my first introduction to Intel Threading Building Blocks.  Thanks to the easy-to-follow discussion of the features implemented and the reasons behind the choices made, the book makes clear that Intel's Threading Building Blocks are an excellent synthesis of some of the best current parallel programming ideas.  The judicious choice of a small but powerful set of patterns and strategies makes the system easy to learn and use.  I found the numerous code segments and complete parallel applications presented in the book of great help to understand the main features of the library and illustrate the different ways it can be used in the development of efficient parallel programs."

David Padua
University of Illinois
    

 

"The arrival of the multi-core chip architecture has brought great challenges in parallel programming and there is a tremendous need to have good books that help and guide the users to cope with such challenges.

This book on Intel Threading Building Blocks provides an excellent solution in this direction and is likely to be an important text to teach its readers on parallel programming for multi-cores.

The book illustrates a unique path for readers to follow in using a C++-based parallel programming paradigm -- a powerful and practical approach for parallel programming.  It is carefully designed and written, and can be used both as a textbook for classroom training, or a cookbook for field engineers."

Professor Guang R. Gao
University of Delaware
    

 

"I enjoyed reading this book.  It addresses the need for new ways for software developers to create the new generation of parallel programs.  In the presence of one of the 'largest disruptions that information technology has seen' (referring to the introduction of multi-core architectures), this was desperately needed.

This book also fills an important need for instructional material, educating software engineers of the new opportunities and challenges.

The library-based approach, taken by the Threading Building Blocks, could be a significant new step, as it complements approaches that rely on advanced compiler technology."

Rudolf Eigenmann
Purdue University
Professor of ECE and Interim Director of Computing Research Institute
   

 

"Multi-core systems have arrived.  Parallel programming models are needed to enable the creation of programs that exploit them.  A good deal of education is needed to help sequential  programmers adapt to the requirements of this new technology.  This book represents progress on both of these fronts.

Threading Building Blocks (TBB) is a flexible, library-based approach to constructing parallel programs that can interoperate with other programming solutions.

This book introduces TBB in a manner that makes it fun and easy to read.  Moreover, it is packed full of information that will help beginners as well as experienced parallel programmers to apply TBB to their own programming problems."

Barbara Chapman
CEO of cOMPunity
Professor of Computer Science at the University of Houston
    

 

"Future generations of chips will provide dozens or even hundreds of cores.  Writing applications that benefit from the massive computational power offered by these chips is not going to be an easy task for mainstream programmers who are used to sequential algorithms rather than parallel ones.

Intel's TBB is providing a big step forward into this long path, and what is better, all in the C++ framework."

Eduard Ayguade
Barcelona Supercomputer Center
Technical University of Catalunya
    

 

"Intel's TBB is to parallel programming what STL was to plain C++.  Generic programming with STL dramatically improved C++ programming productivity.  TBB offers a generic parallel programming model that hides the complexity of concurrency control. It lowers the barrier to parallel code development, enabling efficient use of 'killer' multi-cores."

Lawrence Rauchwerger
Texas A&M University
Inventor of STAPL
    

 

"For the last eighteen years the denizens of the thinly populated world of supercomputers have been looking for a way to write really pretty and practical parallel programs in C++.  We have templates and generic programming had to be part of the answer, but it took the arrival of multi-core (and soon many-core) processors to create a fundamental change in the computing landscape.  Parallelism is now going to be everyday stuff.

Every C++ programmer is going to need to think about concurrency and parallelism and Threading Building Blocks provides the right abstractions for them to do it correctly.

This book is not just a discussion of a C++ template library.  It provides a lovely and in-depth overview of much of what we have learned about parallel computing in the last 25 years.  It could be a great textbook for a course on parallel programming."

Dennis Gannon
Science Director, Pervasive Technology Labs at Indiana University,
Former Head of DARPA's High Performance Computing (HPC++) Project,
Steering Committee Member of the Global Grid Forum

    

 

"TBB hits the application developer's sweet spot with such advantages as uniprocessor performance, parallel scalability, C++ programming well beyond OpenMP, compatibility with OpenMP and hand threads, Intel Threading Tools support for performance and confidence, and openness to the software development community.  TBB avoids several constraints surrounding the sweet spot: language extension risks, specific compiler dependences and hand-threading complexities.

This book should make developers productive without a steep training curve, and the applications they produce should be of high quality and performance."

David Kuck
Intel Fellow
Founder of KAI and former Director of the Center for Supercomputing Research and Development
    
Search 

Page & Feed options
Print | Email to a friend | Support | RSS

Bookmark This
 Digg this   del.icio.us

Resources

       Buy Now 
Intel TBB  Jolt Productivity Award

   

On which operating system(s) do you use TBB?