Developers who use C++ and Sun's OpenSolaris OS are to be offered a new tool. Intel said that Threading Building Blocks was aimed at reducing the amount of coding that C++ developers have to do to take advantage of the extra computing power in multicore chips.
C++ isn't designed in a way that takes advantage of multiple cores naturally, so application performance won't scale proportionally as additional cores are added. Threading Building Blocks aims to address that.
It is already offered for Windows, Linux, the Mac OS and FreeBSD and it's now available for OpenSolaris, said Doug Fisher, general manager of Intel's Systems Software Division, at Sun's JavaOne conference. It's offered as a free open-source download or with a paid support subscription.
The tool abstracts low-level threading details that applications require to take advantage of additional cores, and does so using common C++ templates and coding styles. The result should be that developers need to write less code to retrofit applications for multicore chips, said James Reinders, the senior Intel engineer who developed the tool.
It's already been used for some commercial applications, including Autodesk's Maya 3D modelling program, he said.
The tool is designed for OpenSolaris, the open-source version of Sun's OS, but not the closed-source Solaris edition, an Intel spokesman said. A version for Solaris is in the works, he said.
There isn't an equivalent tool for Java, although by its design Java is better suited for multicore environments. A Java program running on a four-core processor can take advantage of about 80 percent of the additional processing power, said Tony Baker, an engineering manager at Intel.
Efforts are under way to create extensions for Java to improve on that figure, a Sun official said. "We're also looking at whether we can take some of the work being done [with TBB] to get better performance scalability," he said.
Fisher was at JavaOne to encourage developers to work more closely with Intel to make the most of advances in its hardware.