Hello, I have developed an application and have issue with memory usage. Application was designed for work as server, 24x7. After several hours of work, RSS memory grows up to 40-50MB. Each thread must not use more than 100-200KB of memory (maximum 20 threads are run at the same time). GC debug information:
Growing heap to 3840k bytes Growing heap to 4320k bytes Shrinking heap to 3840k bytes Growing heap to 4320k bytes Growing heap to 4800k bytes Growing heap to 5280k bytes Shrinking heap to 4800k bytes Shrinking heap to 4320k bytes Shrinking heap to 3840k bytes Growing heap to 4320k bytes Growing heap to 4800k bytes Growing heap to 5280k bytes Shrinking heap to 4800k bytes Shrinking heap to 4320k bytes Shrinking heap to 3840k bytes Shrinking heap to 3360k bytes Growing heap to 3840k bytes Growing heap to 4320k bytes Growing heap to 4800k bytes Growing heap to 960k bytes Shrinking heap to 4320k bytes Shrinking heap to 3840k bytes Shrinking heap to 3360k bytes Shrinking heap to 2880k bytes Growing heap to 3360k bytes Shrinking heap to 2880k bytes Shrinking heap to 2400k bytes Growing heap to 2880k bytes Growing heap to 3360k bytes Growing heap to 3840k bytes Shrinking heap to 3360k bytes Shrinking heap to 2880k bytes Growing heap to 3360k bytes Shrinking heap to 2880k bytes As you can see, heap size never gets bigger 5-6MB. I made core dump of process. 90% of memory was filled with values which are created inside threads and never been copied outside of them. Each thread is killed after work is done, I am absolutely sure in it; all unused file descriptors are closed. Playing with Gc.set has not brought notable results. Please, give me some start point to find the roots of the problem. Sorry for my English. _______________________________________________ Caml-list mailing list. Subscription management: http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list Archives: http://caml.inria.fr Beginner's list: http://groups.yahoo.com/group/ocaml_beginners Bug reports: http://caml.inria.fr/bin/caml-bugs