Intel Open-Sources Threading Building Blocks Software

The software will be available as an open-source project under the GNU General Public License Version 2.

Intel is open-sourcing its Threading Building Blocks 2.0 software, a C++ template library that simplifies the development of software applications running in parallel.

The Santa Clara, Calif., chip maker will use announce on July 24 at the annual Oscon (OReilly Open Source Convention) in Portland that the source code is now available as an open-source project under the GNU General Public License Version 2 with the runtime exception, the same one the Free Software Foundation uses for libstdc++.

"Intel Threading Building Blocks 2.0 is a C++ runtime library that simplifies threading for performance and scalability. It is a higher-level abstraction that requires less code for threading and delivers multicore performance. It is ready today for the multicore architectures of tomorrow," said James Reinders, software evangelist and director of marketing for Intels software development products.

Intel will also continue to offer a packaged commercial version of the product for $299, which includes a year of technical support, upgrades and new releases, and which is built from the same source code and with exactly the same functionality as the open-source product.

"The goal of the open-source and commercial offerings is to make parallelism more accessible for programmers and enable increased application performance on multicore processors. While parallel computing is a different creature, its not real hard to get used to, as the world around us is parallel," Reinders said.

/zimages/2/28571.gifThe proliferation of parallel processing hardware is creating a need for multithreading skills. Click here to read more.

While the commercial product supports Windows, Linux and the Mac OS X, the open-source version will also support Solaris 10, FreeBSD and the G5 processor on Mac OS.

"These are implemented in a build, but we dont have much experience using them on those platforms, so we are looking to the community to help us with those. The plan going forward is to support even more processors and operating systems," Reinders said.

The TBB product was first released in August 2006, and Intel has been hearing from users since then that they wanted the product to be available everywhere and for a very long time, Reinders said. "They told us that if they had both those assurances, then it would be worth programming using this method," he said.

Open source was a very natural and appropriate way to provide both of those, so Intel decided to take the plunge, he said. "We are not just open-sourcing it and hoping people show up, we are increasing the number of people at Intel working on the project and encouraging others to contribute and participate in it going forward," he said.

"We expect that open-sourcing the project will give it a broader appeal, and I am quite confident based on experience that as people try it, they will find it to be a very good system for parallelism, and I think we will see a lot of people start playing around and learning parallelism with it," he said.

/zimages/2/28571.gifClick here to read about how Intel wove in more threads.

Intel is adding a number of people to the core development team for the product, which is a high-priority project for the company and its customers, he said. "We think that helping people program for parallelism is extraordinarily important, as Intel has a lot of exciting ideas for multicore processors in the future and, without the software, they are not as useful," Reinders said.

While Intel plans to take a strong role in maintaining and making sure the project moves forward, it is also very aware of the power of the community, he said, and "We really hope they get involved, as their contributions, along with those from our core development team, will make a difference to the product going forward."

Next Page: Programming in parallel.