From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id LAA00395; Tue, 8 Apr 2003 11:01:27 +0200 (MET DST) Received: (from xleroy@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id LAA00377 for caml-list@pauillac.inria.fr; Tue, 8 Apr 2003 11:01:25 +0200 (MET DST) Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id JAA29695 for ; Tue, 8 Apr 2003 09:15:57 +0200 (MET DST) Received: from nef.ens.fr (nef.ens.fr [129.199.96.32]) by nez-perce.inria.fr (8.11.1/8.11.1) with ESMTP id h387Fu906483 for ; Tue, 8 Apr 2003 09:15:56 +0200 (MET DST) Received: from di.ens.fr (di.ens.fr [129.199.99.1]) by nef.ens.fr (8.12.9/1.01.28121999) with ESMTP id h387FlbX051992 ; Tue, 8 Apr 2003 09:15:47 +0200 (CEST) Received: from basilic.ens.fr (monniaux@basilic [129.199.99.48]) by di.ens.fr (8.12.9/jb-1.1) id h387FkRo017099 ; Tue, 8 Apr 2003 09:15:46 +0200 (MEST) Received: from localhost (monniaux@localhost) by basilic.ens.fr (8.11.0/jb-1.1) id h387FjJ16680 ; Tue, 8 Apr 2003 09:15:45 +0200 (MEST) X-Authentication-Warning: basilic.ens.fr: monniaux owned process doing -bs Date: Tue, 8 Apr 2003 09:15:45 +0200 (MEST) From: David Monniaux X-Sender: monniaux@basilic.ens.fr To: Chris Hecker cc: Shivkumar Chandrasekaran , caml-list@inria.fr Subject: Re: [Caml-list] Slow GC problem In-Reply-To: <4.3.2.7.2.20030407110109.0376f888@localhost> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=ISO-8859-1 Content-Transfer-Encoding: 8BIT X-Virus-Scanned: by amavisd-milter (http://amavis.org/) X-Spam: no; 0.00; monniaux:01 caml-list:01 hecker:01 ocamlopt:01 gcc:01 conjecture:01 unboxed:01 floats:01 chris:01 profile:98 compile:02 module:03 wrote:03 profiles:96 l'ecole:04 X-Spam: no; 0.00; monniaux:01 caml-list:01 hecker:01 ocamlopt:01 gcc:01 conjecture:01 unboxed:01 floats:01 chris:01 profile:98 compile:02 module:03 wrote:03 profiles:96 l'ecole:04 Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk On Mon, 7 Apr 2003, Chris Hecker wrote: > >I am concluding that gc is to blame. > Did you profile to check this assumption? What's the profile look like? A little bit of experience here: I have done such profiles with the following tools: * gprof (compile with ocamlopt -p and gcc -pg); * oprofile (hardware-based, supports only certain platforms including Linux/x86; can profile not only clock ticks, but also events such as cache faults). My (somehow unsurprising) experience was that: * GC generates 15-20% of cache faults * GC takes about 15% of time. A conjecture on my part is that using a lot of unboxed floats is partly responsible. My conclusion: you should definitely profile your code before starting to incriminate the GC or any other module. David Monniaux http://www.di.ens.fr/~monniaux Laboratoire d'informatique de l'École Normale Supérieure, Paris, France ------------------- 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