caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Shivkumar Chandrasekaran <shiv@ece.ucsb.edu>
To: caml-list@inria.fr
Subject: Re: [Caml-list] Slow GC problem
Date: Mon, 7 Apr 2003 10:53:00 -0700	[thread overview]
Message-ID: <C626BC5D-6921-11D7-AEED-000393942C76@ece.ucsb.edu> (raw)
In-Reply-To: <3C821F52-66D5-11D7-A265-000393942C76@ece.ucsb.edu>

Pursuing my earlier enquiry: I noticed that module Bigarray allocated 
its arrays using "malloc" rather than on the ocaml heap. My problem 
allocates a lot (say 100,000) bigarrays of rather small size (say 30 x 
30). Can this potentially increase the cost of gc? (I have this mental 
picture of the ocaml heap fragmented by these immovable malloc'd 
bigarrays.) Any help will be appreciated. Thanks,

--shiv--


On Friday, April 4, 2003, at 11:40 AM, Shivkumar Chandrasekaran wrote:

> 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
>
--shiv--

-------------------
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


  parent reply	other threads:[~2003-04-07 17:53 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-04-04 19:40 Shivkumar Chandrasekaran
2003-04-03 21:07 ` Christophe Raffalli
2003-04-07 17:53 ` Shivkumar Chandrasekaran [this message]
2003-04-07 19:08   ` Chris Hecker
2003-04-08  7:15     ` David Monniaux
2003-04-08 10:28   ` Damien Doligez
2003-04-08 23:03     ` Shivkumar Chandrasekaran
2003-04-08 10:23 ` Damien Doligez
2003-04-10 21:21   ` Shivkumar Chandrasekaran
2003-04-10 21:51     ` Brian Hurt
2003-04-11  7:10     ` Chris Hecker
2003-04-11  7:58       ` Christophe Raffalli
2003-04-11 16:35         ` Shivkumar Chandrasekaran
2003-04-14 16:37 Shivkumar Chandrasekaran
2003-10-23  8:17 Chris Hecker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=C626BC5D-6921-11D7-AEED-000393942C76@ece.ucsb.edu \
    --to=shiv@ece.ucsb.edu \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).