Feeds

Intel aims parallelism aid at open source fans

Help us, help you, help us

Remote control for virtualized desktops

OSCON Hoping to inspire people to write code that can run on its multi-core processors, Intel has open sourced one of its development packages.

Users of all shapes and sizes can now download the code for Intel's Threading Building Blocks (TBB) – a C++ template library that caters to the design of parallel code. By open-sourcing this product under the GPLv2 (General Public License), Intel expects more developers – particularly those playing with Linux – will give parallel programming a go. This is a self-serving effort in that Intel desperately needs an influx of parallel code in the coming years, so that software will run well across multi-core chips.

Intel pitches TBB as a way to remove some of the headaches associated with parallel programming, where you split up code and run it across a number of systems – in this case, cores – at the same time. Most developers have relied on writing single-threaded code that can run faster and faster as Intel or AMD's ups the GHz of its chips. These chip makers, however, have started to place less emphasis on increasing clock rates, opting to pack chips full of slower cores instead. It's unlikely that the software industry will see historical performance gains on these multi-core chips without embracing parallel programming – quickly.

TBB creates an abstraction layer that lets developers sidestep threading packages such as p-threads or Windows threads.

James Reinders, a senior engineer at Intel speaking here at the OSCON show, described TBB as a set of algorithm templates with a "well-defined" API (application programming interface) for its task scheduler. There's also a scalable memory allocator "competitive with anything out there."

TBB works with Microsoft, GNU and Intel compilers and should work with Sun's compiler in the near future. It also works with both weak and strong memory ordering.

Obviously, the software has been geared for Intel's chips, although it has been run on a G5-based Mac and could be taken to new chips now that it's open source. Linux, Windows, Mac OSX, Solaris and FreeBSD are all supported operating systems.

Intel offers commercial support for TBB 2.0 at $299. The commercial version of the software was included with the release of Intel C++ Compiler Professional Editions 10.0.

One very important note is that Intel has a TBB contest in play. Only open source coders need apply.

In addition, have a look-see as the mobile Linux project. ®

Secure remote control for conventional and virtual desktops

More from The Register

next story
Ford's B-Max: Fiesta-based runaround that goes THUNK
... when you close the slidey doors, that is ...
Official: European members prefer to fondle Apple iPads
Only 7 of 50 parliamentarians plump for Samsung Galaxy S
Fujitsu CTO: We'll be 3D-printing tech execs in 15 years
Fleshy techie disses network neutrality, helmet-less motorcyclists
Space Commanders rebel as Elite:Dangerous kills offline mode
Frontier cops an epic kicking in its own forums ahead of December revival
Intel's LAME DUCK mobile chips gobbled by CASH COW
Chipzilla won't have money-losing mobe unit to kick about anymore
prev story

Whitepapers

Why and how to choose the right cloud vendor
The benefits of cloud-based storage in your processes. Eliminate onsite, disk-based backup and archiving in favor of cloud-based data protection.
A strategic approach to identity relationship management
ForgeRock commissioned Forrester to evaluate companies’ IAM practices and requirements when it comes to customer-facing scenarios versus employee-facing ones.
5 critical considerations for enterprise cloud backup
Key considerations when evaluating cloud backup solutions to ensure adequate protection security and availability of enterprise data.
High Performance for All
While HPC is not new, it has traditionally been seen as a specialist area – is it now geared up to meet more mainstream requirements?
Protecting against web application threats using SSL
SSL encryption can protect server‐to‐server communications, client devices, cloud resources, and other endpoints in order to help prevent the risk of data loss and losing customer trust.