> 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.