From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.1 required=5.0 tests=AWL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id A6AF9BC68 for ; Tue, 26 Sep 2006 13:57:34 +0200 (CEST) Received: from [127.0.0.1] (yquem.inria.fr [128.93.8.37]) by concorde.inria.fr (8.13.6/8.13.6) with ESMTP id k8QBvYRw019337 for ; Tue, 26 Sep 2006 13:57:34 +0200 Mime-Version: 1.0 (Apple Message framework v752.2) In-Reply-To: <20060925194153.GA20467@furbychan.cocan.org> References: <4517C7FE.8080102@mcmaster.ca> <20060925194153.GA20467@furbychan.cocan.org> Content-Type: text/plain; charset=US-ASCII; format=flowed Message-Id: Content-Transfer-Encoding: 7bit From: Damien Doligez Subject: Re: [Caml-list] Regarding SMP computing Date: Tue, 26 Sep 2006 13:57:44 +0200 To: caml users X-Mailer: Apple Mail (2.752.2) X-Miltered: at concorde with ID 451915AE.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; damien:01 damien:01 ocaml:01 ocaml:01 rework:01 runtime:01 iterating:01 heap:01 2006:98 wrote:01 doligez:01 doligez:01 caml-list:01 data:02 data:02 On 2006-09-25, at 21:41, Richard Jones wrote: > On a related note, is/could there be a way in OCaml to tell the GC not > to bother going "into" a particular data structure to check if it part > of it has become unreachable? The GC doesn't work by checking whether something has become unreachable. It works by marking all reachable data, then deallocating everything else. There is no way to do what you want in OCaml, and I don't think it can be done without a major rework of the runtime system. > Otherwise every time we do a major > collection it's going to be uselessly iterating over the whole lot, > and that appears to have particularly bad consequences as soon as we > start to go into swap. The OCaml GC is not designed to work well when the heap becomes larger than physical memory. As soon as you start going to swap you'll see a huge performance hit, and there's not much we can do about it. -- Damien