GHC HEAD (built with itself) blows allocation stats :-(

Gabor Greif ggreif at gmail.com
Mon May 30 10:27:11 UTC 2016


Hi devs,

I get some pretty bad allocation statistics when testing GHC HEAD. Not sure why,
but this is with a stage-0 compiler that is also GHC HEAD. (I doubt
that that is the reason, though.)

I see on a linux x64 system (RHEL6) :

Unexpected stat failures:
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T10370      T10370 [stat
not good enough] (optasm)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T10547      T10547 [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T1969       T1969 [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T3064       T3064 [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T3294       T3294 [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T4801       T4801 [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T5030       T5030 [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T5321FD     T5321FD [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T5321Fun    T5321Fun
[stat not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T5631       T5631 [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T5642       T5642 [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T5837       T5837 [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T6048       T6048 [stat
not good enough] (optasm)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T783        T783 [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T9020       T9020 [stat
not good enough] (optasm)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T9233       T9233 [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T9675       T9675 [stat
not good enough] (optasm)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T9872a      T9872a [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T9872b      T9872b [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T9872c      T9872c [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T9872d      T9872d [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T9961       T9961 [stat
not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/parsing001  parsing001
[stat not good enough] (normal)
   /tmp/ghctest/ayiNBP/1/2/3/./perf/space_leaks/T4029    T4029 [stat
not good enough] (ghci)


Some of the tests look like this:

cd /tmp/ghctest/ayiNBP/1/2/3/./perf/compiler/T9872a &&
"ghc-head-x86_64/inplace/test   spaces/ghc-stage2" -c T9872a.hs
-fforce-recomp -dno-debug-output -no-user-package-db -rtsopts
-fno-warn-tabs -fno-warn-missed-specialisations -fshow-warning-groups
-fno-ghci-history   +RTS -V0 -tT9872a.comp.stats --machine-readable
-RTS > T9872a.comp.stderr 2>&1
bytes allocated value is too high:
    Expected    T9872a(normal) bytes allocated:  3352882080 +/-5%
    Lower bound T9872a(normal) bytes allocated:  3185237976
    Upper bound T9872a(normal) bytes allocated:  3520526184
    Actual      T9872a(normal) bytes allocated: 13260131240
    Deviation   T9872a(normal) bytes allocated:       295.5 %
*** unexpected stat test failure for T9872a(normal)

Around 300% looks really bad. Can anybody reproduce this? For
reference, this is the test command I run:

$ make test TEST="T9961 T10547 T10370 T3064 T4029 T5642 parsing001
T783 T3294 T9872d T9872b T9872c T9872a T1969 T5321Fun T5837 T5631
T5321FD T5030 T4801 T6048 T9675 T9233 T9020"

The testsuite works nicely otherwise.

Cheers and thanks,

    Gabor


More information about the ghc-devs mailing list