Support for optimization for dual core proc in C++



I use C++ to do mathematical calculus using today VS 2005 and C++ without .net.

Does the C++ in VS2005 allow optimization to parallelize and vectorize loops
automatically like the product Intel(R) C++ Compiler Version 10.0 does ?

I am interested in the following features:

Auto-vectorization:
parallelizes code to utilize the Streaming SIMD Extensions (SSE)
instruction set architectures (SSE, SSE2, SSE3, SSSE3, and SSE4) of our
latest processors.

High-Performance Parallel Optimizer (HPO):
restructures and optimizes loops to ensure that auto-vectorization, OpenMP,
or auto-parallelization best utilizes the processor’s capabilities for cache
and memory accesses, SIMD instruction sets, and for multiple cores. This
revolutionary capability, new for 10.0, combines vectorization,
parallelization and loop transformations into a single pass which is faster,
more effective and more reliable than prior discrete phases.

Interprocedural Optimization (IPO):
dramatically improves performance of small- or medium-sized functions that
are used frequently, especially programs that contain calls within loops. The
analysis capabilities of this optimizer can also give feedback on
vulnerabilities and coding errors, such as uninitialized variables or OpenMP
API issues, which cannot be detected as well by compilers which rely strictly
on analysis by a compiler front-end.

Does VS C++ this automatically or is it better to use Intel C++ inside VS
2005 to have faster code on dual or quad core processors?

Will there be similar features in C++ VS 2008 ?

Regards

JJ
.



Relevant Pages

  • Re: Support for optimization for dual core proc in C++
    ... Does the C++ in VS2005 allow optimization to parallelize and vectorize ... automatically like the product IntelC++ Compiler Version 10.0 does? ... restructures and optimizes loops to ensure that auto-vectorization, ...
    (microsoft.public.vc.language)
  • Re: ifort volatile with O3
    ... move code out of loops when possible. ... such that the VOLATILE parts don't do what ... the OP did ask about optimization level 3. ... compiler is free to move things around so long as the final result ...
    (comp.lang.fortran)
  • Re: ifort volatile with O3
    ... move code out of loops when possible. ... such that the VOLATILE parts don't do what ... the OP did ask about optimization level 3. ... compiler is free to move things around so long as the final result ...
    (comp.lang.fortran)
  • Re: Why is C# 450% slower than C++ on nested loops ??
    ... >>>way it is in the benchmark is measuring nothing but a compiler's ability to ... >>>optimize nested loops that do more or less nothing. ... C# compiler fails to do this optimization. ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: Why is C# 450% slower than C++ on nested loops ??
    ... A nested loop written the way it is in the benchmark is measuring nothing but a compiler's ability to optimize nested loops that do more or less nothing. ... C# compiler generates such code, and the C++/CLI compiler is able to do so. ... It is reported that 2005 does a much better job of optimization of .NET code, yet, only with the C++, not the C# compiler. ...
    (microsoft.public.dotnet.languages.csharp)