Re: Support for optimization for dual core proc in C++




"JJ" <JJ@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:E8C1A002-4626-4D99-BC62-0CA190C7F2DD@xxxxxxxxxxxxxxxx
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 ?

VS2005 (Pro edition or higher) has OpenMP. I suspect the Intel compiler
does better though...


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: 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)
  • Support for optimization for dual core proc in C++
    ... Does the C++ in VS2005 allow optimization to parallelize and vectorize loops ... automatically like the product IntelC++ Compiler Version 10.0 does? ...
    (microsoft.public.vc.language)
  • 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)
  • 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)