Inte’s TBB Library: Same old, same old

July 25, 2007

Intel Creates Open Source Project for Its Popular Multi-Core Development Software
IntelĀ® Threading Building Blocks (TBB), a popular software C template library that simplifies the development of software applications running in parallel (key to any multicore computer), is now available as an open source project under the GNU General Public License version two (GPLv2) with the runtime exception.

After reading the articles on DevX, this just looks like a Pthreads wrapper. It adds in some C++ syntactic sugar to do some very simple stuff like parallellizing for loops (OpenMP, anyone?) and elementary data-parallel programming constructs (PeakStream did this much better). Yes, it makes it easy to write parallel programs. But the fact is programming with threads (or tasks or whatever fancy name you give them) is a pain in the ass. No matter how wonderful your threading library is, you will run against the same age-old problems of races and deadlocks. No library is going to stop you from shooting yourself in the foot. And no matter how smart developers are, threads just plain don’t scale in terms of guaranteeing correctness.

So yeah, nothing new here really from Intel. Boring. I will wait for Microsoft to release their transactional memory based framework.