[GHC] #14766: Hole-y partial type signatures greatly slow down compile times

GHC ghc-devs at haskell.org
Tue Feb 6 16:20:49 UTC 2018


#14766: Hole-y partial type signatures greatly slow down compile times
-------------------------------------+-------------------------------------
        Reporter:  harpocrates       |                Owner:  (none)
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  8.2.1
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
 Type of failure:  Compile-time      |  Unknown/Multiple
  performance bug                    |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------
Description changed by harpocrates:

Old description:

> This time, I actually mean it. :)
>
> Originally reported [https://github.com/simonmar/happy/issues/109 here],
> I distilled the example from
> [https://github.com/simonmar/happy/issues/109#issuecomment-362957245 this
> comment] into a one file test case. `Sigs.hs` is exactly like
> `NoSigs.hs`, except for the fact that it has a bunch of extra type
> signatures that have a lot of holes. On my machine, this is what
> compilation times are (I gave up timing after 15 minutes):
>
> || GHC version || 8.0.2  || 8.2.1  || 8.4.1
> (445554b6d9a2263f969e25bb9f532dd0c3a9dc8c) ||
> || `NoSigs.hs` || 24.13s || 22.93s || 34.05s ||
> || `Sigs.hs`   || >15m   || >15m   || >15m   ||

New description:

 This time, I actually mean it. :)

 Originally reported [https://github.com/simonmar/happy/issues/109 here], I
 distilled the example from
 [https://github.com/simonmar/happy/issues/109#issuecomment-362957245 this
 comment] into a one file test case. `Sigs.hs` is exactly like `NoSigs.hs`,
 except for the fact that it has a bunch of extra type signatures that have
 a lot of holes. On my machine, this is what compilation times are (I gave
 up timing after 15 minutes):

 || GHC version || 8.0.2  || 8.2.1  || 8.4.1
 (445554b6d9a2263f969e25bb9f532dd0c3a9dc8c) ||
 || `NoSigs.hs` || 24.13s || 22.93s || 34.05s ||
 || `Sigs.hs`   || >15m   || ~13m   || >15m   ||

--

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14766#comment:3>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list