On Sat, Nov 29, 2003 at 11:10:57AM -0500, Wojtek Moczydlowski wrote:
(though it still bothers me that I don't have an answer yet to the memory leak I posted some time ago)
If you are talking about StateT space leak, then I think I have given you an answer. My guess was that it is a CAF leak.
GHC doesn't have CAF leaks. Next guess :-) Cheers, Simon
On Mon, Dec 08, 2003 at 01:45:30PM -0000, Simon Marlow wrote:
On Sat, Nov 29, 2003 at 11:10:57AM -0500, Wojtek Moczydlowski wrote:
(though it still bothers me that I don't have an answer yet to the memory leak I posted some time ago)
If you are talking about StateT space leak, then I think I have given you an answer. My guess was that it is a CAF leak.
GHC doesn't have CAF leaks. Next guess :-)
Even in unoptimized, byte-code compiled code? Take this module: module A where t :: IO () t = sequence_ (repeat (return ())) If I :load it into ghci as interpreted, or if I compile it without optimisation options, and I run t, then the process grows, and grows, and grows, ... Of course, when I first compile it with -O2 option then it runs in constant space. When I compiled Wojtek's code with -O2, the problem disappeared, so I guess he was loading the module without compiling it with -O2 first. Shouldn't you rather say: GHC doesn't have CAF leaks in code compiled with [insert the relevand optimisation option here] option? Case closed! Or I am still wrong?
Cheers, Simon
Best regards, Tom -- .signature: Too many levels of symbolic links
Am Montag, 8. Dezember 2003 15:13 schrieb Tomasz Zielonka:
[...]
Even in unoptimized, byte-code compiled code?
Does GHCi use byte code internally? Would it be possible to export this code and load it into GHCi again or compile it to machine code? What Haskell byte code projects are out there?
[...]
Wolfgang
On Mon, 8 Dec 2003 20:59:53 +0100 Wolfgang Jeltsch <wolfgang@jeltsch.net> wrote:
Am Montag, 8. Dezember 2003 15:13 schrieb Tomasz Zielonka:
[...]
Even in unoptimized, byte-code compiled code?
Does GHCi use byte code internally?
Yes.
What Haskell byte code projects are out there?
The most obvious is the LVM. See Helium though the LVM is not tied to it.
At 15:52 08/12/03 -0500, Derek Elkins wrote:
What Haskell byte code projects are out there?
The most obvious is the LVM. See Helium though the LVM is not tied to it.
I tried to track that down (for a colleague), but the link at: http://www.cs.uu.nl/helium/documentation.html to: http://www.cs.uu.nl/~daan/papers/lvm.pdf is broken, and I can't find any other references. #g ------------ Graham Klyne For email: http://www.ninebynine.org/#Contact
On Tue, 09 Dec 2003 10:51:08 +0000 Graham Klyne <GK@ninebynine.org> wrote:
At 15:52 08/12/03 -0500, Derek Elkins wrote:
What Haskell byte code projects are out there?
The most obvious is the LVM. See Helium though the LVM is not tied to it.
I tried to track that down (for a colleague), but the link at: http://www.cs.uu.nl/helium/documentation.html to: http://www.cs.uu.nl/~daan/papers/lvm.pdf is broken, and I can't find any other references.
Yeah, it seems to have disappeared off the face of the Internet (quite a feat). Emailing Daan Leijen may produce something.
On Tue, Dec 09, 2003 at 08:40:12AM -0500, Derek Elkins wrote:
I tried to track that down (for a colleague), but the link at: http://www.cs.uu.nl/helium/documentation.html to: http://www.cs.uu.nl/~daan/papers/lvm.pdf is broken, and I can't find any other references.
Yeah, it seems to have disappeared off the face of the Internet (quite a feat). Emailing Daan Leijen may produce something.
Archive.org to the rescue! http://web.archive.org/web/20030314040306/http://www.cs.uu.nl/~daan/papers/l... Cheers, Kevin.
Hi Graham,
I tried to track that down (for a colleague), but the link at: http://www.cs.uu.nl/helium/documentation.html to: http://www.cs.uu.nl/~daan/papers/lvm.pdf is broken, and I can't find any other references.
Sorry for the broken link. The LVM is described in the last chapter of my thesis which can be found on my home page (http://www.cs.uu.nl/~daan) -- Daan.
#g
------------ Graham Klyne For email: http://www.ninebynine.org/#Contact
_______________________________________________ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Derek Elkins <ddarius@hotpop.com> writes:
What Haskell byte code projects are out there?
The most obvious is the LVM. See Helium though the LVM is not tied to it.
Both Hugs and nhc98 are also based on bytecode interpreters. Regards, Malcolm
Am Dienstag, 9. Dezember 2003 18:34 schrieb Malcolm Wallace:
[...]
The most obvious is the LVM. See Helium though the LVM is not tied to it.
Both Hugs and nhc98 are also based on bytecode interpreters.
Wouldn't it be good to implement an LVM import/export feature in GHC, Hugs and nhc98?
Regards, Malcolm
Wolfgang
Wouldn't it be good to implement an LVM import/export feature in GHC, Hugs and nhc98?
To read and write lvm bytecodes? That could be quite a lot of work because the bytecodes are specific to the abstract machine and the abstract machines are different. Unless the LVM is essentially just a G-machine (I suspect it isn't), generating LVM code in Hugs would require a new code generator. Reading LVM code is potentially even harder. IMO, the right way to do this is to read/write 'core' lambda calculus like the code GHC uses as its intermediate form. Having found a way to import/export code, there is a second problem to be overcome. Different compilers have different sets of primitive operations. I'm sure they all have the same arithmetic operations and, of course, they differ in whether or not they have concurrency operations but there are big differences in their implementation of the IO monad and exceptions, their array operations, etc. -- Alastair Reid www.haskell-consulting.com
participants (9)
-
Alastair Reid -
Daan Leijen -
Derek Elkins -
Graham Klyne -
Kevin Everets -
Malcolm Wallace -
Simon Marlow -
Tomasz Zielonka -
Wolfgang Jeltsch