Intel Boosts Multicore Programming with Parallel Studio 2011

Intel announces Intel Parallel Studio 2011, a new version of its tool set for building applications for parallel systems.

Intel has announced a new version of its tool set for developers working to create applications for parallel systems, Intel Parallel Studio 2011.

Bill Savage, vice president and general manager of the Developer Products Division of Intel's Software and Services Group, told eWEEK Intel Parallel Studio is "an essential addition to Microsoft Visual Studio 2010."

Savage said Intel Parallel Studio 2010 is a major update to the company's tools suite for building parallel applications to run on multicore systems. Intel Parallel Studio 2011 adds expanded threading libraries and a new threading advisor to its set of C++ compiler, error-checking and profiling tools.

The latest version of the Intel Parallel Studio features technology Intel gained from its acquisitions of Cilk Arts and RapidMind.

New in the 2011 edition is the Intel Parallel Advisor. Intel Parallel Advisor is a threading design tool that identifies areas in an application that can benefit most from parallelism, giving architects the guidance they need to transition from serial to parallel code, Savage said. Once those opportunities have been identified, Intel Parallel Advisor provides step-by-step recommendations for the best way to implement parallelism and helps developers analyze potential implementation scenarios.

"As a Microsoft Visual Studio C++ developer for many years, and with no previous experience with parallel programming, Intel Parallel Advisor proved to be a major boon in making it easier and efficient to implement parallelism through the planning and production phase," said Brian Reynolds, founder of Brian Reynolds Research, in a statement.

"The Intel Parallel Advisor design approach was instrumental in introducing parallelism into our code," said William Orttung, emeritus professor of chemistry at the University of California, Riverside, in a statement. "The Survey feature helped improve our code by finding areas in our serial code that took a lot of CPU time, and where our code would benefit from parallelism."

"Intel Parallel Advisor is an excellent tool for use in conjunction with a class on parallel programming, enabling students to quickly comprehend the theory of parallelism and implementation," said Korbinian Molitorisz, a researcher at the Karlsruhe Institute of Technology, in a statement.

"Parallel Advisor is the 'getting started' product for the design phase of development," Savage said. "The biggest problem is getting started with parallelism, and the Parallel Advisor helps with that."

Intel Parallel Studio addresses all phases of the development life cycle, Savage said. The tools suite enables developers to efficiently design, build and debug, verify, and tune parallel applications, he said.

The product helps users design by finding threading opportunities using the Intel Parallel Advisor threading guide. It helps developers build and debug C/C++ applications using the compilers and libraries found in Intel Parallel Composer, which now also includes the new Intel Parallel Building Blocks, a set of comprehensive parallel development models. Developers can verify and improve code reliability and quality by finding crash-causing bugs using the Intel Parallel Inspector memory and threading error checker. And developers can tune application performance with the Intel Parallel Amplifier threading and performance profiler.

Intel Parallel Building Blocks (PBB) is a set of tools that gives developers new and different ways to take advantage of parallelism with a new set of task and data parallel models that are portable, scalable, reliable and future proof. These models easily integrate into existing applications, preserving software and hardware investments, Intel said.

Intel PBB includes:

  • Intel Threading Building Blocks 3.0―This C++ template library solution provides flexible, cross-platform parallelism solutions.
  • Intel Cilk Plus―Built into Intel C/C++ Compiler, it provides an easy-to-use, well-structured model that simplifies parallel development, verification and analysis. And because it's an extension to C++, programmers typically do not need to restructure programs significantly in order to add parallelism.
  • Intel Array Building Blocks (IntelArBB)―An API backed by a sophisticated runtime library, Intel ArBB provides a generalized data parallel programming solution that frees developers from dependencies on particular low-level parallelism mechanisms or hardware architectures. Array Building Blocks will be available in beta in September and generally available in early 2011.

"The Intel TBB was surprisingly quick and simple to implement, and made the SimulWeather SDK [Software Development Kit] really fly on the Intel Core i7 processor, with close to linear scaling," said Roderick Kennedy, principal and founder of Simul Software, in a statement.

"We took the best of the Cilk Arts and RapidMind acquisitions and put it into our Parallel Building Blocks," Savage said.

Intel Parallel Building Blocks enables developers to mix and match new parallel models within an application to suit the developer's environment or application and algorithms, Savage said.