Intel has released Version 11.0 of its C++ and Fortran compilers. Version 11.0 includes a number of new features, many of which continue Intel's support of parallelism. Among the features are:
- Support for OpenMP 3.0 function-level parallelism (supports both data and task parallelism).
- Lambda support (a C++ 0x feature) to facilitate threading.
- A source-code checker ("Parallel Lint") for static memory/parallel diagnostics to find flaws early in the application build cycle
- New -xHost option for optimization based on configuration of compilation machine.
- Parallel implementation of valarray for forward scaling of threaded applications.
- Enhanced Linux threading debugger
C++ lambda functions, currently part of the C++ 0x draft standard, makes it easier to deal with functions that you use just once and facilitates the use of template libraries with loop constructs (like the STL and Intel's Threaded Building Blocks) to ease threading.
The OpenMP 3.0 support includes four major extensions: Tasking for unstructured parallelism, loop collapsing, enhanced loop scheduling control, and better support for nested parallelism. Compiler 11.0 also supports both data and task parallelism, and provides source file diagnostics covering many possible issues when using OpenMP, including boundary violations, memory corruption, memory leaks, and bugger overflows.
The "Parallel Lint" tool provides source file diagnostics to eliminate bugs, boundary violations, and memory corruptions, building on the compiler's inter-procedural analysis capability to provide whole-program detection of erros such as routine mismatches, variable misue, OpenMP directive errors, and the like. The tool works with both C++ and Fortran.
The new -xHost compiler switch ("optimize for this machine") is designed to automatically optimize applications for specific Intel processors running Linux and Mac OS X.
Bundled as toolsuites, the Intel Compiler 11.0 Professional Edition includes the C++ and/or Fortran Compiler 11.0, Math Kernel Library 10.1, Integrated Performance Primitives (IPP) 6.0, and Threaded Building Blocks (TBB) 2.1. All tools run on Windows, Linux, and Mac OS X and are immediately available.
At the same time, Intel announced a new Cluster Toolkit Compiler Edition, which includes the C++ and Fortran Compilers 11.0, Math Kernel Library 10.1, MPI Library 3.2, Trace Analyzer and Collector 7.2 (with new MPI correctness checker), MPI Benchmarks 3.2, and cluster installer.