August 28, 2006

Intel offers developers help with apps for multicore CPUs

New tools gauge threading issues

Intel on Monday is shipping three threading tools to enable developers to better take advantage of newfangled multicore processors. The tools include Threading Building Blocks 1.0, a C++ runtime library to introduce threads to an application; Thread Checker 3.0, a threading analysis tool to minimize the potential for errors, and Thread Profiler 3.0, which provides insight into how application threads interact. Threading Building Blocks is a new product; the other two offerings are upgrades to existing products.

Working with existing development tools, Intel's tools help programmers exploit parallelism in multicore systems, Intel said. The products work with other Intel tools and understand locks. They also function with OpenMP technology for threaded applications and other parallel constructs.

Intel wants to offload the need for developers to do hand-coding to manage threads, said James Reinders, director of marketing and business development for Intel's software development products group. "We're finding that that's something that in general developers should avoid," Reinders said.

Threading Building Blocks features a template library for C++ to allow parallelism to be expressed. Developers write an application once that automatically recognizes available cores and scales performance. The tool works with Windows, Linux, and Mac OS on platforms using Intel, Microsoft and GNU compilers. The library can be used with threading programming interfaces such as Windows, Posix and OpenMP threads.

The new versions of Thread Checker and Thread Profiler feature support for 64-bit systems. Thread Checker 3.0 adds a command line capability so it can be used with quality-assurance suites; the command line interface supports command line scripts that run without human intervention. Linux support is new for Thread Checker 3.0.

Thread Checker and Thread Profiler both can now be integrated into the Visual Studio 2005 development platform.

Thread Checker finds a class of bugs that can only exist in parallel programming, Reinders said. These include data race issues, in which one thread computes something and another thread uses the results, and deadlocks in threads. "Both of them happen because of using locking improperly," Reinders said.

Data race bugs are "particularly insidious" because they may properly work some times but not other times, Reinders said.

At the Roxio division of Sonic Solutions, Intel's tools have been used to deal with data race issues. "We were able to use the tools to try to diagnose some threading [issues] and they basically helped us track down some things we might not have found without very strict code reviews," said Dan Staheli, development team lead at Roxio, which builds multimedia software. Staheli said he did not use the tools himself but his team did.

Thread Profiler 3.0, meanwhile, shows what each thread is doing and whether a thread is doing useful work or sitting idle. Developers get insight into how application threads interact and parallel performance issues are pinpointed.

Threading Building Blocks 1.0 and Thread Profiler have a suggested price of $299. Thread Checker 3.0 is priced at $999, or $499 for a version supporting Linux with just the command line interface.

Paul Krill is an editor at large at InfoWorld.
Close

On Twitter now

Application development

Powered by Twitter

White Paper

D2D Virtual Tape Library Replication Primer

This whitepaper explains the terminology and concepts behind Data Replication technologies and establishes some sizing rules through worked examples. Learn the new paradigm in disaster tolerance—protect data anywhere.

Download now »

White Paper

An Alternative to Virtualization for Datacenter Cost Savings

Server virtualization is a popular option for dealing with mounting datacenter costs. Another equally promising approach is the use of an Application Delivery Controller. Citrix NetScaler provides a low-cost way for organizations to reduce their server count and accrue cost savings from a reduction in space, cooling, power and personnel.

Download now »

White Paper

Why Your Firewall, VPN, and IEEE 802.11i Aren't Enough to Protect Your Network

The emergence of WLANs has created a new breed of security threats to enterprise networks.

Included in HP ProCurve WLAN solutions is security technology that alleviates threats from WLANs through:
* Monitoring wireless activity inside and out of the enterprise
* Classifying WLAN transmissions into harmful and harmless
* Preventing transmissions that pose a security threat to the enterprise network
* Locating participating devices for physical remediation

Download now »

White Paper

Bringing the Edge to the Data Center

Effectively address data protection challenges, implementing solutions that help store and protect business–critical data while cutting costs and improving efficiency and reliability.

Download now »

Sign up to receive InfoWorld Resource Alerts

Subscribe to the Developer World Newsletter

Receive a weekly roundup about the art and science of software development.

©1994-2009 Infoworld, Inc.