From: Charly <carl.weierstrass@googlemail.com>
Subject: Re: Poor performance with GNAT-GPL-2017
Date: Thu, 15 Jun 2017 09:31:50 -0700 (PDT)
Date: 2017-06-15T09:31:50-07:00 [thread overview]
Message-ID: <649ddcbf-c898-4115-bbe5-59d678a94727@googlegroups.com> (raw)
In-Reply-To: <44aa47f0-418a-4ede-b436-1937c3dbe065@googlegroups.com>
Am Donnerstag, 15. Juni 2017 17:19:20 UTC+2 schrieb Charly:
> Am Dienstag, 13. Juni 2017 21:46:13 UTC+2 schrieb alkh...@gmail.com:
> > On Monday, June 12, 2017 at 6:28:17 PM UTC+3, Mark Lorenzen wrote:
> > > On Saturday, June 10, 2017 at 1:23:34 PM UTC+2, Charly wrote:
> > > > Hi,
> > > >
> > > > when I found the new GNAT-GPL-2017 this morning I was happy and installed it at once.
> > > > But I was rather disappointed about the poor performance.
> > > > To be more precise:
> > > >
> > > > When I switch to new hard- or software I allways check the performance with my private tool:
> > > > It solves Rubics Tabgle https://www.jaapsch.net/puzzles/tangle.htm with an ada programm, using one task per core.
> > > >
> > > > With GNAT-GPL-2016 (gcc 4.9.4) it took about 0,4 sec to find both solutions,
> > > > with GNAT-GPL-2017 (gcc 6.3.1) it takes about 0,8 sec to find both solutions,
> > > > which means the program is slower by a factor of 2.
> > > >
> > > > In both cases I use the following options:
> > > > -O3 -gnatA -gnatn -funroll-loops -fPIC -gnatp -g -gnatW8 -gnatVn -mtune=amdfam10 -gnat12
> > > >
> > > > Any ideas??
> > >
> > > Previous versions of GNAT did not have overflow check (-gnato) enabled by default, whereas newer versions have. Maybe this is what you are seeing.
> > >
> > > Regards,
> > >
> > > Mark L
> >
> > I see Charly is compiling with '-gnatp'. Does it suppress the overflow checks as well?
> >
> > Charly, it can be an interesting experiment to trace the source of this anomaly. This is strange that the compiler is emitting a code that is twice as slow. It can compile a specific language feature to be slower, but this one needs to be run frequently enough in your program. Can you guess what this feature can be? Maybe a profiler can help.
> >
> > Can you try to compile your benchmark without tasking at all (remove the tasking code, rather than create 1 task)?
> >
> > Can you use a different run time for the 2017 compiler?
>
> -----
Some aditional strange results, all without any tasking (new option -t 0)
gnat-gpl-2016 -O
duration 3485 ms
gnat-gpl-2016 -O2
duration 4713 ms
gnat-gpl-2016 -O3
duration 2772 ms
gnat-gpl-2017 -O
duration 3375 ms
gnat-gpl-2017 -O2
duration 4480 ms
gnat-gpl-2017 -O3
duration 4823 ms
To summarize I draw two conclusions
This year optimization level -O is the best choice,
Try several optimization levels next year when gnat-gpl-2018 is out.
next prev parent reply other threads:[~2017-06-15 16:31 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-10 11:23 Poor performance with GNAT-GPL-2017 Charly
2017-06-10 12:43 ` Jacob Sparre Andersen
2017-06-11 20:48 ` Robert Eachus
2017-06-12 19:00 ` Charly
2017-06-13 4:14 ` Robert Eachus
2017-06-13 13:57 ` Lucretia
2017-06-13 17:41 ` Robert Eachus
2017-06-12 12:21 ` Emile
2017-06-12 18:22 ` Charly
2017-06-12 15:28 ` Mark Lorenzen
2017-06-13 19:46 ` alkhimey
2017-06-15 15:19 ` Charly
2017-06-15 16:31 ` Charly [this message]
2017-06-15 18:00 ` Anh Vo
2017-06-15 19:21 ` Charly
2017-06-15 19:24 ` Anh Vo
2017-06-16 21:33 ` stephane.carrez
2017-06-21 14:29 ` gautier_niouzes
2017-06-20 22:39 ` Anatoly Chernyshev
2017-06-19 10:26 ` briot.emmanuel
2017-06-19 12:25 ` Simon Wright
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox