Maybe just activating O2 if gcc >= 4.7 (if the patch Alex was telling about works); then O3 if more than 8gb ram available and gcc >= 4.7.




On Thu, Feb 16, 2012 at 12:00 AM, Marc Feeley <feeley@iro.umontreal.ca> wrote:

On 2012-02-15, at 4:41 PM, Alex Queiroz wrote:

> Hallo,
>
> 2012/2/15 Marc Feeley <feeley@iro.umontreal.ca>:
>>
>>> I've read in the git commits that now the default flag is -O2, could this be the reason?
>>
>> It could.  Please modify the configure script so that it uses -O1 and check if that works better.  I would be interested in the time both ways, and the version of your gcc.
>>
>
> FWIW, I opened a bug[1] for GCC that, after fixed for 4.7.0, did let
> me compile Gambit-C with -O3 and using `make -j 3` on machine with 8GB
> of RAM, very quickly.
>
> [1] - http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51389

Neat!  I'm quite surprised that gcc -O3 when using --enable-single-host completes at all!  I have always used -O1 and only recently (this past week) noticed that the gcc I was using (v4.2.1) could compile at -O2 without taking too much RAM.  I think -O3 is pushing it.  I may have to revert to -O1 as a default if people are having problems with -O2.

If only I could find a good heuristic for the configure script to choose the "right" optimization level for the user's development environment.

Marc