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.0 required=5.0 tests=none 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 1CEB0BC68 for ; Tue, 19 Sep 2006 04:02:16 +0200 (CEST) Received: from sauron.imperium.ph ([202.175.240.154]) by concorde.inria.fr (8.13.6/8.13.6) with ESMTP id k8J22CPJ002422 for ; Tue, 19 Sep 2006 04:02:15 +0200 Received: from [172.17.2.168] (unknown [172.17.2.168]) by sauron.imperium.ph (Postfix) with ESMTP id 6029F15038; Tue, 19 Sep 2006 10:03:41 +0800 (PHT) Message-ID: <450F4FC4.7020901@imperium.ph> Date: Tue, 19 Sep 2006 10:02:44 +0800 From: "Rafael 'Dido' Sevilla" User-Agent: Thunderbird 1.5.0.7 (X11/20060918) MIME-Version: 1.0 To: Stefan Monnier Cc: caml-list@inria.fr Subject: Re: [Caml-list] Re: The Future Possibility of Concurrent Garbage Collection? References: <891bd3390609150729k27b7acf8rc9b12f1e08eae93@mail.gmail.com> <450EA25B.50505@imperium.ph> In-Reply-To: X-Enigmail-Version: 0.94.0.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------enig621D316C3DB8721E551C5082" X-Miltered: at concorde with ID 450F4FA4.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; compilation:01 admittedly:01 ocaml:01 sml:01 rafael:98 sevilla:98 fate:98 wrote:01 garbage:01 garbage:01 caml-list:01 algorithm:01 algorithm:01 functional:02 seems:03 X-Attachments: type="application/pgp-signature" name="signature.asc" name="signature.asc" This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig621D316C3DB8721E551C5082 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Stefan Monnier wrote: > I meant *compiled* application code, of course. I.e. you can't change = the > GC after compilation. Admittedly, the VCGC algorithm is sufficiently > non-intrusive on the mutator that it might be OK to pay its cost even > when not using the VCGC algorithm. Well, any garbage collection algorithm that requires read or write barriers on the mutator (not just concurrent algorithms I believe) would need such changes. The VCGC algorithm has a write barrier used only when references are changed, and given that most Ocaml code (like SML code) is written in a functional style where references are seldom used, it seems that it could be an excellent algorithm. On the other hand, if you're talking about byte-compiled code, it might be possible to insert any required write or read barriers in the virtual machine itself. For Limbo this only required Winterbottom and Huelsbergen to change the Dis virtual machine; all previously compiled Limbo code ran properly without change once they replaced the older mark and sweep collector with it. --=20 We must remember that we have more power than our enemies to worsen our fate. http://stormwyrm.blogspot.com/ --------------enig621D316C3DB8721E551C5082 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5-ecc0.1.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iQEVAwUBRQ9PyIIzXJ0NX9pgAQh6vwf/cFfD4CRjJS3ATfIJYMrCVb6EekdIUnEk SNoUNqDgVRn2up04u5B7ipNBjslOX6YK74Y7cZtDCgFxqlQS3Exkw1m71WGtu5Eq Tze/zIcm9/mSxCnAIVU25ima3Im5CYK2kYOOElyqh8IIZphIDTKzmTqIZBcAkK7i NNTkMz7EIBeyqhQJj5aRj3Z9d20q4Cxjh/AOcozTkjSWtCsMkC8EAJ5knefZGpUy VkZfyr96OrXAvYKv0X1l9jeNzZLGdjEJ4wSZS0Jhf5kOFXs83BpR8IkBbJ6xTe5H 7t22ipp7SfdK26vVEJ4PIcHpA/Xbouv2+Xfo1tdLOPsEbpoOI+G0iw== =jJab -----END PGP SIGNATURE----- --------------enig621D316C3DB8721E551C5082--