And try tweaking the GC options to keep the residency down (preferably within the limits of real memory on your machine). Use '+RTS -c' to enable the compacting collector, and possibly use a -M switch to set the maximum heap size to the amount of real memory - unless you need more than that, of course.
Cheers, Simon > -----Original Message----- > From: Simon Peyton-Jones > Sent: 24 June 2002 11:01 > To: D.J.Steinitz; [EMAIL PROTECTED] > Subject: RE: GHC Runs Out of Memory > > > I guess you need to tell your OS to allow bigger processes. > GHC takes memory at least proportional to input size, so > a 23,000 line input file is likely to take a lot of bytes. Trimming > GHC's space usage is always on our to-do list! > > Simon > > | -----Original Message----- > | From: D.J.Steinitz [mailto:[EMAIL PROTECTED]] > | Sent: 24 June 2002 10:32 > | To: [EMAIL PROTECTED] > | Subject: GHC Runs Out of Memory > | > | > | > | I generated SVG10.hs using DtdToHaskell (part of the HaXml > | toolset) from the SVG (scalable vector graphics) DTD. I had > | to modify Xml2Haskell.hs as it wouldn't compile with the one > | that comes with the HaXml distribution (DtdToHaskell > | generates Haskell types based on the definitions in the DTD > | and some of these were not available in Xml2Haskell.hs). > | > | I then applied ghc but it ran out of memory. Here's the > tail of dmesg: > | > | Out of Memory: Killed process 1699 (ghc-5.02.2). > | Out of Memory: Killed process 2077 (ghc-5.02.2). > | Out of Memory: Killed process 2340 (ghc-5.02.2). > | > | I can send SVG10.hs and the modified Xml2Haskell.hs or I can > | send the HaXml tarball with SVG10.hs and the modified > | Xml2Haskell.hs inside it. > | > | Dominic. > | > | And here is the output from ghc before it died. > | > | djs25@compsci-lt2:~/testxml$ ghc -c -H128m SVG10.hs -v2 > | -fno-strictness -i../HaXml-1.05/lib -I../HaXml-1.05/lib/ > | Glasgow Haskell Compiler, Version 5.02.2, for Haskell 98, > | compiled by GHC version 5.02.2 Using package config file: > | /usr/lib/ghc-5.02.2/package.conf > | *** Checking old interface for hs = Just "SVG10.hs", hspp = > | Just "SVG10.hs": > | *** Parser: > | *** Renamer: > | *** Typechecker: > | *** Desugar: > | > | SVG10.hs:8848: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:9631: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:10405: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:11249: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:15982: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:16621: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:17245: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:17866: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:19310: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:20317: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:20545: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:21902: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:23200: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:23236: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:23282: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:23330: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:23406: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:23531: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:23590: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:23649: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:23708: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:23779: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:23871: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:24048: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:24145: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:24234: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:24431: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:24971: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:25019: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:25089: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:25240: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:25305: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:25616: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:27998: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:28730: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | > | SVG10.hs:29472: Warning: Pattern match(es) are overlapped > | In the definition of `fromElem': fromElem rest = ... > | Killed > | _______________________________________________ > | Glasgow-haskell-bugs mailing list > | [EMAIL PROTECTED] > | http://www.haskell.org/mailman/listinfo/glasgow-| haskell-bugs > | > _______________________________________________ > Glasgow-haskell-bugs mailing list > [EMAIL PROTECTED] > http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs > _______________________________________________ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs