[GHC] #14880: GHC panic: updateRole

GHC ghc-devs at haskell.org
Sun Sep 23 14:32:35 UTC 2018


#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


More information about the ghc-tickets mailing list