Media praise for Intel Threading Building Blocks
"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 knew 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."
-- , former head of DARPA's High Performance Computing (HPC++) project, and steering committee member of the Global Grid Forum
"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."
-- , MIT Computer Science and Artificial Intelligence Laboratory
"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 up front for Maya. This book shows you how to extract the most benefit from using TBB in your code."
-- , Senior Software Engineer, Autodesk
"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."
-- , 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."
-- , 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."
-- , 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. "
-- , 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."
-- , 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."
-- , 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."
-- , Texas A&M University, Inventor of STAPL
"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."
-- , founder of KAI and former director of the Center for Supercomputing Research and Development