Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
GC hangs application
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2010-08-11 (09:30)
From: Paul Steckler <Paul.Steckler@n...>
Subject: GC hangs application
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

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.