Getting rid of -fno-unit-at-a-time [Was Re: RFC: Preserving order of functions and top-level asms via cgraph]

Mike Stump mrs@apple.com
Mon Apr 11 21:09:00 GMT 2005


On Apr 11, 2005, at 4:58 AM, Nathan Sidwell wrote:
>>  > Might I refer you to Mike Stump's answer regarding swap :)
>> I haven't seen it.
>
> It was basically 'get more memory'.

Actually, an expanded version of it would be:

If gcc swaps, you're in serious trouble, gcc won't perform very well  
well when it starts to swap.  Compiling _big_ software (software that  
requires lots of ram to compile), requires one to simply have enough  
hard memory for the compiler to use.  If one doesn't have this amount  
of memory, one will want to go buy some more.  It _is_ alright if we  
require more than is typical for a consumer PC, as developers can be  
expected to have more memory, on average that most.  This, is a user  
point of view.

At the same time, from a gcc developer view point, yes, we want to  
keep memory under control and actually think about the ramifications  
of wasting memory.  gcc used to free memory after each statement, to  
ensure memory consumption was low.  With things like unit at a time,  
memory consumption is on the rise, we just need to be careful of it.   
A bad algorithm can quickly shoot it up, it is those unnatural spikes  
that are the most egregious and maybe the easiest to fix.  gcse in  
the past was one of my favorite examples of this sort of thing.



More information about the Gcc mailing list