This open access book is a modern guide for all C++ programmers to learn Threading Building
Blocks (TBB). Written by TBB and parallel programming experts this book reflects their
collective decades of experience in developing and teaching parallel programming with TBB
offering their insights in an approachable manner. Throughout the book the authors present
numerous examples and best practices to help you become an effective TBB programmer and
leverage the power of parallel systems. Pro TBB starts with the basics explaining parallel
algorithms and C++'s built-in standard template library for parallelism. You'll learn the key
concepts of managing memory working with data structures and how to handle typical issues with
synchronization. Later chapters apply these ideas to complex systems to explain performance
tradeoffs mapping common parallel patterns controlling threads and overhead and extending
TBB to program heterogeneous systems or system-on-chips. What You'll Learn Use Threading
Building Blocks to produce code that is portable simple scalable and more understandable
Review best practices for parallelizing computationally intensive tasks in your applications
Integrate TBB with other threading packages Create scalable high performance data-parallel
programs Work with generic programming to write efficient algorithms Who This Book Is For C++
programmers learning to run applications on multicore systems as well as C or C++ programmers
without much experience with templates. No previous experience with parallel programming or
multicore processors is required.