Warning: This post is just a sappy love festinregardsJames Reinders book.
I recently became aware of the Intel TBB library, luckily, just as I'm about to write a fairly large project. At first I found the examples and the supplemental documentation difficult to grasp. Functions such as parallel_for, parallel_reduce, and parallel_scan were perplexing for a programmer like me who has been in a serial computing world for so long. Furthermore, deducing the pratical usage of the TBB library seemed difficult to understand. That all changed after I ordered James Reinder's book.
James presented core concepts to thinking parallel, in parallel (no pun intended) with useful library specific calls. I ordered the book hoping to either put a nail in the coffin of my inability to understand TBB or to be pleasantly surprised at its simplicity. Obviously, I found the latter to be the case.
If you are evaluating TBB for your own use I strongly recommend you get a copy.
James, if you happen to glance this post. There is a typo you should be aware of. Page 105. Chapter 6: Scalable Memory Allocation."If you are diligent and make sure you are not maxing malloc/free and scalable_malloc/scalable_free..." Maxing should be Mixing