Memory footprint/compile time explosion caused by the tree inliner

Toon Moene toon@moene.indiv.nluug.nl
Fri Apr 18 21:36:00 GMT 2003


Joe Buck wrote:

>>>According to Vlad, there is no hope, the scheduler is at least O(n^2).

> On Fri, Apr 18, 2003 at 10:49:51AM -0400, Geert Bosch wrote:
> 
>>Why can't we just insert arbitrary scheduling barriers in very large
>>functions and schedule the pieces independently? We could relate the
>>maximum size of a piece to expected execution frequency, so that we
>>work harder to optimize loops than other code.

> We pretty much have to do something like that; there are a lot of
> processor simulator codes that have huge functions that are essentially a
> straight line.  Toon, you're the expert, but I understand that this is
> really common in scientific Fortran codes.

Well, certainly there are Fortran codes that have 1000's of lines per 
subroutine (our own code is an example of that coding style).

The question is, however, whether lines-of-code-per-function is the 
problem - does the scheduler really consider a complete subroutine for 
optimization ?  Fortran codes (if they're not automatically generated) 
are normally full of loops, which partition the code in scheduling 
regions naturally, I'd assume.

-- 
Toon Moene - mailto:toon@moene.indiv.nluug.nl - phoneto: +31 346 214290
Saturnushof 14, 3738 XG  Maartensdijk, The Netherlands
Maintainer, GNU Fortran 77: http://gcc.gnu.org/onlinedocs/g77_news.html
GNU Fortran 95: http://gcc-g95.sourceforge.net/ (under construction)



More information about the Gcc mailing list