To my 

On Mon, May 10, 2004 at 12:06:32PM +0100, Simon Marlow wrote:

> > I have tested  ghc-6.2.1
> > ...
> > But it seems to have a space leak in the compiler.
> >                 make space=-M30m docon
> >                 (involving  ghc --make ... +RTS -M30m -RTS)
> > 
> > leads to                        "segmentation fault"
> > after compling several modules.
> > Repeating this command several times allows to build the program.
>  

> I'm looking into the segmentation fault.  But may I make some
> observations/suggestions first:
> 
>   - a "space leak" is when a program is using more space than it
>     needs to.  You haven't given any evidence that GHC has a space
>     leak, only that it uses more space as it compiles modules.  This
>     isn't unreasonable.

The DoCon application has many modules.
In early versions `make' did the project with -Onot in less that  32Mb
, and without restart.
And  ghc-6.2.1  needs more the 90Mb for this.
Therefore I suspect a space leak due to GC work between compiling 
modules. Only suspect. 


>     Also, it isn't unreasonable for GHC to run out of space during
>     --make, but then make more progress when restarted.  It could
>     be due to caches built up during compilation, for example.
>     
>     That's not to say that GHC doesn't have space leaks, just that
>     you haven't given us any evidence that it does. (actually I've
>     spent quite a bit of time squashing space leaks in GHC, and I know
>     that 6.2 does have some small leaks left, but nothing major).
> 
>   - If you need to compile on small memory machines, I suggest you
>     avoid --make, and use ordinary Makefiles or hmake instead.  Both
>     of these will restart the compiler for each module, and hence
>     avoid the behaviour you're seeing.  You might even get a speedup,
>     because the compiler won't be forced to use the compacting GC
>     all the time.


No, `make' it is all right in any case.
Simpler commands are preferable.
It is was all right in earlier GHC, why should it become worse in 
fresh ones? 
It forces the user to repeat the `make' command.
If so, then, evidently, the GHC driver can do such a repetition 
automatically, until it finishes making.

With kind regards,

-----------------
Serge Mechveliani
[EMAIL PROTECTED]


_______________________________________________
Glasgow-haskell-bugs mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to