Browse thread
[Caml-list] Slow GC problem
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Shivkumar Chandrasekaran <shiv@e...> |
| Subject: | [Caml-list] Slow GC problem |
I have a gc efficiency problem for which I require some advice. I have read both the O'Reilly book and the manual on gc. I am implementing a fast direct matrix solver for 2D PDEs. So it uses the Bigarray module a lot. I have two versions of my algorithm. On is an in-core algorithm and the other is the same solver, except that it is out-of-core (most of the matrices are stored in disk files). Unfortunately the out-of-core solver is *faster* than the in-core solver for the identical problem! I was expecting the out-of-core solver to be 10 times slower. I am concluding that gc is to blame. Below I give the gc stats just before and after the solver routine is called in the in-core solver: "Just before" "Just after" minor_words: 46243376 139259767 promoted_words: 928267 2595523 major_words: 2883087 39489766 minor_collections: 1412 4591 major_collections: 18 52 heap_words: 2150400 1044480 heap_chunks: 35 17 top_heap_words: 2150400 5038080 live_words: 1842373 840037 live_blocks: 253926 116816 free_words: 307180 204440 free_blocks: 47368 17 largest_free: 10928 61440 fragments: 847 3 compactions: 0 2 I tried changing some parameters using Gc.set but it did not make a significant difference. Does anybody see any obvious gc problems from the above data? Thanks, --shiv-- PS: I wrote the out-of-core solver in just 3 days once the in-core solver was done, all in O'Caml. This would have have taken much longer in Fortran/C. Thanks to the O'Caml team. ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners