comp.lang.ada
 help / color / mirror / Atom feed
From: Georg Bauhaus <rm.dash-bauhaus@futureapps.de>
Subject: Re: GNAT and register allocation
Date: Sun, 22 Apr 2012 23:24:30 +0200
Date: 2012-04-22T23:24:30+02:00	[thread overview]
Message-ID: <4f94770e$0$7615$9b4e6d93@newsspool1.arcor-online.net> (raw)
In-Reply-To: <25429130.1239.1335127991071.JavaMail.geo-discussion-forums@ynlp2>

On 22.04.12 22:53, gautier_niouzes@hotmail.com wrote:
> Le dimanche 22 avril 2012 18:53:46 UTC+2, Georg Bauhaus a �crit :
>
>> Still, a pragma controlling inline expansion (not just the enabling
>> pramga that Ada has) seems a more pragma-tic way of specifying what
>> I'd like, in the shape of a clearly visible request. (The compiler
>> may still ignore it).
>> Controlling inline expansion by playing with sizes of subprograms
>> seems possible, but a little adventurous.
>>
>> Currently, I see only one way, writing a forest of
>> options for translating units of re-structured programs...
>
> Did you consider the -gnatn option (rather: not using it...) ?

Yes, and many other things: there is also the trade-off between -gnatN
(deprecated in newer GNATs that rely on more recently added GCC powers)
and -gnatn, and nothing, and -O3 and -O2, and ... and compiler versions,
and a number of different CPUs, all offering different capabilities
(pipelines, buffers, versions of SSE, ...) and OS versions (both 32 bits
and 64 bits) ... that all affect the running time of programs.

Massively in this case.

Sometimes the effects of any combination of the above are rather striking,
yielding speedups or slowdowns in the range 0 .. 300 percent, for the
exact same program. The goal is to find ways to control the compilers
so that they produce predictably good result at least when the programs
are run on a subset of CPUs known in advance.



  reply	other threads:[~2012-04-22 21:24 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-20 10:21 GNAT and register allocation Georg Bauhaus
2012-04-20 11:17 ` Georg Bauhaus
2012-04-20 13:48   ` Markus Schöpflin
2012-04-20 15:34     ` Georg Bauhaus
2012-04-21 12:10       ` Stephen Leake
2012-04-22 16:43         ` Georg Bauhaus
2012-04-22 17:39           ` Jacob Sparre Andersen
2012-04-22 21:14             ` Georg Bauhaus
2012-04-24 12:24               ` Stephen Leake
2012-04-24 13:27                 ` Georg Bauhaus
2012-04-24 18:40                   ` "gnatchop" and ".gpr" files? (Was: GNAT and register allocation) Jacob Sparre Andersen
2012-04-25 11:51                   ` GNAT and register allocation Stephen Leake
2012-04-25 12:54                     ` Georg Bauhaus
2012-04-26 10:55                       ` Stephen Leake
2012-04-26 17:15                         ` Georg Bauhaus
2012-04-24 12:21           ` Stephen Leake
2012-04-22 17:30         ` Georg Bauhaus
2012-04-21 15:41       ` Florian Weimer
2012-04-22 16:53         ` Georg Bauhaus
2012-04-22 20:53           ` gautier_niouzes
2012-04-22 21:24             ` Georg Bauhaus [this message]
2012-04-23  8:43               ` gautier_niouzes
2012-04-23 16:46                 ` Georg Bauhaus
2012-04-23  9:11               ` gautier_niouzes
2012-04-23 16:47                 ` Georg Bauhaus
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox