I noticed that T1969 is failing again, and decided to do a little
investigation. The maximum residency when compiling T1969 with HEAD
compared with 7.6.3 looks like this:
7.6.3: 10,473,920
HEAD: 13,783,536
This is with +RTS -h -i0.01 to avoid sampling errors as much as
possible. The figures are pretty accurate, and the heap profiles
confirm it: we're using a lot more heap now.
-ddump-if-trace shows that HEAD is reading more interface files:
Renamer stats: 10 interfaces read
6 type/class/variable imported, out of 1361 read
0 instance decls imported, out of 105 read
0 rule decls imported, out of 53 read
vs. with 7.6.3:
Renamer stats: 8 interfaces read
2 type/class/variable imported, out of 828 read
0 instance decls imported, out of 40 read
0 rule decls imported, out of 45 read
The extra interface files are Control.Applicative and Control.Monad. So
the question is, why are we now reading these on *every* compilation?
(T1969 imports only the Prelude). Presumably this is something to do
with the AMP warnings, but can't we lazily load these interfaces when
they're needed?
Cheers,
Simon
_______________________________________________
ghc-devs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/ghc-devs