------- Comment #5 from kargl at gcc dot gnu dot org  2009-07-16 19:55 -------
(In reply to comment #4)
> Compiles OK at -O2, but more slowly than with 4.1.2:
> 
>         4.1.2       4.4.0
> -O2:     
> real    1m19.827s   real    2m58.945s
> -O3:
> real    1m30.645s   real   10m5.166s
> 
> Even if -O3 ultimately generates correct code in some suitably large
> configuration,
> it may be that some optimizer
> algorithms could stand tuning to avoid time-consuming
> but ultimately unprofitable blind alleys.
> 

Hmmm, something is definitely admiss here.  After 22 minutes of
compiling with -O3 on my system, f951 'appears' stuck with only
450 MB of used memory.  I attached ktrace to the process and 
found 

 50649 f951     CALL 
mmap(0,0x300000,PROT_READ|PROT_WRITE,MAP_PRIVATE|MAP_ANON,0xffffffff,0)
 50649 f951     RET   mmap 500170752/0x21dd00000
 50649 f951     CALL  madvise(0x22b179000,0x83000,MADV_FREE)
 50649 f951     RET   madvise 0
 50649 f951     CALL  madvise(0x22b002000,0x79000,MADV_FREE)
 50649 f951     RET   madvise 0
 50649 f951     CALL  madvise(0x21e0f8000,0x8000,MADV_FREE)
 50649 f951     RET   madvise 0
 50649 f951     CALL  madvise(0x21e002000,0xde000,MADV_FREE)
 50649 f951     RET   madvise 0
 50649 f951     CALL  munmap(0x21dd00000,0x300000)
 50649 f951     RET   munmap 0

repeated over and over and over again.  It appears on my
system the f951 is looping over some garbage collection, but
never reaching a termination point. :(


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40773

Reply via email to