Intel has released Service Pack 1 for Intel Parallel Studio XE 2011 for C, C++, and Fortran developers. This release is intended to give programmers updated tools to improve application quality and performance with new support for Cilk Plus v1.1, IEEE 754-2008, and Intel Threading Building Blocks v4.0.
Also now featuring support for the latest C++ and Fortran standards, the chip giant is making a direct move to encourage developers to create scalable code for the latest batch of Intel Xeon processors while also extending to the Intel-branded "Many Integrated Core" architecture.
With this Service Pack release comes a C/C++ compiler and a Fortran compiler; performance and parallel libraries; error-checking functions, so-called "code robustness" enhancements, and performance profiling tools into a single suite offering.
The Transition from Multicore to "Manycore"
Intel says that new functions presented here "simplify the transition from multicore to manycore" processors in the future. Keen to promote parallelism and concurrency at every level, Intel insists that programmers will be able to develop parallel applications "the easy way" with Intel Parallel Advisor. "This threading assistant tool for C/C++ Microsoft Visual Studio developers provides a step-by-step proposal that simplifies transitioning serial applications to parallelism. Now available with the purchase of Windows versions of Intel Parallel Studio XE or Intel C++ Studio XE parallel software development suites," says the company.
New in this Service Pack release is Intel Composer XE 12.1 with enhanced performance through memory, auto-parallelization, and vectorization optimization. Intel claims that the C/C++ compiler 12.1 is now up to 47% faster than the nearest competitor, and that the Fortran compiler 12.1 is now up to 24% faster than the nearest competitor. As well as some pretty comprehensive standards support, there is also Intel Threading Building Blocks 4.0 here with Flow Graph — a flexible API for expressing static and dynamic dependencies between computations; Concurrent Unordered Set — a thread-safe container to store and access user objects; Generic GCC Atomics Support — library portability to enable Intel TBB-based solutions on a broader range of platforms; and also Arbitrary nesting, which represents improved interoperability with Intel PBB to enable composability advantages for Intel Cilk Plus users.
According to Intel, the new iteration of Cilk Plus, the multithreaded parallel computing language, also features enhanced SIMD pragma support with improved scalability and performance with SIMD pragma loops, vector length, and elemental functions support. There is also an SIMD pragma clause — "vectorlengthfor" to provide a more architectural and scalable way to define vector lengths of loops and Holder Hyperobjects to save time and improve performance by enabling per-thread temporary storage.