caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* GC hangs application
@ 2010-08-11  9:30 Paul Steckler
  2010-08-11 12:21 ` [Caml-list] " Goswin von Brederlow
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Paul Steckler @ 2010-08-11  9:30 UTC (permalink / raw)
  To: caml-list

I have an OCaml application that does a lot of string manipulations, generating a
lot of garbage.  After running awhile, it seems not to make any progress.  The exact
point where it hangs varies.  The strings aren't very large, but there a lot of them.

By increasing the size of the minor heap, the application runs much longer.
And if I turn on Gc.verbose, I see output from the garbage collector just before
the app hangs.  I mean, there's a print diagnostic in my code on one line, I see
the Gc output, and the print diagnostic on the next line of my code never appears.

The problem occurs whether I compile to byte-code or native (Linux x64) code.

At first, I thought  the hanging problem was due to network code blocking.  But I rewrote
that to be multithreaded -- no difference.  I changed some other code to use Buffers
instead of strings, and by generating less garbage, the code went farther.

Are there known issues with the OCaml gc?  I'm using OCaml 3.11 on Fedora 12.

-- Paul
--
Paul Steckler
National ICT Australia
paul DOT steckler AT nicta.com.au

The information in this e-mail may be confidential and subject to legal professional privilege and/or copyright. National ICT Australia Limited accepts no liability for any damage caused by this email or its attachments.


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-08-11 14:21 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-08-11  9:30 GC hangs application Paul Steckler
2010-08-11 12:21 ` [Caml-list] " Goswin von Brederlow
2010-08-11 12:53 ` Basile Starynkevitch
2010-08-11 14:21 ` Richard Jones

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).