[GHC] #9370: large blowup in memory usage and time when doing parallel build of xmlhtml package
GHC
ghc-devs at haskell.org
Tue Jul 29 21:00:54 UTC 2014
#9370: large blowup in memory usage and time when doing parallel build of xmlhtml
package
-------------------------------------+-------------------------------------
Reporter: carter | Owner:
Type: bug | Status: new
Priority: normal | Milestone: 7.10.1
Component: Compiler | Version: 7.8.3
Resolution: | Keywords: parmake
Operating System: | Architecture: Unknown/Multiple
Unknown/Multiple | Difficulty: Unknown
Type of failure: Compile- | Blocked By:
time performance bug | Related Tickets: #910 #9221
Test Case: |
Blocking: |
Differential Revisions: |
-------------------------------------+-------------------------------------
Comment (by rwbarton):
Indeed something seems to be going wrong in the simplifier when invoking
ghc with -j4.
{{{
*** Checking old interface for xmlhtml-0.2.3.2:Text.XmlHtml.HTML.Meta:
[ 1 of 10] Compiling Text.XmlHtml.HTML.Meta (
src/Text/XmlHtml/HTML/Meta.hs, dist/build/Text/XmlHtml/HTML/Meta.o )
*** Parser:
*** Renamer/typechecker:
*** Desugar:
Result size of Desugar (after optimization)
= {terms: 26,260, types: 20,021, coercions: 0}
*** Simplifier:
Result size of Simplifier iteration=1
= {terms: 1,446,658, types: 953,432, coercions: 314,352}
...
}}}
With `-ddump-inlinings` I see this repeated over and over, which is not
present with `-j1`:
{{{
Inlining done: Data.String.fromString
Inlining done: Data.Text.$fIsStringText
Inlining done: Data.Text.pack
Inlining done: Data.Text.Internal.Fusion.unstream
Inlining done: Data.Text.Internal.Fusion.Common.map
Inlining done: Data.Text.Internal.Fusion.Common.streamList
Inlining done: Data.Text.Internal.safe
Inlining done: Data.Bits.$fBitsInt_$c.&.
Inlining done: Data.Text.Internal.Fusion.Types.$WYield
[ repeats ~4000 times ]
}}}
According to `-ddump-inlinings -dverbose-core2core`, GHC never even
considered inlining `fromString` with `-j1`.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9370#comment:4>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list