This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


On Apr 11, 2005 2:01 PM, Andrew Haley <aph@redhat.com> wrote:
> Nathan Sidwell writes:
>  > Andrew Haley wrote:
>  > > Nathan Sidwell writes:
>  > >  > Andrew Haley wrote:
>  > >  >
>  > >  > > Might it still be possible for a front end to force all pending code
>  > >  > > to be generated, even with -fno-unit-at-a-time gone?
>  > >  >
>  > >  > I think this is a bad idea.  You're essentially asking for the backend
>  > >  > to retain all the functionality of -fno-unit-at-a-time.
>  > >
>  > > OK.  So, what else?
>  > As steven asked, I'd like to understand why this is not a problem
>  > for the C++ community.  There are several alternatives
>  >
>  > 1) The C++ programs are smaller than the java programs
> 
> That's my guess.  Usually, C++ users compile one source file at a
> time, whereas Java users find it convenient to compile a whole
> archive.

That's not really true.  For C++ programs relying heavily on templates libraries
like POOMA, all of the C++ program is usually in one translation unit.  Memory
usage of GCC in this respect is reasonable for me (it was much worse!)
- compiling
a big app fits in a Gig of ram easily.  Unlike with the Intel
compiler, f.i. which cannot
even compile a moderately large POOMA program with the 2GB virtual(!) memory
limit.

This is one important point, though - if the Java stuff takes more
than the usual
_virtual_ memory limits on a 32bit machine, the simple answer cannot
be "buy more ram"
any longer.  Of course "buy a 64bit machine" would be the canonical
response then.

It would be interesting to know what part of GCC is requiring so much
memory - does
it help switching to -O0, or is the internal representation really
taking so much memory?

RIchard.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]