To help developers produce software that is more powerful and efficient, Intel aims is to take full advantage of parallelism, which allows multiple compute threads to occur at the same time.
After a year of being open source, Intel is now releasing Threading Building Blocks (TBB) 2.1, which expands the functionality and performance of the project.
As processors becoming increasingly parallel with multicore CPUs, the need for software developers to create software that can fully benefit is critically important.
“Since releasing Threading Building Blocks to the open source community, we’ve got a lot of community involvement and feedback,” Phil De La Zerda director of business development at Intel software development products, told InternetNews.com.
“One of the benefits of the adoption is that we were able to add a lot of new capabilities based on the feedback that they gave us,” he said.
One of the new capabilities is called tbb_thread, which permits the task scheduler to block tasks. By blocking tasks, developers can optimize processes.
“Before TBB 2.1, the task scheduler was not able to permit blocking tasks,” De La Zerda explained. “Now developers don’t have to worry about their work interfering with other work happening on the system at the same time,” he said.
TBB 2.1 also now enables task cancellation, which may improve performance by ensuring that completed tasks now longer compute threads.
“When performing a parallel search, with the old TBB the operation would have continued even after the search is completed,” De La Zerda commented. “Now with task cancellation once the goal is achieved that task is canceled.”
Although having a task cancel after completion may seem obvious, according to Intel it’s not easy to implement. De La Zerda noted that both task cancellation and blocking were features Intel knew had to be in TBB, though they didn’t make it into the first version. Their inclusion in 2.1 was due to user feedback that blocking and cancellation had to be in TBB.
With TBB 2.1, Intel aims to expand adoption through wider distribution. Since its release last year, TBB is now included in Sun’s OpenSolaris, Red Hat Fedora, Novell openSUSE and Canonical’s Ubuntu Linux.
“We’re working actively with ISV in a variety of segments that have decided to make TBB the cornerstone of their parallelism and look forward to more acceptance with 2.1,” De La Zerda said. He said Intel seeks more acceptance, as parallelism and multicore become more important with mainstream product developers.