Pro TBB C++ Parallel Programming with Threading Building Blocks / [electronic resource] :
by Michael Voss, Rafael Asenjo, James Reinders.
- 1st ed. 2019.
- LXVI, 754 páginas614 ilustraciones, 460 ilustraciones in color. online resource.
Part I -- Chapter 1: Jumping Right In - "Hello, TBB!" -- Chapter 2: Generic Parallel Algorithms -- Chapter 3: Flow Graphs -- Chapter 4: TBB and the C++ Parallel Standard Template Library -- Chapter 5: Synchronization: why and how to avoid it -- Chapter 6: Data Structures for Concurrency -- Chapter 7: Scalable Memory Allocation -- Chapter 8: Mapping Parallel Patterns to TBB -- Part II -- Chapter 9: The Pillars of Composability -- Chapter 10: Using tasks to create your own algorithms -- Chapter 11: Controlling the Number of Threads Used for Execution -- Chapter 12: Using Work Isolation for Correctness and Performance -- Chapter 13: Creating Thread-to-core and Task-to-thread Affinity -- Chapter 14: Using Task Priorities -- Chapter 15: Cancellation and Exception Handling -- Chapter 16: Tuning TBB Algorithms: Granularity, Locality, Parallelism and Determinism -- Chapter 17: Flow Graphs: Beyond the Basics -- Chapter 18: Beef up Flow Graphs with Async Nodes -- Chapter 19: Flow Graphs on steroids: OpenCL Nodes -- Chapter 20: TBB on NUMA architectures -- Appendix A: History and Inspiration -- Appendix B: TBB Précis -- Glossary. .
Open Access
This open access book is a modern guide for all C++ programmers to learn Intel 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 Intel Threading Building Blocks 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. .
9781484243985
10.1007/978-1-4842-4398-5 doi
Compilers (Computer programs). Computer programming. Algorithms. Artificial intelligence-Data processing. Compilers and Interpreters. Programming Techniques. Algorithms. Data Science.