Re: forall and do loop



highegg wrote:
On Jul 27, 2:33 pm, Tobias Burnus <bur...@xxxxxxxx> wrote:
On Jul 27, 11:55 am, highegg <high...@xxxxxxxxx> wrote:

Commercial compilers (Intel, EkoPath) even offer the possibility to
use the profiling information for subsequent optimizations, which is
potentially very powerful approach.
GCC has the same - does this make GCC a commercial compiler? ;-)

GCC has the options: -fprofile-generate and -fprofile-use.

That's cool - I didn't know.
Much of the publicity and development for profiling feedback centers around SPEC2000, as that benchmark considers it a "base" optimization. This position has changed since.
Relating to the original topic: if forall doesn't have any importance in SPEC2000, you could suspect that profiling feedback hasn't been trained to do much for it.
Profile feedback options don't have many convenience features. Commercial compilers may have one advantage over gfortran: profiling data independent of specific compiler flag options makes it unnecessary to re-profile each time a new flag is tried.

Depending on the program, performance might be gained or lost. For the
current gfortran 4.3 and the Polyhedron test suite, seehttp://physik.fu-berlin.de/~tburnus/gcc-trunk/benchmark/#rt

As one test gets 24% slower, the few per cent gains for the other
tests average out (in the geometric mean).
(I filled a bugreport about it, #32913.)
This situation applies to commercial compilers as well.
For real applications, it is necessary to profile across a representative group of data sets, to avoid the common situation of optimizing a single case at the expense of several others.
.



Relevant Pages

  • Re: forall and do loop
    ... a good freeware profiler tool to look into the bottlenecks. ... Note that the Heisenberg uncertainty principle holds for profiling - ... use the profiling information for subsequent optimizations, ... a Fortran coding style that will make my programs automatically well- ...
    (comp.lang.fortran)
  • Re: recommended way implementing a debugger
    ... Passive profiling ... Active profiling tends to work best for things like ensuring code ... Passive profiling tends to work better for measuring the exact time ... because turning on any sorts of optimizations ...
    (comp.lang.asm.x86)
  • Re: Optimizations to Reduce Memory Consumption and Minimize Paging
    ... Without a compiling sample, ... tried profiling the two side by side (even simply Performance Monitor ... The most obvious "optimizations" appear to be the calls to GC.Collect, ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: JavaScript implementation
    ... to write about saving 1 microsecond? ... As with all optimizations: Don't do it, ... profiling) that it is going to help. ...
    (comp.lang.javascript)
  • Re: ruby-ole-1.2.3 released!
    ... Initial property set support. ... Optimizations from benchmarks and profiling, ...
    (comp.lang.ruby)