
#14880: GHC panic: updateRole -------------------------------------+------------------------------------- Reporter: RyanGlScott | Owner: goldfire Type: bug | Status: new Priority: normal | Milestone: 8.8.1 Component: Compiler (Type | Version: 8.2.2 checker) | Resolution: | Keywords: TypeInType Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple crash or panic | Test Case: Blocked By: | Blocking: Related Tickets: #15076 | Differential Rev(s): Phab:D4769, Wiki Page: | Phab:D5141, Phab:D5147, Phab:D5150 -------------------------------------+------------------------------------- Comment (by tdammers): The perf regressions we saw in previous attempts were these: {{{ Unexpected stat failures: compiler/T5631.run T5631 [stat not good enough] (normal) compiler/T5321Fun.run T5321Fun [stat not good enough] (normal) compiler/T12227.run T12227 [stat not good enough] (normal) compiler/T12545.run T12545 [stat not good enough] (normal) compiler/T12150.run T12150 [stat not good enough] (optasm) }}} Results for these: {{{ =====> T5631(normal) 7 of 43 [0, 0, 0] cd "T5631.run" && "/home/tobias/well-typed/devel/ghc-phab/inplace/test spaces/ghc-stage2" -c T5631.hs -no-user-package-db -rtsopts -fno-warn- missed-specialisations -fshow-warning-groups -fdiagnostics-color=never -fno-diagnostics-show-caret -dno-debug-output +RTS -V0 -tT5631.comp.stats --machine-readable -RTS Expected T5631(normal) bytes allocated: 1161885448 +/-5% Lower bound T5631(normal) bytes allocated: 1103791175 Upper bound T5631(normal) bytes allocated: 1219979721 Actual T5631(normal) bytes allocated: 1165383416 Deviation T5631(normal) bytes allocated: 0.3 % =====> T5321Fun(normal) 10 of 43 [0, 0, 0] cd "T5321Fun.run" && "/home/tobias/well-typed/devel/ghc-phab/inplace/test spaces/ghc-stage2" -c T5321Fun.hs -no-user-package-db -rtsopts -fno-warn- missed-specialisations -fshow-warning-groups -fdiagnostics-color=never -fno-diagnostics-show-caret -dno-debug-output +RTS -V0 -tT5321Fun.comp.stats --machine-readable -RTS Expected T5321Fun(normal) bytes allocated: 423774560 +/-5% Lower bound T5321Fun(normal) bytes allocated: 402585832 Upper bound T5321Fun(normal) bytes allocated: 444963288 Actual T5321Fun(normal) bytes allocated: 438838640 Deviation T5321Fun(normal) bytes allocated: 3.6 % =====> T12227(normal) 25 of 43 [0, 0, 0] cd "T12227.run" && "/home/tobias/well-typed/devel/ghc-phab/inplace/test spaces/ghc-stage2" -c T12227.hs -no-user-package-db -rtsopts -fno-warn- missed-specialisations -fshow-warning-groups -fdiagnostics-color=never -fno-diagnostics-show-caret -dno-debug-output -O2 -ddump-hi -ddump-to- file +RTS -M1G +RTS -V0 -tT12227.comp.stats --machine-readable -RTS Expected T12227(normal) bytes allocated: 752214784 +/-5% Lower bound T12227(normal) bytes allocated: 714604044 Upper bound T12227(normal) bytes allocated: 789825524 Actual T12227(normal) bytes allocated: 744873984 Deviation T12227(normal) bytes allocated: -1.0 % =====> T12545(normal) 28 of 43 [0, 0, 0] cd "T12545.run" && "/home/tobias/well-typed/devel/ghc-phab/inplace/test spaces/ghc-stage2" --make T12545 -no-user-package-db -rtsopts -fno-warn- missed-specialisations -fshow-warning-groups -fdiagnostics-color=never -fno-diagnostics-show-caret -dno-debug-output -v0 +RTS -V0 -tT12545.comp.stats --machine-readable -RTS Expected T12545(normal) bytes allocated: 3249613688 +/-5% Lower bound T12545(normal) bytes allocated: 3087133003 Upper bound T12545(normal) bytes allocated: 3412094373 Actual T12545(normal) bytes allocated: 3212031504 Deviation T12545(normal) bytes allocated: -1.2 % =====> T12150(optasm) 32 of 43 [0, 0, 0] cd "T12150.run" && "/home/tobias/well-typed/devel/ghc-phab/inplace/test spaces/ghc-stage2" -c T12150.hs -no-user-package-db -rtsopts -fno-warn- missed-specialisations -fshow-warning-groups -fdiagnostics-color=never -fno-diagnostics-show-caret -dno-debug-output -O -fasm +RTS -V0 -tT12150.comp.stats --machine-readable -RTS Expected T12150(optasm) bytes allocated: 77557800 +/-5% Lower bound T12150(optasm) bytes allocated: 73679910 Upper bound T12150(optasm) bytes allocated: 81435690 Actual T12150(optasm) bytes allocated: 76394064 Deviation T12150(optasm) bytes allocated: -1.5 % }}} Executive summary: All of these tests perform roughly the same or better, except for the notorious `T5631Fun` test, which deviates by 3.6% - still significant, but not enough to exceed the 5% threshold. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14880#comment:136 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler