Author: James Reinders
Publisher: O’Reilly, 2007
Aimed at: Developers in parallel processing
Pros: Unique coverage of TBB
Cons: Confusing organization of material
Reviewed by: Harry Fairhead
If you think of Intel just as a chip manufacturer you are behind the times. This book deals with its multi-core software.
Parallel processing is the challenge and multi-core processors are the reason for the challenge. Intel is largely responsible for the multi-core phenomenon and you might well expect them to offer help in utilizing the hardware they have created. However most programmers don’t associate Intel with software and this is a failure of marketing – rare these days. The fact of the matter is that Intel has a lot of very interesting software on offer and Intel Threading Building Blocks (TBB) is a case in point.
A book that brings this software to a wider audience must be a welcome event but this effort isn’t entirely successful. Its lapses of a strictly logical presentation will confuse some and raise questions of exactly what is efficient and what is inefficient – after all parallel processing is all about making things go faster.
You also need to know that TBB is a C++ library and it’s highly specific in the sense that not much of the discussion is about general ideas of concurrency.
Although TBB is now at version 3.0, this is still the only book in English devoted to it. So, if you use or plan to use it, then buy the book and read the source of the library to find out exactly how it all works.